-
Posts
4,805 -
Joined
-
Last visited
-
Days Won
10
Everything posted by فاّرس
-
ما نختلف بس محركات هالجيل راح تحتاج لغات مثل سي بلس بلس وسي شارب يعني يبي لك وقت لين تتعلم, حنا ما نتكلم عن العاب خورافيه وجرافيكس جبار mta انا موضوعي الهدف منه توظيف قدراتنا في لغة لوا, ماتكون محدوده على
-
وش تبي تسوي؟ كودك غلط.
-
اتوقع انه مصمم بالسي بلس بلس بس لغة لوا لغة برمجة اساسية ماتقدر تستخدم غيرها, يعني راح يفيدك Maratis طيب عندك محرك العاب تعديل # : Maratis مثال للجرافيكس في محرك العاب Jules.lua بالنسبه للأكواد البرمجية مثال من ملف ----------------------------------------------------------------------------------- -- Maratis -- Jules script test ----------------------------------------------------------------------------------- -- get objects Jules = getObject("Jules") Player = getObject("Player") Set = getObject("Set") Feet = getObject("Feet") -- scene update function onSceneUpdate() coll = getNumCollisions(Feet) -- rotate left if isKeyPressed("LEFT") then rotate(Player, {0, 0, 1}, 5) end -- rotate right if isKeyPressed("RIGHT") then rotate(Player, {0, 0, 1}, -5) end -- jump (commented as an exemple) --[[ if isKeyPressed("SPACE") then if coll > 1 then addCentralForce(Player, {0, 0, 30}) end end]] -- move Jules if isKeyPressed("UP") then changeAnimation(Jules, 2) if coll > 1 then addCentralForce(Player, {0, 0, 15}, "local") end else changeAnimation(Jules, 0) end -- manual friction (set damping if Player touch the ground) if coll < 2 then setLinearDamping(Player, 0.01) else setLinearDamping(Player, 0.9) end end ^ فنكشنات جاهزه وتقدر تستخدمها وفيه ويكي mta نفس نظام
-
صحيح ضعيفه, بس ع الاقل نستفيد منها احسن من لا شي
-
ما نختلف انه افضل بس محركات لوا مب سيئه لهالدرجة تقدر تسوي منها, وع الاقل تستفيد من خبرتك باللغه ماتروح عبث. @ ذكرته فوق Love2d ماذكرت كل المحركات, المحركات كثيره ذكرت اللي جربتهم انا, بالنسبه لـ ذا حق الاندرويد اتوقع Corona وبالنسبه لـ
-
اطرح كودك او محاولتك عشان نساعدك
-
الاكسمل سهل لو تركز فيه شوي بس, ذا مثال : addEventHandler( 'onClientResourceStart', resourceRoot, function ( ) local name = xmlCreateFile ( 'playerInfo.xml', 'Info' ) xmlCreateChild( name, 'Name' ) xmlCreateChild( name, 'Ping' ) xmlSaveFile ( name ) end ) addCommandHandler ( 'saveMyInfo', function ( ) local name = xmlLoadFile ( 'playerInfo.xml' ) if name then local n,p = xmlFindChild ( name, 'Name', 0 ),xmlFindChild ( name, 'Ping', 0 ) xmlNodeSetValue ( n, getPlayerName ( localPlayer ) ) xmlNodeSetValue ( p, getPlayerPing ( localPlayer ) ) xmlSaveFile ( name ) xmlUnloadFile ( name ) end end) ^ سويته لك بأسهل طريقة ما استخدمت لوب او اي شي بطريقه سهله وواضحه, بعكس اذا سويته بملف سيرفر راح يظهر بنفس مجلد السكربت mods للمعلوميه يوم تسوي الاكس ام ال بالكلينت راح يظهر في مسار
-
ثم تتحقق انه ضغط البوتون "onClientGUIClick" اول شي انت تحتاج حدث اذا ضغط اللاعب guiGetText, tonumber وبعدها راح تحتاج انك تتحقق انه يكون كاتب شي بالاديت وتتحقق انه رقم من خلال عشان تتحقق هل اختار شي من الجريد او لا guiGridListGetSelectedItem وبعدها راح تحتاج وظيفة عشان تجيب اسم اللاعب اللي اختاره guiGridListGetItemText وبعدها راح تستخدم , عشان لو عطيت اللاعب فلوس بالكلينت راح تكون وهميه وترسل الرقم واسم اللاعب triggerServerEvent وبعدها راح تحتاج تسوي تريقر للسيرفر عشان تعرف التريقر بالسيرفر addEvent, addEventHandler وبعدها راح تحتاج عشان تجيب اللاعب من اسمه اللي ارسلناه بالتريقر getPlayerFromName وبعدها راح تحتاج عشان تعطي اللاعب فلوس givePlayerMoney وبعدها راح تحتاج ^ شرح بالتفصيل الممل , الوظائف والحدث "onClientGUIClick" guiGetText, tonumber guiGridListGetSelectedItem guiGridListGetItemText triggerServerEvent addEvent, addEventHandler getPlayerFromName givePlayerMoney
-
حياكم منورين, Marshmello @ رهيب وخطير ومجاني ويستخدم لغة لوا فقط كلغة اساسية مباشره Maratis كلامك صحيح مو ذاك المستوى بس تقدر تسوي اشياء كثير, محرك الألعاب يعني بيكون لك تحكم كامل وبطريقه سهله, وبرمجته مو صعبه عن تجربه. وسيتم اضافة البرامج اللي ذكرتها .
-
You can use "\n" like this "Hello \n World".
-
صراحه اول مره اعرف هاللغه, يعطيك العافيه ماقصرت ببحث عن اللغه يمكن تفيدني . الموضوع قديم بس ماقد شفته.
-
السلام عليكم ورحمة الله وبركاته, اللهم صلِ على سيدنا محمد وعلى آله وصحبه اجمعين, قبل فتره جاتني فكره وحبيت اناقشها معكم, اللي هي مشاريع خارج اللعبه؟ تقدر تسوي منها برامج او العاب اللي تبيه, صحيح لغه مو نفس متطلبات اللغات الكبرى بس تقدر تسوي فيها اللي تبيه تقريباً Lua كلنا نعرف ان لغة .موضوعي يتحدث عن : محركات الألعاب وكيفية التعامل معها فيها اكثر من محرك العاب يدعمها كـ لغة برمجة اساسية لا مكملة لبعض اللغات Lua لغة : كـ مثال لبعض المحركات الاساسيه والمكملة, ومحركات جربتها شخصياً Maratis engine : 3D محرك العاب مجاني Glint engine : 3D محرك العاب مجاني love engine : 2D محرك العاب مجاني Leadwerks engine : 3D محرك العاب غير مجاني ShiVa engine : 3D محرك العاب غير مجاني : وافضل محركات جربتهم شخصياً هم Maratis engine : اضغط هنا لدخول الموقع Leadwerks engine : اضغط هنا لدخول الموقع .من المعروف ان الألعاب ثلاثية الأبعاد تحتاج تصميم مجسمات ثلاثية الأبعاد, مثل الأرض, السماء, اللاعب الخ : وافضل البرامج اللي راح تحتاجها 3DS Max : اضغط هنا Blender : اضغط هنا Fragmotion : اضغط هنا .لذلك خلونا نكسر الروتين mta sa الهدف من الموضوع تطوير العرب, الكثير مل من برمجة .عندك اضافة اي شي للموضوع اطرحه, والموضوع مفتوح للنقاش ومرحباً بالجميع
-
اسهل طريقه هي اكاونت داتا بس لازم يكون مسجل الدخول ... isGuestAccount getPlayerAccount getPlayerMoney setAccountData getAccountData setPlayerMoney ^ ابحث عنها بقسم الشروحات سويت شرح عنها قبل فتره .
-
خذ ذي اللوحه بدون اخطاء عدل باقي الكود عليها وشوف الديبوق .. GUIEditor = { memo = {}, edit = {}, window = {}, checkbox = {}, label = {}, button = {}, } GUIEditor.window[1] = guiCreateWindow(210, 66, 449, 493, "", false) guiWindowSetSizable(GUIEditor.window[1], false) guiSetAlpha(GUIEditor.window[1], 1.00) GUIEditor.memo[1] = guiCreateMemo(9, 25, 421, 184, "", false, GUIEditor.window[1]) GUIEditor.label[2] = guiCreateLabel(0, 209, 442, 20, "--------------------------------------------------------------", false, GUIEditor.window[1]) guiSetFont(GUIEditor.label[2], "sa-header") guiLabelSetColor(GUIEditor.label[2], 195, 0, 0) GUIEditor.checkbox[1] = guiCreateCheckBox(29, 242, 110, 22, "سآعات", false, false, GUIEditor.window[1]) guiSetProperty(GUIEditor.checkbox[1], "NormalTextColour", "FFC30000") GUIEditor.checkbox[2] = guiCreateCheckBox(172, 243, 110, 22, "تاج", false, false, GUIEditor.window[1]) guiSetProperty(GUIEditor.checkbox[2], "NormalTextColour", "FFB4GUIEditor.checkbox[4]0A") GUIEditor.checkbox[3] = guiCreateCheckBox(310, 243, 110, 22, "قريبآ", false, false, GUIEditor.window[1]) guiSetProperty(GUIEditor.checkbox[3], "NormalTextColour", "FF05BB92") GUIEditor.label[3] = guiCreateLabel(44, 279, 390, 24, "يرجى تحديد طريقة الدفه", false, GUIEditor.window[1]) guiSetFont(GUIEditor.label[3], "default-bold-small") guiLabelSetColor(GUIEditor.label[3], 146, 157, 30) GUIEditor.checkbox[4] = guiCreateCheckBox(36, 314, 98, 23, "سواء", false, false, GUIEditor.window[1]) guiSetProperty(GUIEditor.checkbox[4], "NormalTextColour", "FF873671") GUIEditor.checkbox[5] = guiCreateCheckBox(174, 314, 98, 23, "كآش يو", false, false, GUIEditor.window[1]) guiSetProperty(GUIEditor.checkbox[2], "NormalTextColour", "FFA81456") GUIEditor.checkbox[6] = guiCreateCheckBox(320, 314, 98, 23, "موبايل", false, false, GUIEditor.window[1]) guiSetProperty(GUIEditor.checkbox[6], "NormalTextColour", "FF2AC002") GUIEditor.label[4] = guiCreateLabel(30, 348, 411, 30, "يرجى عدم ترك الفراغات خآليه", false, GUIEditor.window[1]) guiSetFont(GUIEditor.label[4], "default-bold-small") guiLabelSetColor(GUIEditor.label[4], 193, 187, 0) GUIEditor.checkbox[1] = guiCreateEdit(39, 380, 149, 27, "", false, GUIEditor.window[1]) GUIEditor.edit[1] = guiCreateEdit(40, 417, 149, 27, "", false, GUIEditor.window[1]) GUIEditor.edit[2] = guiCreateEdit(194, 380, 149, 27, "", false, GUIEditor.window[1]) GUIEditor.edit[3] = guiCreateEdit(194, 417, 149, 27, "", false, GUIEditor.window[1]) GUIEditor.edit[4] = guiCreateEdit(39, 456, 149, 27, "", false, GUIEditor.window[1]) GUIEditor.edit[5] = guiCreateEdit(194, 456, 149, 27, "", false, GUIEditor.window[1]) GUIEditor.button[1] = guiCreateButton(344, 383, 96, 101, "آرسآل المعلومات", false, GUIEditor.window[1]) # ماعندي سكايب للأسف : (
-
^ حبيبي كودك مليان اغلاط والله, انت شغل الديبوق وشوف الاخطاء اللي تطلع لك وحاول تصلحها عندك اقواس وكم شغله ناقصه.
-
شكلك تحب تتهاوش , طيب ليه عدلته دامه صح؟ لحسن حظك اني سويت اقتباس , الاخطاء في كودك قبل تعديلك : سطر 1 كلينت ناقصك فاصله, وللحين ما عندلتها تراك سطر 21 سيرفر, انت قاعد تحط الفلوس بأرقومنت اللاعب حرام عليك ياخي cBlanced سطر 22 من وين جبت الاشياء اللي مالها فايده بكودك : getPlayerMoney CLIENT, WIKI: The amount may vary between the server and client, you shouldn't trust the client side value to always be accurate. سطر 9 و 11 مالها اي فايده, نروح للسيرفر : سطر 20, مو توك كاتب نفس التحقق بالكلينت ليه تتحقق مره ثانيه؟ سطر 23 ممكن تعلمنا وش الفايده؟ المبرمج يختصر اكواده, وأخيراً الالمنت داتا يوم تطلع من السيرفر تروح وتطير الفلوس معاها ماينفع تستخدمها للحفظ . تعديل # بعد تعديلك للكود سطر 22 كيف تزود رقم على داتا مب موجوه, على طول بيجي خطأ مافيها كلام . @Maksoud MySQL الوظائف اللي تحتاجها انك تحفظ الفلوس وعندك عدة طرق تقدر تحفظ على اكاونت داتا تقدر على اكس ام ال تقدر على قاعدة بيانات اللعبه او قاعده خارجيه او انت على وش تبي تحفظ عشان نعطيك الطلبات اللازمه
-
^ وانا كنت احسبه معلم طلع نسخ لصق
-
هدي اعصابك ياكبتن, بس اعلمك ان كودك خطأ مو خطأ الا هريسه . بالنسبه لصاحب الموضوع, لازم تحفظ الفلوس ف اكاونت داتا او سكل, عشان تضمن انها ماتروح لو طلع او خرج او سويت ريستارت للسكربت .
-
كودك خطأ + كيف تخط داتا للاعب؟ اول شي اللي اعرفه ان الداتا تاخذ كثير من السي بي يو, ثاني شي لو طلع اللاعب ورجع دخل راح تروح الداتا, ممكن تفهمني ف وش تفكر يا بطل؟
-
سطر 28 , 30, 32, 51, 56, 58, 92, 93, 94, عد واغلط ذا بس الكلينت السيرفر ماشيكت عليه, والكلينت باقي فيه اخطاء ..
-
ش1 في اللي اقصده مافيه شي اسمه زي كذا باللعبه حاول تركز , ممكن تفهني ليه تستخدم المنت داتا؟
-
شي طبيعي راح تفتح الابواب للكل, وماراح تفتح الا اذا دخل الماركر لاعب ويكون بتيم الشرطه.. ناقصك تتحقق من اللي دخل الماركر هل هو لاعب او لا , getElementType -- player isPedInVehicle -- اذا كنت تبي تتحقق اذا كان اللاعب داخل السياره او لا z سطر 13 و 14 و 21 و 23 وش وضع النقطه في الاحداثي
-
مافيه شي اسمه ايداع ف البنك, الفكره انك تحفظ الفلوس في قاعدة بيانات او اكاونت داتا ثم تسترجعها وقت ماتحتاجها؟
-
,وهو صادق انت تبي اللي معه الالمنت داتا يقدر يغير السكنات اللي انت محددهم, اللي راح تسويه انت انك تتحقق ان اللاعب اذا اختار شخصيه معينه وماتكون معه داتا مايعطيه اما اذا معه داتا يعطيه .. "onElementModelChange" table -- جدول للشخصيات عشان تختصر, وجدول للتايمر getElementType getElementModel setElementModel setTimer -- عشان ترجع له الشخصيه القديمه isTimer killTimer