Rm-Dj Posted September 1, 2015 Share Posted September 1, 2015 يعني هو الفائده منه انه يتخطي اول قيمة ؟؟ Link to comment
#DRAGON!FIRE Posted September 1, 2015 Share Posted September 1, 2015 ع الاغلب كذا انا للان ما استخدمته ولا مرهـ تقريبا انت ما راح تحتاجه . Link to comment
The Killer Posted September 3, 2015 Share Posted September 3, 2015 اضافة على شرح الاخ زاحف , انه ممكن تستخدمها لجلب القيم من رقم معين يعني هذي فايده من فوائدها بعد مممكن تستخدمها بهذا الشكل: local table = {"Test1", "Test2", "Test3", "Test4"} for _,v in next, table do print (v) end -- Test1 -- Test2 -- Test3 -- Test4 لاكن لو مثلا تبي تطلع القيم من بعد رقم معين مثلا من رقم 1 الى اخر رقم او من رقم 2 الى اخر رقم بيكون بهذا الشكل: local table = {"Test1", "Test2", "Test3", "Test4"} for _,v in next, table, 1 do print (v) end -- Test2 -- Test3 -- Test4 هنا طلع لي القيم من بعد الرقم 1 الى اخر رقم عندك في الجدول وكل مره تزود رقم على حسب استخدامك للجدول .. # Link to comment
Naif Posted September 8, 2015 Share Posted September 8, 2015 outputChatBox أمَزحح , getAllAccountData أبي ششرح بسسيط , انا الان عآرف الارقمنات وتسسذآ بسس هل آقدر أطلع الي هو حافظها ع الحسآب واحطها بـ قريد ليست انا عأرف ان ترآيقر وتسسذآ بسس آقدر .. Link to comment
</Mr.Tn6eL> Posted September 10, 2015 Share Posted September 10, 2015 outputChatBox أمَزحح , getAllAccountData أبي ششرح بسسيط , انا الان عآرف الارقمنات وتسسذآ بسس هل آقدر أطلع الي هو حافظها ع الحسآب واحطها بـ قريد ليست انا عأرف ان ترآيقر وتسسذآ بسس آقدر .. وش هي اللي هو حافظها اتمنى تشرح طلبك بالتفصيل Link to comment
Naif Posted September 14, 2015 Share Posted September 14, 2015 مثلأ ايديت يكتب في الايدي والطلاقات ويحط حفظ ويحفظ له ويحطها بـ قريد ليست انا عآرف اني آقدر أسويها بـ SQLite < لاكن بشوف تظبط بـ getAllAccountData Link to comment
</Mr.Tn6eL> Posted September 14, 2015 Share Posted September 14, 2015 مثلأ ايديت يكتب في الايدي والطلاقات ويحط حفظ ويحفظ له ويحطها بـ قريد ليست انا عآرف اني آقدر أسويها بـ SQLite < لاكن بشوف تظبط بـ getAllAccountData تبي تحفظ بالحساب استخدم set/getAccountData Link to comment
1LoOoVe2 Posted September 20, 2015 Share Posted September 20, 2015 أبي شرح عن source و local و localPlayer ولا هان تعبكك يعني مثلا كيف اجعل الكتابة الي تطلع بشات للاعب الي صار عليه الحدث وكيف اخليها تصير لجميع السيرفر فهمني من ذي الامور مخبصص فيها زوددء Link to comment
#DRAGON!FIRE Posted September 20, 2015 Share Posted September 20, 2015 أبي شرح عن source و local و localPlayer ولا هان تعبكك يعني مثلا كيف اجعل الكتابة الي تطلع بشات للاعب الي صار عليه الحدث وكيف اخليها تصير لجميع السيرفر فهمني من ذي الامور مخبصص فيها زوددء هذي من ابسط الاشياء وبنفس الوقت مهمة جدا .. localPlayer : طبعا اللوكال بلير تستخدم فقط بـ جانب كلاينت .. وهي اللاعب نفسه لان الكلنت للاعب نفسه فقط فـ بالكلنت تستخدم اللوكال بلير setElementPosition مثلأ فنكشن شف السنتكس حق الفنكشن Syntax bool setElementPosition ( element theElement, float x, float y, float z [, bool warp = true ] ) اول ارقمنت هو العنصر اللي بتنقله او اللاعب فالنفترض . لو نبي انه يوم يضغط الزر ينقله addEventHandler ( "onClientGUIClick", resourceRoot, function ( ) if ( source == button ) then end end ) بتقولي هنا ليه جبت السورس . لكل حدث سورس .. يعني مصدر https://wiki.multitheftauto.com/wiki/OnClientGUIClick ادخل هذي الصفحة راح تلقى Source The source of this event is the GUI element that was clicked. بكل بساطة يقولك السورس حق الافنت هو العنصر اللي انضغط .. فـ حنا سوينا تحقق انه اللي انضغط السورس يساوي البوتون حقنا .. addEventHandler ( "onClientGUIClick", resourceRoot, function ( ) if ( source == button ) then setElementPosition ( ..., x, y, z ) end end ) طبعا بتقولي هنا طيب الارقمنت الاول بفنكشن النقل هو العنصر وانت تقول سورس الحدث هو الزر كيف اجيب اللاعب اللي ضغط الزر ؟ ببساطة اللوكال بلير هذي وظيفتها انها ثابتة بالكلنت للاشياء كلها لان الكلنت للاعب نفسه بس عكس سيرفر .. لجميع اللاعبين طبعا لو لاحظ بنفس الصفحة يقول هذا الكلام : Note: The player who clicked the gui-element is always the localPlayer. يقولك دائما اللي ضغط الزر هو اللوكال بلير . addEventHandler ( "onClientGUIClick", resourceRoot, function ( ) if ( source == button ) then setElementPosition ( localPlayer, x, y, z ) end end ) طبعا في نقطة ثانية اللي هي سورس التريقر addEventHandler ( "onClientGUIClick", resourceRoot, function ( ) if ( source == button ) then triggerServerEvent ( "test_", localPlayer ) end end ) فالنفترض سوينا كذا انه يوم يضغط الزر يرسل تريقر لسيرفر نجي نستقبل التريقر بسيرفر : addEvent ( "test_", true ) addEventHandler ( "test_", root, function ( ) end ) طيب هنا تقولي لو مثلا انا بعطيه سلاح .. نجي لفنشكن السلاح والسنتكس حقه Syntax bool giveWeapon ( ped thePlayer, int weapon [, int ammo=30, bool setAsCurrent=false ] ) اول ارقمنت وش تشوف ؟ اللاعب . طيب تقولي لوكال بلير كلنت بس .. هنا كيف اجيب اللاعب نرجع للتريقر Syntax bool triggerServerEvent ( string event, element theElement, [arguments...] ) اول ارقمنت انساهـ .. خلنا بالثاني theElement: The element that is the source of the event. يقلك هنا الالمنت اللي راح يكون مصدر الحدث اللي راح تستقبله بسيرفر يعني اللي راح يكون سورس التريقر نفسه حنا حاطين لوكال بلير .. يعني اللاعب نفسه فـ رسلنا التريقر ع اللاعب نفسه يعني السورس هو اللوكال بلير نفسه .. addEvent ( "test_", true ) addEventHandler ( "test_", root, function ( ) giveWeapon ( source, .... ) end ) local : اللوكال يكون لوكال ع الملف نفسه او ع الفنكشن نفسه بعني مثلأ function var_ ( ) local funcVar = 'Hello' end لو حاولت تجيبه خارج الفنكشن ما راح ينفع لو شلت اللوكال راح يضبط يعني اللوكال ع الشي نفسه بس مثلا حطيت كذا باول الملف local funcVar = 'Hello' لو في ملف كلاينت بالسكربت نفسه ما راح تقدر تستخدمه للمتغير طبعا اذا كان المتغير بكلنت تقدر تستخدمه بملف كلنت ثاني بنفس السكربت بشرط انه ما تكون حاط لوكال لوكال يعني ع الملف نفسه ونفس الكلام ع التحقق function Check_ ( ) if ( ... ) then local _var = "Nothing" elseif ( ... ) then local __var = "Nothing2" elseif ( ... ) then local ___var = "Nothing3" end end https://forum.multitheftauto.com/viewtopic.php?f=164&t=51228 عموما في شرح كامل هنا لو في شي ما فهمته او حاب تستفسر عنه تفضل . طبعا اسف لو طولت بس صح انها اشياء بسيطة بس مهمة ولازم تفهمها .. اي شي ما فهمته تفضل اسال . Link to comment
1LoOoVe2 Posted September 21, 2015 Share Posted September 21, 2015 الي فهمته من الدرس هوو إن اللوكال بلاير نفس السورس لاكن اللوكال يستخدم بالكلينت وماتقدر تستخدمه بسيرفر وتستخدم سورس والي فهمتهه كمان إن اللوكال اذا كان بداخل الفنكشن وحاولت تسويه بفنكشن ثاني ماتقدر لازم تحطه بأول الملف عشان يكون لكل الفنكشنات Link to comment
iMr.SFA7 Posted September 21, 2015 Share Posted September 21, 2015 الي فهمته من الدرس هووإن اللوكال بلاير نفس السورس لاكن اللوكال يستخدم بالكلينت وماتقدر تستخدمه بسيرفر وتستخدم سورس صحيح ولاكن السورس بالسيرفر يعتمد على الحدث "onPlayerJoin" كـ مثآل حدث عند دخول اللاعب = | .. The source of this event is the player who joined. السورس في هذا الحدث هو اللاعب الي دخل ذذ كـ مثآل addEventHandler ("onPlayerJoin", root, function ( ) outputChatBox ("Hello .",source,188,0,0 ,true) end ) هنا سوينا مخرج شات للسورس الي هو اللاعب الي دخل الزبدة من كلامي أنه السورس ماهي مثل اللوكال بلاير بس بالسيرفر السورس هذا يعتمد على الحدث ذذ إن اللوكال اذا كان بداخل الفنكشن وحاولت تسويه بفنكشن ثاني ماتقدر لازم تحطه بأول الملفعشان يكون لكل الفنكشنات موب لازم مداك تحذف اللوكال من المتغير وتقدر تستخدمه في أي وظيفة ثانية ذذ Link to comment
' A F . Posted September 21, 2015 Share Posted September 21, 2015 >< وش تسوي ذي الوظائف ؟ setRuleValue getRuleValue Link to comment
1LoOoVe2 Posted September 21, 2015 Share Posted September 21, 2015 الي فهمته من الدرس هووإن اللوكال بلاير نفس السورس لاكن اللوكال يستخدم بالكلينت وماتقدر تستخدمه بسيرفر وتستخدم سورس صحيح ولاكن السورس بالسيرفر يعتمد على الحدث "onPlayerJoin" كـ مثآل حدث عند دخول اللاعب = | .. The source of this event is the player who joined. السورس في هذا الحدث هو اللاعب الي دخل ذذ كـ مثآل addEventHandler ("onPlayerJoin", root, function ( ) outputChatBox ("Hello .",source,188,0,0 ,true) end ) هنا سوينا مخرج شات للسورس الي هو اللاعب الي دخل الزبدة من كلامي أنه السورس ماهي مثل اللوكال بلاير بس بالسيرفر السورس هذا يعتمد على الحدث ذذ إن اللوكال اذا كان بداخل الفنكشن وحاولت تسويه بفنكشن ثاني ماتقدر لازم تحطه بأول الملفعشان يكون لكل الفنكشنات موب لازم مداك تحذف اللوكال من المتغير وتقدر تستخدمه في أي وظيفة ثانية ذذ طيب يعني السورس بالسيرفر يعتمد ع الي سوى الحدث طيب بالكلينت كيف اخلي يعتمد ع الحدث بالوكال بلاير ولا عايدي سورس ؟ Link to comment
iMr.SFA7 Posted September 22, 2015 Share Posted September 22, 2015 طيب يعني السورس بالسيرفر يعتمد ع الي سوى الحدث طيب بالكلينت كيف اخلي يعتمد ع الحدث بالوكال بلاير ولا عايدي سورس ؟ الأحداث بالكلنت تستعمل فيها اللوكال بلاير "onClientGUIClick" كـ مثال لو تقرأ الويكي Note: The player who clicked the gui-element is always the localPlayer. اللاعب الي ضغط الزر دائماً هو اللوكال بلاير ! كـ مثآل أبي أنقل اللاعب يوم يضغط الزر بنقل اللوكال بلاير ! addEventHandler ("onClientGUIClick", resourceRoot, function ( ) if ( source == buttton ) then setElementPosition (localPlayer,x,y,z ) end end ) Link to comment
1LoOoVe2 Posted September 22, 2015 Share Posted September 22, 2015 ططيب شف ذا المثال كلينت لتجربه بس addEventHandler ("onClientPlayerJoin, root, function () outputChatBox ("Welcome", localplayer) end ) كذا تجي الرسالة للي خش السيرفر فقط صح؟ Link to comment
iMr.SFA7 Posted September 22, 2015 Share Posted September 22, 2015 ططيب شف ذا المثال كلينتلتجربه بس addEventHandler ("onClientPlayerJoin, root, function () outputChatBox ("Welcome", localplayer) end ) كذا تجي الرسالة للي خش السيرفر فقط صح؟ لا خلنا ندخل الويكي ونراجع أرقمنتات مخرج الشات بالكلنت أول شيء نشوف في أرقمنت للاعب؟ bool outputChatBox ( string text [, int r=231, int g=217, int b=176, bool colorCoded=false ] ) لا بالكلنت مافي أرقمنت للاعب ! addEventHandler ("onClientPlayerJoin", root, function ( ) outputChatBox ("Welcome") end ) خلنا نخليه كذا كذا بتصير وظيفة الكود أذا أي لاعب دخل السيرفر الكلام يجي لـ جميع اللاعبين root ليه لجميع اللاعبين؟ لأنك حاط بالحدث طيب اذا تبيه للاعب الي دخل؟ بدل الروت باللوكال بلاير addEventHandler ("onClientPlayerJoin", localPlayer, function ( ) outputChatBox ("Welcome") end ) Link to comment
TAPL Posted September 22, 2015 Share Posted September 22, 2015 onClientPlayerJoin افنت ما يشتغل للاعب نفسه الي دخل إذا ربطت الحدث باللوكل بلاير ما رح يشتغل الأفنت لان اصلا اول ما تدخل السيرفر الكلينت حقك ما بعد يشتغل This event is triggered when a player joins a server. It is triggered for all players except the local player, as the local player joins the server before their client-side resources are started. It would also be possible for two players to join within a few seconds of each other and for the two players' scripts may not receive onClientPlayerJoin events as their scripts wouldn't have started yet. Link to comment
' A F . Posted September 22, 2015 Share Posted September 22, 2015 >< وش تسوي ذي الوظائف ؟ setRuleValue getRuleValue Link to comment
1LoOoVe2 Posted September 23, 2015 Share Posted September 23, 2015 طيب شوفـو ذا المثـال كليـنت # addEventHandler ("onClientResourceStart", localPlayer, function () outputChatBox ( "* Welcome !!" ) end ) طيب الحين كلمة * ولكم * تظهر ل الي خش السيرفر وتحمل المود عنده وتظهر له لحاله ماتظهر لناس الباقين صح؟ ولو ابيها كل ماخش واحد ابدل بدل localPlayer الى root يظل كل ماحد تحمل المود يجي لجميع الناس الي بسيرفر ولكم لو كانت root Link to comment
' A F . Posted September 23, 2015 Share Posted September 23, 2015 ششسمه انت حددت ان الي يششتغل اللاعب , الكلنت رأح يظهر لـ الاعب فقط , يعني تسسذآ كودك addEventHandler('onClientResourceStart',resourceRoot, -- لو حطيت root بيشتغل الحدث على كل مود يشتغل outputChatBox('* Welcome !!' ) end) ,,,,,,,,,,,,, Link to comment
Jupi Posted September 23, 2015 Share Posted September 23, 2015 >< وش تسوي ذي الوظائف ؟ setRuleValue getRuleValue هو محدش بيجاوبه ليه؟ Link to comment
' A F . Posted October 8, 2015 Share Posted October 8, 2015 >< وش تسوي ذي الوظائف ؟ setRuleValue getRuleValue Up Up ! ! ! Link to comment
` Allawi Posted October 8, 2015 Share Posted October 8, 2015 لو ركزت على المثال ممكن كان راح تفهم في وش تستخدم الوظيفة Syntax: bool setRuleValue ( string key, string value ) Example: setRuleValue ( "myScriptRunning", "yes" ) لو تلاحظ الـ key = "myScriptRunning" و value = "yes" عشان نعرف في وش تستخدم الوظيفة "myScriptRunning" طيب الحين لازم نعرف وش يقصدون بـ سكربتي شغال "myScriptRunning" وتقريبا يقصدون بـ تعني القيمة value و والقيمة عندنا "yes" طيب وش الفائده من الوظيفة الوظيفة راح تكون لها فوائد كثير ولاكن ماراح تكتشف فوائدها إلا عند استخدامها وهذي فائدة بسيطه للوظيفه addCommandHandler ( "state", function ( player ) if getRuleValue ( "myScriptRunning" ) and getRuleValue ( "myScriptRunning" ) == "yes" then outputChatBox ( "state: yes", player, 0, 255, 0 ) else outputChatBox ( "state: no", player, 255, 0, 0 ) end end ) إن شاء الله تكون فهمت واستفدت Link to comment
Recommended Posts