Menu
CoddyTech

أول لعبة Obby لك

جزء من قسم برمجة ألعاب Roblox في رحلة Lua على Coddy. الدرس 24 من 24.

obby (مسار عقبات) هو لعبة Roblox الكلاسيكية الأولى: انتقل من البداية إلى النهاية دون لمس أي شيء قاتل. هذه اللعبة تطفو في السماء:

  • Start: نقطة الظهور
  • LavaFloor: منصة رمادية عريضة. شريطا الحمم البركانية عليها موجودان في مجلد Lava داخل مساحة العمل.
  • Checkpoint: موقع SpawnLocation في منتصف الطريق
  • Path: ممر ضيق
  • Finish: المنصة الذهبية

يشغّل سكربت واحد في ServerScriptService اللعبة بأكملها، مستخدمًا كل ما تعلمته في هذه الدورة. هناك تفصيل واحد جديد:

عند وجود اثنين من SpawnLocations (البداية ونقطة التفتيش)، تعيد LoadCharacterAsync إحياء الفائز في RespawnLocation الخاص به، لذا وجّهه مجددًا إلى البداية قبل إرساله إليها.

challenge icon

التحدي

صعب

اجعل لعبة العوائق بأكملها تعمل باستخدام نص برمجي واحد:

  1. يحصل كل لاعب على leaderstats مع IntValue باسم Wins بقيمة 0، ويكون RespawnLocation الخاص به هو workspace.Start.
  2. كل جزء في workspace.Lava يقضي على من يلمسه.
  3. يؤدي لمس workspace.Checkpoint إلى جعله نقطة إعادة ظهور اللاعب.
  4. يضيف لمس workspace.Finish مقدار 1 بالضبط إلى Wins، ويضبط RespawnLocation الخاص باللاعب على workspace.Start ويرسله إلى هناك باستخدام LoadCharacterAsync(). وعند إنهاء اللعبة مرة أخرى لاحقًا، تُضاف مرة فوز أخرى.

اضغط على تشغيل واجتز لعبة العوائق، ثم اضغط على تحقّق. يجتازها لاعب الاختبار مرتين.

جرّب بنفسك

local Players = game:GetService("Players")

-- 1. يحصل كل لاعب على leaderstats بقيمة Wins = 0، ويبدأ من نقطة البداية
Players.PlayerAdded:Connect(function(player)

end)

-- 2. كل جزء في workspace.Lava يقتل اللاعب

-- 3. تصبح نقطة الحفظ نقطة إعادة ظهور اللاعب

-- 4. خط النهاية: +1 فوز، ثم العودة إلى نقطة البداية
quiz iconاختبر نفسك

يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.

جميع دروس برمجة ألعاب Roblox

تدرّب بنفسك: مترجم Lua عبر الإنترنت