Tablica statusu
Lekcja 2 z 18 w kursie Gra Roblox: Przetrwanie w katastrofach w Coddy.
Gracze w lobby muszą wiedzieć, co będzie dalej. Pokaże im to duża, ciemna część workspace.StatusBoard.
Tekst na części to obiekt SurfaceGui zawierający obiekty GUI, takie jak TextLabel. Obiekt SurfaceGui umieszczony wewnątrz części rysuje na jednej jej ścianie — domyślnie na ścianie Front, chyba że zmienisz jego Face. Tablica jest obrócona tak, aby jej ściana Front była skierowana w stronę lobby.
local gui = Instance.new("SurfaceGui")
gui.Parent = workspace.Sign
local label = Instance.new("TextLabel")
label.Size = UDim2.fromScale(1, 1)
label.Text = "Hello!"
label.TextScaled = true
label.Parent = guiRozmiar GUI to UDim2: ułamek rozmiaru elementu nadrzędnego (Scale) plus piksele (Offset) na każdej osi. UDim2.fromScale(1, 1) oznacza cały element nadrzędny, więc etykieta pokrywa tablicę. TextScaled sprawia, że tekst jest tak duży, jak to możliwe.
Wyzwanie
ŁatwyPoniżej kodu PlayerAdded umieść etykietę statusu na tablicy:
- SurfaceGui z obiektem nadrzędnym ustawionym na
workspace.StatusBoard. - Znajdujący się w nim TextLabel o nazwie
Status, o rozmiarze tablicy (UDim2.fromScale(1, 1)). - Ciemne tło (
Color3.fromRGB(25, 25, 35)), biały tekst (Color3.fromRGB(255, 255, 255)) z włączonymTextScaled, wyświetlający tekstWelcome to Disaster Survival!
Naciśnij Play i spójrz na tablicę, a następnie naciśnij Check.
Spróbuj swoich sił
local Players = game:GetService("Players")
local Settings = require(game.ReplicatedStorage.Settings)
print("Rounds last " .. Settings.RoundLength .. " seconds")
-- Każdy gracz otrzymuje Wins w tabeli wyników
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)
Ta lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.