Menu
CoddyTech

Muat Peta

Pelajaran 5 dari 18 dalam kursus Game Roblox: Bertahan dari Bencana di Coddy.

Ronde berlangsung di sebuah peta. Peta-peta disimpan di ServerStorage, sebuah layanan yang isinya tidak berada di dunia: tidak ada yang bisa melihat atau menyentuhnya. Buka ServerStorage.Maps di panel Explorer, lalu kamu akan menemukan Island.

Sebuah ronde menempatkan salinan peta di workspace dengan Clone, lalu menghapusnya setelah ronde selesai dengan Destroy. Peta aslinya tetap berada di ServerStorage, tanpa diubah, dan siap digunakan untuk ronde berikutnya:

local map = ServerStorage.Maps.Island:Clone()
map.Name = "Map"
map.Parent = workspace

-- ... ronde berlangsung ...

map:Destroy()

Salinan mempertahankan posisi peta asli, jadi pulau itu muncul di tempat pembuatannya, jauh dari lobi. Memindahkan peta asli alih-alih menyalinnya hanya akan berhasil sekali: setelah Destroy pertama, tidak akan ada lagi Island untuk ronde kedua.

challenge icon

Tantangan

Sedang

Buat setiap ronde memuat Island:

  1. Di bagian atas, ambil ServerStorage dengan game:GetService.
  2. Saat ronde dimulai (setelah hitung mundur di lobi), clone ServerStorage.Maps.Island, beri nama salinannya Map, lalu jadikan salinan itu child dari workspace.
  3. Saat hitung mundur ronde berakhir, hancurkan map.

Tekan Mainkan: saat ronde dimulai, pulau muncul jauh di depan lobi. Lalu tekan Periksa.

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

-- Perulangan ronde
while true do
	for seconds = Settings.Intermission, 1, -1 do
		setStatus("Intermission: " .. seconds)
		task.wait(1)
	end

	for seconds = Settings.RoundLength, 1, -1 do
		setStatus("Time left: " .. seconds)
		task.wait(1)
	end
end
quiz iconUji dirimu

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