Jump to content

مساعد بكود x


SCi

Recommended Posts

جالس اسوي اختبارات صغيرة وبتعلم منها مشان وقت يجي اسوي مود اكون فاهم كل شي المهم سويت اني اضغط علي زر يطلع كلام بس ماشتغل وقت ضغطط علي الزر

-- server
function hello()
  outputChatBox ("تجربة")
  end 
bindKey ("m", "Down", hello)

 

Edited by SCi
Link to comment
  On 26/12/2021 at 17:35, SCi said:

جالس اسوي اختبارات صغيرة وبتعلم منها مشان وقت يجي اسوي مود اكون فاهم كل شي المهم سويت اني اضغط علي زر يطلع كلام بس ماشتغل وقت ضغطط علي الزر

-- server
function hello()
  outputChatBox ("تجربة")
  end 
bindKey ("m", "Down", hello)

 

Expand  
function hello(  )
	bindKey ( source, "m", "down",
	function(  )
		outputChatBox ( "تجربة", source, 255, 0, 255, true )
	end)
end
addEventHandler( "onPlayerLogin", root, hello )

 

  • Like 3
Link to comment

 

  On 26/12/2021 at 23:23, +Source|> said:
function hello(  )
	bindKey ( source, "m", "down",
	function(  )
		outputChatBox ( "تجربة", source, 255, 0, 255, true )
	end)
end
addEventHandler( "onPlayerLogin", root, hello )

 

Expand  

يعني اللاعب وقت يسجل يقدر بعدها يكبس علي الزر ويطلعله كلام صح؟

 

 

Edited by SCi
  • Like 1
Link to comment
  • Scripting Moderators
  On 27/12/2021 at 00:07, SCi said:

يعني اللاعب وقت يسجل يقدر بعدها يكبس علي الزر ويطلعله كلام صح؟

Expand  


،أي بالضبط، لكن ما أنصحك تستعمله بالسيرفر إذا ماكنت تحتاجه
.لأن راح تشوف تأخير وممكن يكون كبير إذا كان الاعب عنده مشاكل بلاتصال 
على سبيل المثال تبي تخلي السيارة تقفز، سويها كلاينت، لأن الاعب يتوقع إن السيارة تقفز على طول

Edited by xLive
  • Thanks 1
Link to comment
  On 27/12/2021 at 10:04, xLive said:


،أي بالضبط، لكن ما أنصحك تستعمله بالسيرفر إذا ماكنت تحتاجه
.لأن راح تشوف تأخير وممكن يكون كبير إذا كان الاعب عنده مشاكل بلاتصال 
على سبيل المثال تبي تخلي السيارة تقفز، سويها كلاينت، لأن الاعب يتوقع إن السيارة تقفز على طول

Expand  

لا كنت مسوي كود يسوي انفجار بمكان اللاعب بس حبيت اسويها بزر بدون لوحة او كلمة وكمان الكزر ماشتغل مدري ليش

 

 

 

 

Edited by SCi
Link to comment
  • Scripting Moderators
  On 27/12/2021 at 10:10, SCi said:

لا كنت مسوي كود يسوي انفجار بمكان اللاعب بس حبيت اسويها بزر بدون لوحة او كلمة

Expand  

 ? مثال حلو، يعتمد بعد على الفكرة يلي بتسويها
على سبيل المثال فكرتك يلي سويتها راح تشتغل بالسيرفر والكلاينت ومايهم التأخير، لكن وش يفرق؟
 لو سويتها بالسيرفر جميع الاعبين راح يشوفونه، وإذا كلاينت راح يشوفه هو نفسه فقط (لأن الكلاينت يعتبر جهاز الاعب)

Edited by xLive
  • Like 1
Link to comment
  On 27/12/2021 at 10:14, xLive said:

 ? مثال حلو، يعتمد بعد على الفكرة يلي بتسويها
على سبيل المثال فكرتك
 لو سويتها بالسيرفر جميع الاعبين راح يشوفونه، وإذا كلاينت راح يشوفه هو نفسه فقط (لأن الكلاينت يعتبر جهاز الاعب فقط)

Expand  

لهيك سويتها بسيرفر مو كلينت بس ليش الزر مابيشتغل 

 

 

 

Link to comment
  On 27/12/2021 at 10:44, #\_oskar_/# said:

