Menu
CoddyTech

مصنع العملات

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

يحتوي الجدول على قائمة من القيم داخل أقواس معقوفة، ويمكن لحلقة for المرور على كل قيمة منها:

local heights = { 4, 8, 12 }
for _, h in heights do
	print(h)
end

يطبع هذا 4 و8 و12. في كل دورة، تحتوي h على القيمة التالية. أما _ فهو موضع القيمة في القائمة، ولا تحتاج هذه الحلقة إليه.

اجمع بين جدول ودالة لتحصل على مُنشئ: استدعاء واحد لكل قيمة.

local function makeTree(x)
	-- أنشئ شجرة عند x
end
for _, x in { -10, 0, 10 } do
	makeTree(x)
end

تتيح CanCollide = false للاعبين المرور عبر الجزء؛ فهو يظل موجودًا ومرئيًا.

تجمع Folder الأجزاء، مثل workspace.Coins. يؤدي تعيين Parent للجزء إلى مجلد إلى وضعه في العالم داخل ذلك المجلد.

challenge icon

التحدي

سهل

أكمل مصنع العملات: تبني makeCoin(z) عملة ذهبية واحدة، وتستدعيها حلقة لكل رقم في spots.

  1. في makeCoin، أضف coin.CanCollide = false وcoin.Anchored = true.
  2. أضف coin.Position = Vector3.new(0, 3, z)، ثم coin.Parent = workspace.Coins.
  3. أسفل الدالة: for _, z in spots do makeCoin(z) end.

اضغط «العب»: ستطفو خمس عملات ذهبية في صف. ثم اضغط «تحقق».

جرّب بنفسك

local spots = { 12, 6, 0, -6, -12 }

local function makeCoin(z)
	local coin = Instance.new("Part")
	coin.Name = "Coin"
	coin.Shape = Enum.PartType.Ball
	coin.Size = Vector3.new(2, 2, 2)
	coin.Color = Color3.fromRGB(255, 200, 40)
	-- 1. قابل للمرور عبره ومثبّت
	-- 2. ضعه عند الموضع (0, 3, z)، ثم أضفه إلى workspace.Coins
end

-- 3. استدعِ makeCoin لكل موضع

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

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