드로퍼
Coddy의 Roblox 게임: 공장 타이쿤 코스 레슨. 18개 중 2번째.
돈은 광석에서 시작됩니다. 컨베이어 위의 회색 상자 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)새 Part는 고정하지 않으면 고정되지 않은 상태이므로, 광석은 저절로 드롭퍼 밖으로 떨어집니다.
챌린지
쉬움드로퍼에서 광석이 떨어지게 만드세요:
- 상단 근처에 다음을 추가하세요:
local tycoon = workspace.Tycoon. dropOre(dropper)를 작성하세요. 크기가 1×1×1인 Part를 만들고 이름을Ore로 지정한 뒤, 회색(Color3.fromRGB(150, 150, 160))으로 설정하세요. 드로퍼보다 2.5 스터드 아래에 배치하고,Value속성을Settings.OreValue로 설정한 다음 workspace를 부모로 지정하세요.startDropper(dropper)를 작성하세요.task.spawn안에서 드로퍼가 workspace에 있는 동안 광석을 떨어뜨리고Settings.DropInterval초 동안 기다리세요.startDropper(tycoon.Dropper)를 호출하세요.
플레이를 누르세요. 드로퍼 아래에 광석이 쌓입니다. 그런 다음 확인을 누르세요.
직접 해보기
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)
이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.