수집기
Coddy의 Roblox 게임: 공장 타이쿤 코스 레슨. 18개 중 4번째.
벨트 끝에 있는 빛나는 초록색 블록이 수집기입니다. 광석이 여기에 닿으면 광석은 현금으로 바뀝니다. 수집기는 광석의 Value를 읽고, 광석을 파괴한 다음 대금을 지급합니다.
collector.Touched:Connect(function(hit)
if hit.Name == "Ore" then
local value = hit:GetAttribute("Value")
hit:Destroy()
-- value를 지급
end
end)먼저 이름을 확인하세요. 플레이어와 다른 것들도 수집기에 닿을 수 있습니다. 광석을 파괴하기 전에 값을 읽으세요. 지금은 수집기가 게임에 있는 모든 플레이어에게 대금을 지급합니다. 다음 장에서는 공장 소유자만 대금을 받도록 하겠습니다.
챌린지
쉬움tycoon.Collector.Touched를 연결하세요. 접촉한 파트의 이름이 Ore이면 Value 속성을 읽고, 해당 파트를 제거한 다음 모든 플레이어의 Cash에 값을 더하세요.
Play를 누르고 Cash가 늘어나는 것을 확인한 다음 Check를 누르세요.
직접 해보기
local Players = game:GetService("Players")
local Settings = require(game.ReplicatedStorage.Settings)
local tycoon = workspace.Tycoon
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)
-- Ore: Cash 가치가 있는 작은 부품으로, 드로퍼 아래에 떨어집니다
local function dropOre(dropper)
local ore = Instance.new("Part")
ore.Name = "Ore"
ore.Size = Vector3.new(1, 1, 1)
ore.Color = Color3.fromRGB(150, 150, 160)
ore.Position = dropper.Position - Vector3.new(0, 2.5, 0)
ore:SetAttribute("Value", Settings.OreValue)
ore.Parent = workspace
end
local function startDropper(dropper)
task.spawn(function()
while dropper:IsDescendantOf(workspace) do
dropOre(dropper)
task.wait(Settings.DropInterval)
end
end)
end
startDropper(tycoon.Dropper)
-- 컨베이어는 그 위에 놓인 모든 것을 운반합니다
tycoon.Conveyor.AssemblyLinearVelocity = Vector3.new(Settings.BeltSpeed, 0, 0)
이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.