MuhannaDx Posted February 28, 2016 Share Posted February 28, 2016 السلام عليكم ورحمة الله وبركاتهه .. كيفككم عسسآكم بخخير ! .. دؤوم إن شاء الله عندي كم سؤال والي م يعرف لا يـفـتـي لول .. الأسئله : setAccountData ( account theAccount, string key, string value ) طيب زي مانشوف string key = المفتاح و string value = القيمة كل شيء تمام السؤال كتـالي لو سويت أكثر من قيمة لمفتاح واحد وش يصير تنمسح القيمة الاولى ؟ او يكون للمفتاح اكثر من قيمة ؟ والسؤال الثاني : وش هو الـ return ابي شرح لاشافوه الناس قالو كيف شرحه ؟ ادري انه شرحه صعب والصراحه م فهمت يوم يقولون يرجع القيمة طيب يرجع القيمة شلون ؟ ولإيش ؟ مرهه مخبص فيه السؤال الثالث : طريقة حساب [ Drawing ] نفس الـ [ GUI ] ولو لا وش الفرق ؟؟ والختام صلو على نبينا (عليه افضل الصلاة والسلام) , ء والسلام عليكم ورحمة الله وبركاته Link to comment
Jupi Posted February 28, 2016 Share Posted February 28, 2016 1- ما بيكون اكثر من قيمة بتتغير القيمة لكن تقدر تستعمل الجدول مشان تخزن اكثر من شيء لو تبي 3- الDrawing مختلف تماماً عن الGUI 2- الريترن مو صعب ولا شيء لكن ناقص طريفة مشان نفهم الناس كيف تشتغل بحاول افهمك اكبر قدر ممكن و ان شاء الله تستوعب الـ return هذي اول شيء توقف الفنكشن تماماً يعني مثلاً توقفه كله من لوب و اشتراطات و كل شيء داخله توقفه وبعدين ترجع لك قيمة كيف ترجع لك قيمة؟ فنلفترض انك تبي تسوي فنكشن يجمع لك رقمين و يجيب لك الناتج تستعمل في هذي الحالة الreturn مشان تخلي الفنكشن يساوي هذي القيمة مثال ! function get9() number = 8 + 1 return number end الحين لو انت سويت كذا print(get9()) بيطلع رقم 9 لانك سويت return لرقم 9 ان شاء الله فهمت Link to comment
#DRAGON!FIRE Posted February 28, 2016 Share Posted February 28, 2016 من قلك مختلف ؟ .. يختلف ف حالة وحدة فقط اذا بالـ جيو سويت لوحة وسويت عليها الازرار والخ .. تحتاج تسوي الحسابات للوحة فقط اما الدي اكس فـ تحتاج تسوي لكل شغلة مسويها سواء تكست .. ولا ريكتنقل الخ .. بس بالحسابات نفس الشي . وهذا شرح للريتيرن : طبعا الشرح اللي مسوي له اقتباس يختلف عن الرابط اللي بالرد .. ف شوف الاثنين انت .return :https://forum.multitheftauto.com/viewtopic.php?f ... 9&p=801919 تستخدم بـ الكاستوم فنكشن return الـ كيف يعني ؟ .. مثلأ تبي تسوي فنكشن يجيب لك قيمة متغير ما local Number = 25 function getValue ( ) if ( Number ) then return Number end end تقولي وش فائدة الـ ريترن هنا ؟ لو ما حطيت ريترن م راح يرجع لك الرقم او مثلأ local Count = 0 addEventHandler ( "onClientGUIClick", resourceRoot, function ( ) if ( Count == 4 ) then return end Count = Count + 1 end ) هنا كل ما تضغط ع الزر راح يزود متغير كاونت .. وبكل ضغطة يتحقق لو المتغير صار 4 فـ راح يسوي ريترن اند تقولي هنا وش فائدة الريترن ؟ ولو شلتها وش راح يصير ؟ الريترن هنا راح توقف الكود وما راح يصير شي تقولي لو شلتها local Count = 0 addEventHandler ( "onClientGUIClick", resourceRoot, function ( ) if ( Count == 4 ) then end Count = Count + 1 end ) راح يصير مجرد تحقق لا اكثر مثلأ لو كان 4 يسوي مخرج شات مثلأ local Count = 0 addEventHandler ( "onClientGUIClick", resourceRoot, function ( ) if ( Count == 4 ) then outputChatBox ( "Count is 4" ) end Count = Count + 1 end ) يعني راح يصير تحقق لو المتغير صار 4 يسوي كودكـ ونقفل التحقق ويكمل باقي الاكواد . Link to comment
Jupi Posted February 28, 2016 Share Posted February 28, 2016 من قلك مختلف ؟ .. يختلف ف حالة وحدة فقط اذا بالـ جيو سويت لوحة وسويت عليها الازرار والخ .. تحتاج تسوي الحسابات للوحة فقطاما الدي اكس فـ تحتاج تسوي لكل شغلة مسويها سواء تكست .. ولا ريكتنقل الخ .. بس بالحسابات نفس الشي . وضح شوي؟ Link to comment
MuhannaDx Posted February 28, 2016 Author Share Posted February 28, 2016 شكرا لكم فهمت ال [ return ] من المثالين كلهم أحسن من بعض ~ ويا DABL انا قصدي ف الحسابات مب فالشكل او الطريقة او الحدث قصدي بحسابات المقاسات وكذا . + شوفو ذا المثال كم بتصير قيمة الداتا ؟ addEventHandler("onPlayerJoin", root, function () theAccount = getPlayerAccount ( source ) theData = getAccountData ( theAccount , "Level" ) if theData then if theData == "1" then setAccountData ( theAccount , "Level", "2" ) end end end ) الحين لو كان جاب قيمة الاكاونت داتا وكانت فعلاً تساوي 1 يحط ف نفس المفتاح قيمة = 2 طيب الحين لو ازيد اجيبها كم تكون القيمة ؟ Link to comment
Jupi Posted February 28, 2016 Share Posted February 28, 2016 في مثالك لو الشرط تحقق الداتا بتصير 2 ما تقدر تحفظ اكثر من قيمة علي مفتاح واحد >.< تقدر تسويها بجدول لو تبي Link to comment
Abdul KariM Posted February 28, 2016 Share Posted February 28, 2016 في مثالك لو الشرط تحقق الداتا بتصير 2ما تقدر تحفظ اكثر من قيمة علي مفتاح واحد >.< تقدر تسويها بجدول لو تبي الاكونت داتا ماتقبل الجداول لو يبي يستخدمها بجدول يستخدم مع الاكونت داتا toJSON fromJSON Link to comment
Jupi Posted February 28, 2016 Share Posted February 28, 2016 في مثالك لو الشرط تحقق الداتا بتصير 2ما تقدر تحفظ اكثر من قيمة علي مفتاح واحد >.< تقدر تسويها بجدول لو تبي الاكونت داتا ماتقبل الجداول لو يبي يستخدمها بجدول يستخدم مع الاكونت داتا toJSON fromJSON =_=" ادري انه ما يقبل جداول لكن لو هو راجع الويكي بيعرف انه لازم يستعمل ذول Link to comment
MuhannaDx Posted February 29, 2016 Author Share Posted February 29, 2016 أزبد لكم .. لول ابي اسوي مود الليفل بـالاكاونت داتا مابحط .. ادري انها سهله الاكواد ~ كلينت ~ local x, y = guiGetScreenSize() local x = x - x start = 0 ValLevel = "1" function SystemLevel() dxDrawRectangle ( x, y - 35, 163, 35, tocolor(0, 0, 0, 175), false ) dxDrawRectangle ( x, y - 35, start, 35, tocolor(255, 0, 0, 255), false) dxDrawText ( ValLevel, x + 95, y - 35, 163, y, tocolor(255, 255, 255, 255), 1.00, "beckett", "left", "bottom", false, false, false, false, false ) dxDrawText ( "Level :", x, y - 35, 95, y, tocolor(255, 255, 255, 255), 1.00, "pricedown", "center", "center", false, false, false, false, false ) if start >= 163 then -- هنا سويت تحقق ان ستارت صارت اكبر من 163 الي هي 100 اكس بي زي كذا ,, لو مافهمت جربها IF() end end addEventHandler ( "onClientRender", root, SystemLevel ) addEvent ( "Plus", true ) function Plus() start = start + 5 end addEventHandler ( "Plus", root, Plus ) function IF() if start >= 100 then start = 0 triggerServerEvent ( "get:Acc", localPlayer ) end end addEvent ( "lbl2", true ) function lbl2() ValLevel = "2" end addEventHandler ( "lbl2", root, lbl2 ) addEvent ( "lbl3", true ) function lbl3() ValLevel = "3" end addEventHandler ( "lbl3", root, lbl3 ) addEvent ( "lbl4", true ) function lbl4() ValLevel = "4" end addEventHandler ( "lbl4", root, lbl4 ) addEvent ( "lbl5", true ) function lbl5() ValLevel = "5" end addEventHandler ( "lbl5", root, lbl5 ) addEvent ( "lbl6", true ) function lbl6() ValLevel = "6" end addEventHandler ( "lbl6", root, lbl6 ) addEvent ( "lbl7", true ) function lbl7() ValLevel = "7" end addEventHandler ( "lbl7", root, lbl7 ) addEvent ( "lbl8", true ) function lbl8() ValLevel = "8" end addEventHandler ( "lbl8", root, lbl8 ) addEvent ( "lbl9", true ) function lbl9() ValLevel = "9" end addEventHandler ( "lbl9", root, lbl9 ) addEvent ( "lbl10", true ) function lbl10() ValLevel = "10" start = 163 end addEventHandler ( "lbl10", root, lbl10 ) سيرفر ~ function Plus( Message ) theAcc = getPlayerAccount ( source ) if Message == "Plus" then if getAccountData ( TheAcc, "Level" ) == "1"or"2"or"3"or"4"or"5"or"6"or"7"or"8"or"9"or"10" then triggerClientEvent ( source,"Plus", source ) end end end addEventHandler ( "onPlayerChat", root, Plus ) addEvent ( "get:Acc", true ) function Acc() theAcc = getPlayerAccount ( source ) theData = getAccountData ( theAcc, "Level" ) if theData == "1" then outputChatBox ("بالفعل تساوي 1") triggerClientEvent ( source, "lbl2", source ) setAccountData ( theAcc, "Level", "2" ) elseif theData == "2" then outputChatBox ("بالفعل تساوي 2") triggerClientEvent ( source, "lbl3", source ) setAccountData ( theAcc, "Level", "3" ) elseif theData == "3" then outputChatBox ("بالفعل تساوي 3") triggerClientEvent ( source, "lbl4", source ) setAccountData ( theAcc, "Level", "4" ) elseif theData == "4" then outputChatBox ("بالفعل تساوي 4") triggerClientEvent ( source, "lbl5", source ) setAccountData ( theAcc, "Level", "5" ) elseif theData == "5" then outputChatBox ("بالفعل تساوي 5") triggerClientEvent ( source, "lbl6", source ) setAccountData ( theAcc, "Level", "6" ) elseif theData == "6" then outputChatBox ("بالفعل تساوي 6") triggerClientEvent ( source, "lbl7", source ) setAccountData ( theAcc, "Level", "7" ) elseif theData == "7" then outputChatBox ("بالفعل تساوي 7") triggerClientEvent ( source, "lbl8", source ) setAccountData ( theAcc, "Level", "8" ) elseif theData == "8" then outputChatBox ("بالفعل تساوي 8") triggerClientEvent ( source, "lbl9", source ) setAccountData ( theAcc, "Level", "9" ) elseif theData == "9" then outputChatBox ("بالفعل تساوي 9") triggerClientEvent ( source, "lbl10", source ) setAccountData ( theAcc, "Level", "10" ) elseif theData == "10" then outputChatBox ("بالفعل تساوي 10") triggerClientEvent ( source, "lbl10", source ) end end addEventHandler ( "get:Acc", root, Acc ) طبعا الي يسـألني ليش محطي لمن يكتب بلس يزيد اكسبي اللفل عشان اانا بسيرفر محلي لو حطيت حدث إاذا قتل شخص مافي حد اجرب المود عليه عشان كذا حدث اذا كتب لول .. المود شغال كويس لاكن مادري ليه احسها مب بسهوله ذي .. وش الاخطاء عندي ؟ وش احسن طريقة ؟ Link to comment
iMr.SFA7 Posted February 29, 2016 Share Posted February 29, 2016 function Plus( Message ) local theAcc = getPlayerAccount ( source ) if Message == "Plus" then local Data = getAccountData ( TheAcc, "Level" ) if Data == "1" or Data == "2" or Data == "3" or Data == "4" or Data == "5" or Data == "6" or Data == "7" or Data == "8" or Data == "9" or Data == "10" then triggerClientEvent ( source,"Plus", source ) end end end addEventHandler ( "onPlayerChat", root, Plus ) Link to comment
MuhannaDx Posted February 29, 2016 Author Share Posted February 29, 2016 function Plus( Message ) local theAcc = getPlayerAccount ( source ) if Message == "Plus" then local Data = getAccountData ( TheAcc, "Level" ) if Data == "1" or Data == "2" or Data == "3" or Data == "4" or Data == "5" or Data == "6" or Data == "7" or Data == "8" or Data == "9" or Data == "10" then triggerClientEvent ( source,"Plus", source ) end end end addEventHandler ( "onPlayerChat", root, Plus ) شوف الكلينت و السيرفر وافهم طريقتي ~~ وش هاذ التخبص بـاكوادك لول Link to comment
MuhannaDx Posted February 29, 2016 Author Share Posted February 29, 2016 اوه اسف انا مخبص ههههههههههههههههههههههاي صدق ان العجله غير مفيدهه Link to comment
MuhannaDx Posted February 29, 2016 Author Share Posted February 29, 2016 بس كودي شغال كويس مافيه خطا من ناحية ارسال Plus Link to comment
7up2016 Posted February 29, 2016 Share Posted February 29, 2016 اخي نصيحة فقط بدل ما تحط القيمة كذا "1" حطها كذا 1 مثلا function Plus( Message ) theAcc = getPlayerAccount ( source ) if Message == "Plus" then if getAccountData ( TheAcc, "Level" ) >= 1 and getAccountData ( TheAcc, "Level" ) <= 10 then triggerClientEvent ( source,"Plus", source ) end end end addEventHandler ( "onPlayerChat", root, Plus ) addEvent ( "get:Acc", true ) function Acc() theAcc = getPlayerAccount ( source ) theData = getAccountData ( theAcc, "Level" ) if theData == 1 then outputChatBox ("بالفعل تساوي 1") triggerClientEvent ( source, "lbl2", source ) setAccountData ( theAcc, "Level", 2 ) elseif theData == 2 then outputChatBox ("بالفعل تساوي 2") triggerClientEvent ( source, "lbl3", source ) setAccountData ( theAcc, "Level", 3 ) elseif theData == 3 then outputChatBox ("بالفعل تساوي 3") triggerClientEvent ( source, "lbl4", source ) setAccountData ( theAcc, "Level", 4 ) elseif theData == 4 then outputChatBox ("بالفعل تساوي 4") triggerClientEvent ( source, "lbl5", source ) setAccountData ( theAcc, "Level", 5 ) elseif theData == 5 then outputChatBox ("بالفعل تساوي 5") triggerClientEvent ( source, "lbl6", source ) setAccountData ( theAcc, "Level", 6 ) elseif theData == 6 then outputChatBox ("بالفعل تساوي 6") triggerClientEvent ( source, "lbl7", source ) setAccountData ( theAcc, "Level", 7 ) elseif theData == 7 then outputChatBox ("بالفعل تساوي 7") triggerClientEvent ( source, "lbl8", source ) setAccountData ( theAcc, "Level", 8 ) elseif theData == 8 then outputChatBox ("بالفعل تساوي 8") triggerClientEvent ( source, "lbl9", source ) setAccountData ( theAcc, "Level", 9 ) elseif theData == 9 then outputChatBox ("بالفعل تساوي 9") triggerClientEvent ( source, "lbl10", source ) setAccountData ( theAcc, "Level", 10 ) elseif theData == 10 then outputChatBox ("بالفعل تساوي 10") triggerClientEvent ( source, "lbl10", source ) end end addEventHandler ( "get:Acc", root, Acc ) بالارقام ما تحتاج تحط علامة تنصيص (" ") Link to comment
Mr.Wolf Posted February 29, 2016 Share Posted February 29, 2016 ^ ماعليش طيب اخي فيه مشكلة لو حط سترنق او لا ؟ Link to comment
MuhannaDx Posted February 29, 2016 Author Share Posted February 29, 2016 ^ ماعليش طيب اخي فيه مشكلة لو حط سترنق او لا ؟ بسم الله موضوعي يكوتش امزح امزح عادي خذ الاكواد واعتبرها حقوق لك مسامحك لول .. طيب ي سفن اما مسوي setAccountData (theAcc,"Level", "1") لو تلاحظ مسوي الرقم بين قوسين لازم اتحقق ان الداتا برضو بين قوسين او ماتفرق ؟ Link to comment
Mr.Wolf Posted February 29, 2016 Share Posted February 29, 2016 اتوقع تقدر لأكن لازم تستخدم tonumber Link to comment
#DRAGON!FIRE Posted February 29, 2016 Share Posted February 29, 2016 ما يبغالها شي "1" اذا انك مسوي شي اجباري يكون التحقق زي كذا if ( data == "1" ) then end عشان تفك نفسك ياخي حط اي اسم اي شي !! Link to comment
MuhannaDx Posted February 29, 2016 Author Share Posted February 29, 2016 طيب الله لا يهينك احس طريقتي طويله احس فيه احسن منها في مود اللفل لاني اول مرة اسوي نظام او طريقة معينه فهمت علي؟ يعني فيه طريقة احسن من كذا ؟ Link to comment
Mr.Wolf Posted February 29, 2016 Share Posted February 29, 2016 عندك طرق كثيره table or setElementData - getElementData or executeSQLQuery or dbFunctions Link to comment
Rockyz Posted March 1, 2016 Share Posted March 1, 2016 عندك طرق كثيره table or setElementData - getElementData or executeSQLQuery or dbFunctions setElementData - getElementData الالمنت داتا وهمية بس يقدر يستخدمها مع setAccountData - getAccountData Link to comment
MuhannaDx Posted March 1, 2016 Author Share Posted March 1, 2016 بنظركم طريقتي كويسة او مافيها أخطاء لنظام اللفل ؟ Link to comment
7up2016 Posted March 1, 2016 Share Posted March 1, 2016 بنظركم طريقتي كويسة او مافيها أخطاء لنظام اللفل ؟ رأيي الشخصي ما اتوقع وصل مودك لدرجة انه يكون (نظام)ـ يحتاج كثير من الاكواد التكميلية Link to comment
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now