وسادة القفز
جزء من قسم برمجة ألعاب Roblox في رحلة Lua على Coddy. الدرس 18 من 24.
تحدد JumpHeight مدى ارتفاع قفز الشخصية، بوحدة الأستد. القيمة الافتراضية هي 7.2، أي نحو ارتفاع شخصية.
تستخدم الألعاب الأقدم JumpPower بدلًا من ذلك: السرعة التي تغادر بها الشخصية الأرض. يتجاهل مكان Roblox جديد JumpPower ما لم يتم تشغيل UseJumpPower (في Studio: StarterPlayer، CharacterUseJumpPower)، لذا فهذا هو السبب عندما لا يفعل سكربت JumpPower من درس تعليمي شيئًا. يُعد JumpHeight الخيار الأبسط: فالرقم هو الارتفاع.
يجب أن يلغي تعزيز القوة الذي يستمر لبعض الوقت تأثيره لاحقًا. تشغّل task.delay(seconds, function) الدالة بعد مرور ذلك العدد من الثواني، من دون إيقاف بقية التعليمات البرمجية:
humanoid.WalkSpeed = 30
task.delay(10, function()
humanoid.WalkSpeed = 16
end)
print("Boost on")تُطبع Boost on فورًا؛ وتعود السرعة إلى 16 بعد عشر ثوانٍ.
لا تغيّر المنصة سوى خاصية واحدة. وما يزال على اللاعب الضغط على Space للقفز.
التحدي
متوسطالحافة الصفراء ارتفاعها 14 وحدة قياس، أي نحو ضعف ارتفاع القفزة العادية. المنصة الزرقاء أمامها هي منصة القفز، وهذا النص البرمجي بداخلها.
عندما تلمس شخصيةٌ المنصة:
- اضبط
JumpHeightلها على20 - بعد 5 ثوانٍ، أعدها إلى
7.2
اضغط على Play، وقف على المنصة، واركض نحو الحافة ثم اقفز. بعد ذلك اضغط على Check.
جرّب بنفسك
local pad = script.Parent
pad.Touched:Connect(function(hit)
local humanoid = hit.Parent:FindFirstChild("Humanoid")
if humanoid then
-- 1. اجعل هذا اللاعب يقفز بارتفاع 20 وحدة studs
-- 2. بعد 5 ثوانٍ، أعد الارتفاع إلى القيمة الطبيعية 7.2
end
end)
يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.
جميع دروس برمجة ألعاب Roblox
تدرّب بنفسك: مترجم Lua عبر الإنترنت