Perulangan Ronde
Pelajaran 4 dari 18 dalam kursus Game Roblox: Bertahan dari Bencana di Coddy.
Game ronde tidak pernah berakhir: lobi, ronde, lobi, ronde. Itu adalah perulangan while dengan kondisi yang selalu benar:
while true do
-- hitung mundur di lobi
-- ronde
endSemua yang ada di dalamnya dijalankan lagi dari awal setiap kali mencapai end. Karena perulangan while true tidak pernah selesai, letakkan perulangan itu di bagian paling bawah skrip: kode setelahnya tidak akan pernah dijalankan. Setiap putaran juga harus menunggu di suatu tempat, jika tidak, perulangan itu tidak akan memberi giliran kepada bagian lain dari game dan Roblox akan menghentikan skrip.
Ronde juga menghitung mundur dari Settings.RoundLength, agar pemain tahu berapa lama mereka harus bertahan.
Tantangan
MudahUbah hitung mundur menjadi perulangan game:
- Bungkus dengan
while true do ... end. - Ganti
Get ready!dengan babak: hitung mundur dariSettings.RoundLengthhingga 1, dengan jeda satu detik, tampilkanTime left: 15,Time left: 14, dan seterusnya.
Tekan Play dan amati satu babak berlangsung lalu hitung mundur lobi dimulai lagi, kemudian tekan Check.
Coba sendiri
local Players = game:GetService("Players")
local Settings = require(game.ReplicatedStorage.Settings)
print("Rounds last " .. Settings.RoundLength .. " seconds")
-- Setiap pemain mendapat Wins di papan peringkat
Players.PlayerAdded:Connect(function(player)
local leaderstats = Instance.new("Folder")
leaderstats.Name = "leaderstats"
leaderstats.Parent = player
local wins = Instance.new("IntValue")
wins.Name = "Wins"
wins.Parent = leaderstats
end)
-- Papan status di lobi
local gui = Instance.new("SurfaceGui")
gui.Parent = workspace.StatusBoard
local status = Instance.new("TextLabel")
status.Name = "Status"
status.Size = UDim2.fromScale(1, 1)
status.BackgroundColor3 = Color3.fromRGB(25, 25, 35)
status.TextColor3 = Color3.fromRGB(255, 255, 255)
status.TextScaled = true
status.Text = "Welcome to Disaster Survival!"
status.Parent = gui
local function setStatus(text)
status.Text = text
end
-- Hitung mundur
for seconds = Settings.Intermission, 1, -1 do
setStatus("Intermission: " .. seconds)
task.wait(1)
end
setStatus("Get ready!")
Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.
Semua pelajaran di Game Roblox: Bertahan dari Bencana
Latihan sendiri: Playground Roblox