Menu
CoddyTech

מתקן ההפלה

שיעור 2 מתוך 18 בקורס משחק Roblox: טייקון מפעל של Coddy.

כסף מתחיל בעפרה. התיבה האפורה שמעל למסוע, workspace.Tycoon.Dropper, מפילה חלק קטן בכל שנייה. כל עפרה נושאת את ערכה בתור מאפיין, ערך בעל שם שאפשר לשמור בכל מופע:

ore:SetAttribute("Value", 10)
print(ore:GetAttribute("Value")) --> 10

ההפלה מתרחשת לנצח, ולכן זו לולאה. לולאה שממתינה הייתה מעכבת את המשך הסקריפט, לכן הלולאה של המתקן להפלת העפרות פועלת במקביל אליו, בתוך task.spawn, ונעצרת אם המתקן אי פעם יוצא מהעולם:

task.spawn(function()
	while dropper:IsDescendantOf(workspace) do
		dropOre(dropper)
		task.wait(Settings.DropInterval)
	end
end)

חלק חדש אינו מעוגן אלא אם מעגנים אותו, ולכן העפרה נופלת מהמתקן בכוחות עצמה.

challenge icon

אתגר

קל

גרום למתקן להפיל עפרה:

  1. קרוב לחלק העליון: local tycoon = workspace.Tycoon.
  2. כתוב dropOre(dropper): חלק (Part) בגודל 1 על 1 על 1 בשם Ore, בצבע אפור (Color3.fromRGB(150, 150, 160)), במרחק 2.5 studs מתחת למתקן, עם מאפיין Value שמוגדר ל-Settings.OreValue, כשההורה שלו הוא סביבת העבודה (workspace).
  3. כתוב startDropper(dropper): בתוך task.spawn, כל עוד המתקן נמצא בסביבת העבודה, הפלת עפרה והמתנה למשך Settings.DropInterval שניות.
  4. קרא ל-startDropper(tycoon.Dropper).

לחץ על Play: העפרות נערמות מתחת למתקן. לאחר מכן לחץ על Check.

נסו בעצמכם

local Players = game:GetService("Players")
local Settings = require(game.ReplicatedStorage.Settings)

print("Ore is worth " .. Settings.OreValue .. " Cash")

-- כל שחקן מקבל Cash בטבלת המובילים
Players.PlayerAdded:Connect(function(player)
	local leaderstats = Instance.new("Folder")
	leaderstats.Name = "leaderstats"
	leaderstats.Parent = player

	local cash = Instance.new("IntValue")
	cash.Name = "Cash"
	cash.Parent = leaderstats
end)
quiz iconבחנו את עצמכם

השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.

כל השיעורים ביחידה משחק Roblox: טייקון מפעל