سويه عند دخول اللاعب السيرفر افضل من تسجيل الدخول 

 

Expand  

هاد كانت تجربة اخي سورس 

بسوي وبجرب

في مشكل اظن مو من الحدث مارضي يطلع الكلام الزر مدري ليش مو شغال

 

Edited by SCi
Link to comment
  On 27/12/2021 at 11:42, #\_oskar_/# said:

اعرض كودك بعد التعديل 

Expand  
-- 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 by SCi
Link to comment
  On 27/12/2021 at 12:55, #\_oskar_/# said:

كدا اللاعب مو متعرف فا حيظهرلك خطاء بالديبوق ومراح يشتغل معك الكود بطريقتك دي لانها طريقه خاطئه للاسف

الصح انك تعمل لوب لكل اللاعبين عند تشغيل السكربت 

 

 

Expand  

؟؟؟

اللاعب والزر متعرفين في الفنكشن شوف منيح وللعلم مابيجيلي خطئ :)

 

Edited by SCi
Link to comment
  • Scripting Moderators
  On 26/12/2021 at 23:23, +Source|> said:
function hello(  )
	bindKey ( source, "m", "down",
	function(  )
		outputChatBox ( "تجربة", source, 255, 0, 255, true )
	end)
end
addEventHandler( "onPlayerLogin", root, hello )

 

Expand  

تنبيه بسيط السورس كذا ماراح يكون معرف في الانيموس فنكشن، ممكن انت جربته وطلع الشات وحسبته ضبط
،والارقمنت له قيمة إفتراضية يلي هي الروت، عشان كذا طلع لك nil لكن لا، قيمة السورس
? تقدر تجرب تطبع القيمة حقت السورس عشان تتأكد
:المفروض يكون كذا

function hi()
    bindKey(source, "n", "down",
      function (player)
        outputChatBox ("testt", player, 255, 255, 255, true)
    end)
end 
addEventHandler ("onPlayerLogin", root, hi)

تقريبا @SCiأكتشف المشكلة بالكود يلي عرضه قبل شوي
 

  On 27/12/2021 at 12:06, 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)

شوف كذا ، للعلم انا مارح حط رسالة رح حط شي تاني بس هاد تجربة للزر 

 

 

Expand  

هذا الحدث إذا اشتغل مود، الايفنت نفسه ماراح يعطيك أي معلومة عن الاعب لأنه خاص بالمودات فقط
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 لكن
ممكن تفهم أكثر مع رسمة شجرة الكائنات
spacer.png

لا تنسى تضيف الزر بعد في حدث الدخول 
onPlayerJoin أو onPlayerLogin 
لأن الايفنت زي ماذكرت راح يشتغل في حالة السكربت اشتغل فقط لو فيه لاعب دخل بعدها ما راح يشتغل له
يمديك حتى تخلي فنكشن الزر بحدث منفصل عشان ماتكرر الكود كل شوي مثال

function myFunction(player)
    -- تطلع شات هنا أو تسوي يلي تبغاه
end

-- بعدها في أي ايفنت تقدر تتكتب اسم الفنكشن فقط، بدون ماتحتاج تعيد كتابة الفنكشن من جديد
bindPlayer(player,"e","down",myFunction)
Edited by xLive
  • Like 2
Link to comment
  On 27/12/2021 at 13:02, 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 لكن
ممكن تفهم أكثر مع رسمة شجرة الكائنات
spacer.png

لا تنسى تضيف الزر بعد في حدث الدخول 
onPlayerJoin أو onPlayerLogin 
لأن الايفنت زي ماذكرت راح يشتغل في حالة السكربت اشتغل فقط لو فيه لاعب دخل بعدها ما راح يشتغل له
يمديك حتى تخلي فنكشن الزر بحدث منفصل عشان ماتكرر الكود كل شوي مثال

function myFunction(player)
    -- تطلع شات هنا أو تسوي يلي تبغاه
end

-- بعدها في أي ايفنت تقدر تتكتب اسم الفنكشن فقط، بدون ماتحتاج تعيد كتابة الفنكشن من جديد
bindPlayer(player,"e","down",myFunction)

 

Expand  

شكرا علي تعبك اخي الله يعطيك العافيه فهمت قصدك

  • Like 1
Link to comment

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 account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...