يمكن أن تحتوي عبارات if على متطلبات متعددة يجب أن تكون صحيحة قبل تشغيل الكود. تتيح لك الكلمة الرئيسية and دمج العبارات. يقوم الكود التالي أولاً بتقييم ما إذا كان اثنان زائد اثنان يساوي ستة ثم ما إذا كان أربعة لا تساوي ستة. إذا كانت كلا العبارتين صحيحتين، سيتم تشغيل الكود.
-- لن يتم تشغيله
if 2 + 2 == 6 and 4 ~= 6 then
print("كلا العبارتين صحيحتين")
end
-- سيتم تشغيله
if 4 + 2 == 6 and 4 ~= 6 then
print("كلا العبارتين صحيحتين")
endإنشاء قوة تعزيز
قوى التعزيز هي عناصر داخل اللعبة تمنح اللاعبين قدرات خاصة مثل الطيران، أو عدم الظهور، أو السرعة. ستعزز هذه القوة سرعة المشي للاعب في كل مرة يتم لمس القوة. يمكن أن يؤدي تطبيق التعزيزات بشكل مستمر إلى جعل اللاعب يسير بسرعة كبيرة جدًا، لذا سيتم استخدام and للتحكم في الحد الأقصى لسرعة المشي.
إعداد قوة التعزيز
استخدم هذا الكود مع جزء بسيط أو نموذج، مثل بلورة، أو عملة، أو كرة نيون متوهجة.
أنشئ جزءًا جديدًا باسم Powerup وأدخل نصًا برمجيًا باسم WalkSpeedManager.
أعلن عن متغير باسم speedBoost وخصص كائن الوالد للنص البرمجي.
-- يمنح تعزيز سرعة مؤقت عند اللمسlocal speedBoost = script.Parentقم بإعداد دالة باسم onTouch وقم بتوصيلها بحدث Touched لكائن الوالد. ثم اختبر اللعبة وتحقق من عملك.
local speedBoost = script.Parentlocal function onTouch(otherPart)print("شيء ما لمس السرعة المعززة")endspeedBoost.Touched:Connect(onTouch)خاصية WalkSpeed موجودة على كائنات Humanoid. استخدم نفس النمط المستخدم عند إنشاء جزء الفخ وأنشئ شرطًا يتحقق من كائنات Humanoid.
يبحث عن أجزاء Humanoidlocal function onTouch(otherPart)local character = otherPart.Parentlocal humanoid = character:FindFirstChildWhichIsA("Humanoid")if humanoid thenprint("تم العثور على Humanoid")endend
تسريع اللاعبين
سيجعل تعزيز السرعة الشخصيات تسير بشكل أسرع في كل مرة يتم لمس تعزيز السرعة. سيصبح ذلك سريعًا جدًا جدًا. ستضمن الكلمة الرئيسية and أن اللاعبين لا يمكنهم السير بسرعة كبيرة من خلال تمكين تعزيز السرعة فقط إذا كان اللاعب تحت سرعة معينة.
إذا تم العثور على Humanoid، خذ قيمة WalkSpeed الحالية وأضف 10 إليها. اختبر اللعبة، وستصبح شخصيتك أسرع في كل مرة تلمس فيها تعزيز السرعة.
يزيد من WalkSpeed الحاليlocal function onTouch(otherPart)local character = otherPart.Parentlocal humanoid = character:FindFirstChildWhichIsA("Humanoid")if humanoid thenhumanoid.WalkSpeed += 10endendspeedBoost.Touched:Connect(onTouch)في عبارة if، استخدم الكلمة الرئيسية and لإضافة شرط ثانٍ بأن قيمة WalkSpeed الحالية أقل من 50. بعد إضافة التعزيز، ستكون أقصى قيمة لـ WalkSpeed هي 60.
يتحقق مما إذا كانت WalkSpeed الحالية 50 أو أقلif humanoid and humanoid.WalkSpeed <= 50 thenhumanoid.WalkSpeed += 10end
ضبط تعزيز السرعة
يتم استدعاء onTouch في كل مرة يتم لمس تعزيز السرعة. كل خطوة أو ارتداد طفيف يثير حدث Touched ويستدعي الدالة المتصلة. يمكن أن تمنع خاصية الجزء CanTouch حدث Touched من التشغيل. استفد من CanTouch وأوقف تعزيز السرعة لمدة ثانية واحدة في كل مرة يتم تفعيله.
بعد تطبيق التعزيز، قم بتعيين خاصية CanTouch للجزء إلى false. اختبر اللعبة وتأكد من أن التعزيز يتم تطبيقه مرة واحدة فقط.
يعطل تعزيز السرعةlocal speedBoost = script.Parentlocal function onTouch(otherPart)local character = otherPart.Parentlocal humanoid = character:FindFirstChildWhichIsA("Humanoid")if humanoid and humanoid.WalkSpeed <= 50 thenhumanoid.WalkSpeed += 10speedBoost.CanTouch = falseendendspeedBoost.Touched:Connect(onTouch)استخدم task.wait(1) لإيقاف النص البرمجي لمدة ثانية واحدة، ثم قم بتعيين CanTouch إلى true. اختبر اللعبة وتأكد من أنه يمكن إعادة تطبيق تعزيز السرعة بعد ثانية واحدة.
النص البرمجي المكتملlocal speedBoost = script.Parentlocal function onTouch(otherPart)local character = otherPart.Parentlocal humanoid = character:FindFirstChildWhichIsA("Humanoid")if humanoid and humanoid.WalkSpeed <= 50 thenhumanoid.WalkSpeed += 10speedBoost.CanTouch = falsetask.wait(1)speedBoost.CanTouch = trueendendspeedBoost.Touched:Connect(onTouch)العب بالقيم في النص البرمجي المكتمل. يمكن أن تصل WalkSpeed إلى 100. القيمة الافتراضية لـ WalkSpeed هي 16.
ملخص
يمكن استخدام الكلمة الرئيسية and لطلب شروط متعددة قبل تشغيل جزء من الكود، مثل أن تكون القيمة أكبر من 0 وأقل من 100. أو أنه إذا كان هناك Humanoid وسرعته أقل أو تساوي 50.