SCi Posted January 16, 2022 Share Posted January 16, 2022 ابي وقت ادخل بماركر مثلا اف واحد و ٢ و ٣ واضيف الازرار الي مابي اغلقها وقت اكون بماركر مشان مايغشو اللاعبين ، ولما اخرج منه ترجعلي الازرار واعرف افتحهم عادي Link to comment
Spyrax Posted January 17, 2022 Share Posted January 17, 2022 (edited) ببساطة قم بعمل جدول وفيه الأزرار وإستخدم حدث onClientKey وتحتاج لـ isElementWithinMarker لـ تأكد من أن اللاعب فالماركر لو كان فالماركر قم بـ الفنكشن cancelEvent. فقط. Edited January 17, 2022 by 6rB. 1 Link to comment
SCi Posted January 17, 2022 Author Share Posted January 17, 2022 3 hours ago, 6rB. said: ببساطة قم بعمل جدول وفيه الأزرار وإستخدم حدث onClientKey وتحتاج لـ isElementWithinMarker لـ تأكد من أن اللاعب فالماركر لو كان فالماركر قم بـ الفنكشن cancelEvent. فقط. كفو يغالي Link to comment
SCi Posted January 17, 2022 Author Share Posted January 17, 2022 @6rB.ممكن تعطيني مثال لاني جربت ومانفعت طريقتي Link to comment
SCi Posted January 18, 2022 Author Share Posted January 18, 2022 (edited) localPlayer خلاص يغالي بعد تجارب كثيرة حطيت الـ مكان السورس أشتغل بس ايش الفرق بين سورس و لوكال السورس مصدر اللاعب الي سوه الشي او جلب شي يتعلق باللاعب و اللوكال للاعب فقط يعني نفس الشي طب ليش ماشتغل المود بالسورس او انا معلوماتي عنهم غلط ولزم كل فنكشن يستعمل فيه شي مخصص؟ Edited January 18, 2022 by SCi Link to comment
Mr.Hugin Posted January 18, 2022 Share Posted January 18, 2022 (edited) 14 hours ago, SCi said: localPlayer خلاص يغالي بعد تجارب كثيرة حطيت الـ مكان السورس أشتغل بس ايش الفرق بين سورس و لوكال السورس مصدر اللاعب الي سوه الشي او جلب شي يتعلق باللاعب و اللوكال للاعب فقط يعني نفس الشي طب ليش ماشتغل المود بالسورس او انا معلوماتي عنهم غلط ولزم كل فنكشن يستعمل فيه شي مخصص؟ local تعريفه المتغير المحلي موجود فقط ضمن النطاق المعلن عنه. النطاق هو "المستوى" الذي يكون المتغير مرئيًا للبرنامج النصي ، ويحتوي على القيمة التي تم تعيينها له وlocalPlayer تحصل هذه الوظيفة على عنصر المشغل الخاص بالعميل الذي يقوم بتشغيل النص الحالي. يمكنك استخدام المتغير localPlayer المحدد مسبقًا بدلاً من كتابة getLocalPlayer () و local هوه شيأ المحلي وlocalPlayer يلي هوه الاعب المحلي 14 hours ago, SCi said: و اللوكال للاعب فقط يعني نفس الشي طب ليش ماشتغل المود بالسورس او انا معلوماتي عنهم غلط ولزم كل فنكشن يستعمل فيه شي مخصص؟ نعم كل شيء له شي مخصص يشغله عرفت اخي الكريم وشو بيجي معاه لازم تقرأه بلويكي Edited January 18, 2022 by Mr.Hugin 1 Link to comment
,3ZF Posted January 18, 2022 Share Posted January 18, 2022 localPlayer ببساطه ال تخيل معي الكلينت هو شخص واحد بس الي هو انت تمام ؟ انما السيرفر هو جميع اللاعبين الي بالسيرفر ف بالتالي ماماينفع تسوي لوب ل جميع اللاعبين و انت ب ملف كلينت لأنه مافيه الا شخص واحد الي هو اللوكال بلاير ( انت ) و دائما بيكون مُعرف في الكلينت لوكال بلاير الي هو انت انما في السيرفر السورس هو الشخص الي بيطبق الحدث او بيجيله حدث معين مثلا واحد كتب كود ممنوع ب اف 8 بيجي الكيك ل السورس الي هو كتب و فيه طريقه ثانيه لو ابي اكتب بملف سيرفر نص يظهر لي انا فقط ماينفع اسوها سورس اسوها كذا function Tr7eb ( player ) outputChatBox ( "السلام عليكم",player,250,250,250 ) -- لو ابي اخليها للكل اسوها روت end addCommandHandler ( "text", Tr7eb ) أتمنى تكون فهمت الشرح و السلام عليكم ... 1 Link to comment
SCi Posted January 18, 2022 Author Share Posted January 18, 2022 (edited) 2 hours ago, ,3ZF said: localPlayer ببساطه ال تخيل معي الكلينت هو شخص واحد بس الي هو انت تمام ؟ انما السيرفر هو جميع اللاعبين الي بالسيرفر ف بالتالي ماماينفع تسوي لوب ل جميع اللاعبين و انت ب ملف كلينت لأنه مافيه الا شخص واحد الي هو اللوكال بلاير ( انت ) و دائما بيكون مُعرف في الكلينت لوكال بلاير الي هو انت انما في السيرفر السورس هو الشخص الي بيطبق الحدث او بيجيله حدث معين مثلا واحد كتب كود ممنوع ب اف 8 بيجي الكيك ل السورس الي هو كتب و فيه طريقه ثانيه لو ابي اكتب بملف سيرفر نص يظهر لي انا فقط ماينفع اسوها سورس اسوها كذا function Tr7eb ( player ) outputChatBox ( "السلام عليكم",player,250,250,250 ) -- لو ابي اخليها للكل اسوها روت end addCommandHandler ( "text", Tr7eb ) أتمنى تكون فهمت الشرح و السلام عليكم ... وربييييي كفوووو فهمت شرحك يدخل العقل بسرعة تسلم علي مجهودك 5 hours ago, Mr.Hugin said: local تعريفه المتغير المحلي موجود فقط ضمن النطاق المعلن عنه. النطاق هو "المستوى" الذي يكون المتغير مرئيًا للبرنامج النصي ، ويحتوي على القيمة التي تم تعيينها له وlocalPlayer تحصل هذه الوظيفة على عنصر المشغل الخاص بالعميل الذي يقوم بتشغيل النص الحالي. يمكنك استخدام المتغير localPlayer المحدد مسبقًا بدلاً من كتابة getLocalPlayer () و local هوه شيأ المحلي وlocalPlayer يلي هوه الاعب المحلي نعم كل شيء له شي مخصص يشغله عرفت اخي الكريم وشو بيجي معاه لازم تقرأه بلويكي كفو يالغالي علي المجهود فهمتك طب عندي اخر سؤال ياخي @,3ZF لو الروت بحدث الكلينت هيك وقت افتح اللوحة مثلا او يدخل اللاعب يوصل رسالة للكل ؟ Edited January 18, 2022 by SCi 1 Link to comment
Mr.Hugin Posted January 19, 2022 Share Posted January 19, 2022 17 hours ago, SCi said: وربييييي كفوووو فهمت شرحك يدخل العقل بسرعة تسلم علي مجهودك كفو يالغالي علي المجهود فهمتك طب عندي اخر سؤال ياخي @,3ZF لو الروت بحدث الكلينت هيك وقت افتح اللوحة مثلا او يدخل اللاعب يوصل رسالة للكل ؟ العفو اخي 17 hours ago, SCi said: وربييييي كفوووو فهمت شرحك يدخل العقل بسرعة تسلم علي مجهودك كفو يالغالي علي المجهود فهمتك طب عندي اخر سؤال ياخي @,3ZF لو الروت بحدث الكلينت هيك وقت افتح اللوحة مثلا او يدخل اللاعب يوصل رسالة للكل ؟ هي لها جدول يلي هي root هاذا رابط مفصل يشرح لك root هوه جدول https://wiki.multitheftauto.com/wiki/Element_tree#Tree_elements هاذا في جدول root شوفه وتعرف وش فايده منه وروت يجي لها عدت اشيأ منها Player و resource Root و element هي تندرج تحت روت 1 Link to comment
,3ZF Posted January 19, 2022 Share Posted January 19, 2022 18 hours ago, SCi said: وربييييي كفوووو فهمت شرحك يدخل العقل بسرعة تسلم علي مجهودك كفو يالغالي علي المجهود فهمتك طب عندي اخر سؤال ياخي @,3ZF لو الروت بحدث الكلينت هيك وقت افتح اللوحة مثلا او يدخل اللاعب يوصل رسالة للكل ؟ اذا تبي شي يحدث لجميع اللاعبين الشغل كله بيكون من السيرفر مو من كلينت ابدا واذا تبي تربط شي استخدم تريقر من كلينت ل سيرفر على سبيل المثال -- Client button = guiCreateButton ( x,y,z,f "send" ,false,window ) addEventHandler ( "onClientGUIClick",root,function ( ) if source == button then local me = getPlayerName(localPlayer) triggerServerEvent ( "sendMsgAll",localPlayer,me) end end ) -- Server addEvent ( "sendMsgAll",true ) addEventHandler( "sendMsgAll",root,function ( me ) local x = getPlayerName(source) outputChatBox(""..me.." or "..x.." : السلام عليكم جميعاً",root,250,250,250,true) end ) و ممكن برضو تجيب اسم الي ضغط الزر من خلال السيرفر الي هو x أو من الكلينت بس ترسل اسم الي ضغط بتريقر و بيظهر بالسيرفر 1 Link to comment
Scripting Moderators xLive Posted January 19, 2022 Scripting Moderators Share Posted January 19, 2022 (edited) الأخ يلي فوق ممكن توضيحه كان ناقص شوي لكن خذها معلومة عامة ،الكلاينت(جهاز الاعب) ما يقدر يسوي أي تأثير لأي لاعب غير نفسه، الاعبين الآخرين موجودين في جانب الكلاينت ..لكن الاشياء يلي تقدر تسويها محدودة مثل جلب معلومات عنهم مثل الاسم، البنق، المكان إلخ .هل اقدر اسوي عليهم بعض الفنكشنات مثل تغيير السكن؟ أي طيب انت قلت الكلاينت يشغل وظائف لنفسه فقط؟ صحيح، تقدر تغير السكن حقهم لكن يلي راح يشوف التغيير فقط أنت الباقين راح يشوفونه مثل ما هو بالنسبة للسورس(المصدر) لازم تشوف كل حدث لأن كل حدث يختلف المصدر حقه على سبيل المثال onClientMarkerHit إذا تحسب المصدر حقه هنا الاعب أقولك خطأ لازم تشوف الويكي راح تلقى إن المصدر حقه هو كائن الماركر يلي دخله الكائن وليس الاعب نفسه حتى بعض الأحداث ماعندهم مصدر اساسًا 18 hours ago, SCi said: لو الروت بحدث الكلينت هيك وقت افتح اللوحة مثلا او يدخل اللاعب يوصل رسالة للكل ؟ يختلف على حسب الحدث، على سبيل المثال حدث دخول الماركر زي ما قلنا المصدر حقه هو الماركر يلي دخله الاعب، نعرف فنكشن الايفنت له ارقمنت ثاني لكن وش يفرق؟ addEventHandler("onClientMarkerHit",root,myFunction) -- راح يشتغل الحدث لجميع الماركرات addEventHandler("onClientMarkerHit",resourceRoot,myFunction) -- راح يشتغل الحدث لجميع الماركرات التي تم إنشاءها من قبل نفس السكربت addEventHandler("onClientMarkerHit",myMarker,myFunction) -- راح يشتغل الحدث للماركر المعين فقط لاحظ كيف الفرق؟ كلها في الارقمنت الثاني حق المصدر، هذي توضحها شجرة الكائنات لأن الاعب لا يتم إنشاءه من قبل سكربت، لو استخدمتها ما راح يشتغل الايفنت ،resourceRoot تحته كل شيء، ولاحظ إن الاعب مو ضمن root تقريبًا الصورة توضح كل شي (حدث إذا مات لاعب) onClientPlayerWasted وتقدر تستعمل الروت حتى في الكلاينت لبعض الأحداث على سبيل المثال طبعًا مو كل الأحداث يلي تخص الاعب أحيان تشتغل، تحتاج تشيك السورس والوصف حق الوظيفة على سبيل المثال الحدث يلي فوق مذكور إن يمديك تستخدمه وزي ما ذكرنا ما راح تقدر تسوي أي تأثير يشوفه الآخرين في جانب الكلاينت، راح يشتغل لك الحدث، لكن أي شي تسويه الاعبين الآخرين ما راح يشوفونه لأنه جانب الكلاينت جهازك فقط Edited January 19, 2022 by xLive خطأ مطبعي 3 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