Menu
CoddyTech
flag Ar iconالعربيةdown icon

باب العملات

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

يمكن لـ if أن يفعل أكثر من التحقق من nil. يمكنه مقارنة الأعداد، ويُنفَّذ جزء else عندما تكون المقارنة خاطئة:

local score = player.leaderstats.Score.Value
if score >= 10 then
	print("You win!")
else
	print("Keep going")
end

عوامل المقارنة هي == (يساوي)، و~= (لا يساوي)، و<، و>، و<=، و>=. لاحظ == المزدوجة: إشارة = واحدة تُسنِد قيمة إلى متغير، ولا تُجري مقارنة.

تعني >= 3 «3 أو أكثر»؛ أما > 3 فتعني «أكثر من 3»، لذا لن تجتاز القيمة 3 بالضبط الشرط.

challenge icon

التحدي

متوسط

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

  • إذا كان لدى اللاعب 3 عملات أو أكثر، فافتح الباب: CanCollide false وTransparency 0.5.
  • وإلا، فاطبع بالضبط You need 3 coins.

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

جرّب بنفسك

local Players = game:GetService("Players")
local door = script.Parent
local pad = workspace.DoorPad

pad.Touched:Connect(function(hit)
	local player = Players:GetPlayerFromCharacter(hit.Parent)
	if player then
		local coins = player.leaderstats.Coins.Value
		-- 3 عملات أو أكثر: افتح الباب
		-- وإلا: اطبع "You need 3 coins"
	end
end)
quiz iconاختبر نفسك

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

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

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