SCi Posted December 26, 2021 Share Posted December 26, 2021 (edited) جالس اسوي اختبارات صغيرة وبتعلم منها مشان وقت يجي اسوي مود اكون فاهم كل شي المهم سويت اني اضغط علي زر يطلع كلام بس ماشتغل وقت ضغطط علي الزر -- server function hello() outputChatBox ("تجربة") end bindKey ("m", "Down", hello) Edited December 26, 2021 by SCi Link to comment
#\_oskar_/# Posted December 26, 2021 Share Posted December 26, 2021 bindkey بجانب السيرفر لازم تعرف اللاعب ادخل ع صفحة الوظيفه وهتفهم قصدي 1 Link to comment
+Source|> Posted December 26, 2021 Share Posted December 26, 2021 5 hours ago, SCi said: جالس اسوي اختبارات صغيرة وبتعلم منها مشان وقت يجي اسوي مود اكون فاهم كل شي المهم سويت اني اضغط علي زر يطلع كلام بس ماشتغل وقت ضغطط علي الزر -- server function hello() outputChatBox ("تجربة") end bindKey ("m", "Down", hello) function hello( ) bindKey ( source, "m", "down", function( ) outputChatBox ( "تجربة", source, 255, 0, 255, true ) end) end addEventHandler( "onPlayerLogin", root, hello ) 3 Link to comment
SCi Posted December 27, 2021 Author Share Posted December 27, 2021 (edited) 45 minutes ago, +Source|> said: function hello( ) bindKey ( source, "m", "down", function( ) outputChatBox ( "تجربة", source, 255, 0, 255, true ) end) end addEventHandler( "onPlayerLogin", root, hello ) يعني اللاعب وقت يسجل يقدر بعدها يكبس علي الزر ويطلعله كلام صح؟ Edited December 27, 2021 by SCi 1 Link to comment
Scripting Moderators xLive Posted December 27, 2021 Scripting Moderators Share Posted December 27, 2021 (edited) 9 hours ago, SCi said: يعني اللاعب وقت يسجل يقدر بعدها يكبس علي الزر ويطلعله كلام صح؟ ،أي بالضبط، لكن ما أنصحك تستعمله بالسيرفر إذا ماكنت تحتاجه .لأن راح تشوف تأخير وممكن يكون كبير إذا كان الاعب عنده مشاكل بلاتصال على سبيل المثال تبي تخلي السيارة تقفز، سويها كلاينت، لأن الاعب يتوقع إن السيارة تقفز على طول Edited December 27, 2021 by xLive 1 Link to comment
SCi Posted December 27, 2021 Author Share Posted December 27, 2021 (edited) 7 minutes ago, xLive said: ،أي بالضبط، لكن ما أنصحك تستعمله بالسيرفر إذا ماكنت تحتاجه .لأن راح تشوف تأخير وممكن يكون كبير إذا كان الاعب عنده مشاكل بلاتصال على سبيل المثال تبي تخلي السيارة تقفز، سويها كلاينت، لأن الاعب يتوقع إن السيارة تقفز على طول لا كنت مسوي كود يسوي انفجار بمكان اللاعب بس حبيت اسويها بزر بدون لوحة او كلمة وكمان الكزر ماشتغل مدري ليش Edited December 27, 2021 by SCi Link to comment
Scripting Moderators xLive Posted December 27, 2021 Scripting Moderators Share Posted December 27, 2021 (edited) 5 minutes ago, SCi said: لا كنت مسوي كود يسوي انفجار بمكان اللاعب بس حبيت اسويها بزر بدون لوحة او كلمة مثال حلو، يعتمد بعد على الفكرة يلي بتسويها على سبيل المثال فكرتك يلي سويتها راح تشتغل بالسيرفر والكلاينت ومايهم التأخير، لكن وش يفرق؟ لو سويتها بالسيرفر جميع الاعبين راح يشوفونه، وإذا كلاينت راح يشوفه هو نفسه فقط (لأن الكلاينت يعتبر جهاز الاعب) Edited December 27, 2021 by xLive 1 Link to comment
SCi Posted December 27, 2021 Author Share Posted December 27, 2021 1 minute ago, xLive said: مثال حلو، يعتمد بعد على الفكرة يلي بتسويها على سبيل المثال فكرتك لو سويتها بالسيرفر جميع الاعبين راح يشوفونه، وإذا كلاينت راح يشوفه هو نفسه فقط (لأن الكلاينت يعتبر جهاز الاعب فقط) لهيك سويتها بسيرفر مو كلينت بس ليش الزر مابيشتغل Link to comment
Scripting Moderators xLive Posted December 27, 2021 Scripting Moderators Share Posted December 27, 2021 8 minutes ago, SCi said: لهيك سويتها بسيرفر مو كلينت بس ليش الزر مابيشتغل ممكن مسوي شي خطأ أطرح اكوادك نشوفها Link to comment
SCi Posted December 27, 2021 Author Share Posted December 27, 2021 (edited) شوف اخي @xLive function hi() bindKey(source, "n", "down", function () outputChatBox ("testt", source, 255, 255, 255, true) end) end addEventHandler ("onPlayerLogin", root, hi) onResourceStart ينفع نحط هاد بدل عند التسجيل؟ Edited December 27, 2021 by SCi Link to comment
#\_oskar_/# Posted December 27, 2021 Share Posted December 27, 2021 سويه عند دخول اللاعب السيرفر افضل من تسجيل الدخول 1 Link to comment
SCi Posted December 27, 2021 Author Share Posted December 27, 2021 (edited) 1 minute ago, #\_oskar_/# said: سويه عند دخول اللاعب السيرفر افضل من تسجيل الدخول هاد كانت تجربة اخي سورس بسوي وبجرب في مشكل اظن مو من الحدث مارضي يطلع الكلام الزر مدري ليش مو شغال Edited December 27, 2021 by SCi Link to comment
#\_oskar_/# Posted December 27, 2021 Share Posted December 27, 2021 اعرض كودك بعد التعديل Link to comment
SCi Posted December 27, 2021 Author Share Posted December 27, 2021 (edited) 25 minutes ago, #\_oskar_/# said: اعرض كودك بعد التعديل -- server function keymes(key, player) bindKey(player, "e", "down", function (player) outputChatBox ("test", player, 255, 255, 255, true) end) end addEventHandler ("onResourceStart", root, keymes) شوف كذا ، للعلم انا مارح حط رسالة رح حط شي تاني بس هاد تجربة للزر Edited December 27, 2021 by SCi Link to comment
#\_oskar_/# Posted December 27, 2021 Share Posted December 27, 2021 كدا اللاعب مو متعرف فا حيظهرلك خطاء بالديبوق ومراح يشتغل معك الكود بطريقتك دي لانها طريقه خاطئه للاسف الصح انك تعمل لوب لكل اللاعبين عند تشغيل السكربت Link to comment
SCi Posted December 27, 2021 Author Share Posted December 27, 2021 (edited) 2 minutes ago, #\_oskar_/# said: كدا اللاعب مو متعرف فا حيظهرلك خطاء بالديبوق ومراح يشتغل معك الكود بطريقتك دي لانها طريقه خاطئه للاسف الصح انك تعمل لوب لكل اللاعبين عند تشغيل السكربت ؟؟؟ اللاعب والزر متعرفين في الفنكشن شوف منيح وللعلم مابيجيلي خطئ Edited December 27, 2021 by SCi Link to comment
Scripting Moderators xLive Posted December 27, 2021 Scripting Moderators Share Posted December 27, 2021 (edited) 13 hours ago, +Source|> said: function hello( ) bindKey ( source, "m", "down", function( ) outputChatBox ( "تجربة", source, 255, 0, 255, true ) end) end addEventHandler( "onPlayerLogin", root, hello ) تنبيه بسيط السورس كذا ماراح يكون معرف في الانيموس فنكشن، ممكن انت جربته وطلع الشات وحسبته ضبط ،والارقمنت له قيمة إفتراضية يلي هي الروت، عشان كذا طلع لك nil لكن لا، قيمة السورس تقدر تجرب تطبع القيمة حقت السورس عشان تتأكد :المفروض يكون كذا function hi() bindKey(source, "n", "down", function (player) outputChatBox ("testt", player, 255, 255, 255, true) end) end addEventHandler ("onPlayerLogin", root, hi) تقريبا @SCiأكتشف المشكلة بالكود يلي عرضه قبل شوي 59 minutes ago, SCi said: -- server function keymes(key, player) bindKey(player, "e", "down", function (player) outputChatBox ("test", player, 255, 255, 255, true) end) end addEventHandler ("onResourceStart", root, keymes) شوف كذا ، للعلم انا مارح حط رسالة رح حط شي تاني بس هاد تجربة للزر هذا الحدث إذا اشتغل مود، الايفنت نفسه ماراح يعطيك أي معلومة عن الاعب لأنه خاص بالمودات فقط getElementsByType لازم تجيب كل الاعبين وتسوي لهم لوب هذا الفنكشن يجيبهم لك :مثال بسيط -- server function keymes() local players = getElementsByType("player") -- راح يعطيك جدول يتكون من الاعبين المتصلين بالخادم for index,player in ipairs (players) do -- نسوي لوب (تكرار) على جدول الاعبين bindKey(player, "e", "down", function (player) outputChatBox ("test", player, 255, 255, 255, true) end) end end addEventHandler ("onResourceStart", resourceRoot, keymes) لاحظ إني عدلت بعد في أخر سطر استبدلت root -> resourceRoot لجميع الكائنات وبما إن الحدث هذا يشتغل للمودات فقط راح يشتغل لأي مود مو لسكربتك فقط root ليش؟ لكائنات المود نفسه وبما إن الحدث زي ماقلنا يشتغل للمودات راح يشتغل الايفنت لنفس المود فقط ،resourceRoot لكن ممكن تفهم أكثر مع رسمة شجرة الكائنات لا تنسى تضيف الزر بعد في حدث الدخول onPlayerJoin أو onPlayerLogin لأن الايفنت زي ماذكرت راح يشتغل في حالة السكربت اشتغل فقط لو فيه لاعب دخل بعدها ما راح يشتغل له يمديك حتى تخلي فنكشن الزر بحدث منفصل عشان ماتكرر الكود كل شوي مثال function myFunction(player) -- تطلع شات هنا أو تسوي يلي تبغاه end -- بعدها في أي ايفنت تقدر تتكتب اسم الفنكشن فقط، بدون ماتحتاج تعيد كتابة الفنكشن من جديد bindPlayer(player,"e","down",myFunction) Edited December 27, 2021 by xLive 2 Link to comment
SCi Posted December 27, 2021 Author Share Posted December 27, 2021 3 minutes ago, xLive said: تنبيه بسيط السورس كذا ماراح يكون معرف في الانيموس فنكشن، ممكن انت جربته وطلع الشات وحسبته ضبط ،والارقمنت له قيمة إفتراضية يلي هي الروت عشان كذا طلع لك nil لكن لا قيمة السورس تقدر تجرب تطبع القيمة حقت السورس عشان تتأكد المفروض يكون كذا function hi() bindKey(source, "n", "down", function (player) outputChatBox ("testt", player, 255, 255, 255, true) end) end addEventHandler ("onPlayerLogin", root, hi) تقريبا @SCiأكتشف المشكلة بالكود يلي عرضه قبل شوي هذا الحدث إذا اشتغل مود ف الايفنت نفسه ماراح يعطيك أي معلومة عن الاعب لأنه خاص بالمودات فقط getElementsByType لازم تجيب كل الاعبين وتسوي لهم لوب هذا الفنكشن يجيبهم لك مثال بسيط -- server function keymes() local players = getElementsByType("player") -- راح يعطيك جدول يتكون من الاعبين المتصلين بالخادم for index,player in ipairs (players) do -- نسوي لوب (تكرار) على جدول الاعبين bindKey(player, "e", "down", function (player) outputChatBox ("test", player, 255, 255, 255, true) end) end end addEventHandler ("onResourceStart", resourceRoot, keymes) لاحظ إني عدلت بعد في أخر سطر استبدلت root -> resourceRoot لجميع الكائنات وبما إن الحدث هذا يشتغل للمودات فقط راح يشتغل لأي مود مو لسكربتك فقط root ليش؟ لكائنات المود نفسه وبما إن الحدث زي ماقلنا يشتغل للمودات راح يشتغل الايفنت لنفس المود فقط ،resourceRoot لكن ممكن تفهم أكثر مع رسمة شجرة الكائنات لا تنسى تضيف الزر بعد في حدث الدخول onPlayerJoin أو onPlayerLogin لأن الايفنت زي ماذكرت راح يشتغل في حالة السكربت اشتغل فقط لو فيه لاعب دخل بعدها ما راح يشتغل له يمديك حتى تخلي فنكشن الزر بحدث منفصل عشان ماتكرر الكود كل شوي مثال function myFunction(player) -- تطلع شات هنا أو تسوي يلي تبغاه end -- بعدها في أي ايفنت تقدر تتكتب اسم الفنكشن فقط، بدون ماتحتاج تعيد كتابة الفنكشن من جديد bindPlayer(player,"e","down",myFunction) شكرا علي تعبك اخي الله يعطيك العافيه فهمت قصدك 1 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