Zakoduj tabelę ranking

*Ta zawartość została przetłumaczona przy użyciu narzędzi AI (w wersji beta) i może zawierać błędy. Aby wyświetlić tę stronę w języku angielskim, kliknij tutaj.

W grze gracz będzie miał ważne statystyki, które musi zobaczyć, takie jak przedmioty, które zebrał.Te liczby zostaną wyświetlone za pomocą tabeli ranking. Tabele liderów są wbudowanymi funkcjami Roblox, które muszą być aktywowane i dostosowywane za pomocą skryptu.

Ustaw tabelę ranking

Za każdym razem, gdy gracz zostanie dodany do doświadczenia, musi zostać dodany do tabeli liderów wraz z kodem śledzenia poszczególnych statystyk.

  1. W Explorerze, pod ServerScriptService , utwórz nowy skrypt o nazwie PlayerSetup.W tym skrypcie usuń linię hello world i napisz komentowaćopisowy.

  2. Po komentowaćutwórz niestandardową funkcję o nazwie onPlayerJoin z parametrem o nazwie gracz.


    -- Tworzy tabelę liderów, która pokazuje zmienne gracza
    local function onPlayerJoin(player)
    end
  3. W onPlayerJoin, utwórz zmienną o nazwie leaderstats i pozwól jej utworzyć nową instancję Katalogu .


    local function onPlayerJoin(player)
    local leaderstats = Instance.new("Folder")
    end
  4. Nazwij nową instancję Katalogu, i powiąż ją z graczem.Nazwanie katalogu leaderstats pozwala Roblox Studio wiedzieć, aby stworzyć ranking.


    local function onPlayerJoin(player)
    local leaderstats = Instance.new("Folder")
    leaderstats.Name = "leaderstats"
    leaderstats.Parent = player
    end
  5. Po zakończeniu funkcji połącz OnPlayerJoin z wydarzeniem PlayerAdded.Za każdym razem, gdy gracz dołączy do doświadczenia, każdy gracz otrzyma ranking.


    local Players = game:GetService("Players")
    local function onPlayerJoin(player)
    local leaderstats = Instance.new("Folder")
    leaderstats.Name = "leaderstats"
    leaderstats.Parent = player
    end
    Players.PlayerAdded:Connect(onPlayerJoin)

Śledź statystyki gracza

Teraz, gdy stworzono tabelę liderów, musi pokazać graczowi te liczby:

  • Złoto - Ile pieniędzy ma gracz.
  • Przedmioty - Ile przedmiotów gracz zebrał z świata.
  • Przestrzenie - Najwięcej przedmiotów, które gracz może posiadać jednocześnie.

Każda z tych liczb będzie IntValue, obiekt miejsceholder dla liczby.

Złoto gracza kodowego

Zacznij od kodowania statystyki dla złota.

  1. W OnPlayerJoin , pod leaderstats.Parent = player , wpisz local gold = Instance.new("IntValue") . Tworzy to nową wartość IntValue i przechowuje ją w zmiennej gold.


    local function onPlayerJoin(player)
    local leaderstats = Instance.new("Folder")
    leaderstats.Name = "leaderstats"
    leaderstats.Parent = player
    local gold = Instance.new("IntValue")
    end
  2. Następnie wpisz gold.Name = "Gold". To nadaje IntValue nazwę, dzięki której możesz go używać w innych skryptach. Nazwa zostanie również wyświetlona graczom na ranking.


    local function onPlayerJoin(player)
    local gold = Instance.new("IntValue")
    gold.Name = "Gold"
    end
  3. Na nowej linii wpisz gold.Value = 0. To ustawia początkową wartość dla graczy.


    local function onPlayerJoin(player)
    local gold = Instance.new("IntValue")
    gold.Name = "Gold"
    gold.Value = 0
    end
  4. Typ gold.Parent = leaderstats. To rodzice IntValue dla złota do leaderstats. Jeśli IntValue nie jest powiązany z leaderstats, gracze go nie zobaczą.


    local function onPlayerJoin(player)
    local gold = Instance.new("IntValue")
    gold.Name = "Gold"
    gold.Value = 0
    gold.Parent = leaderstats
    end
  5. Odtwórz swój projekt i zauważ, że tabela liderów pojawia się w prawym górnym rogu.

Wskazówki dotyczące rozwiązywania problemów

Jeśli nie widzisz tabeli ranking, spróbuj obserwuje:

  • Upewnij się, że .Value jest duża litera.
  • Upewnij się, że zmienna dla IntValue jest powiązana z tabelą liderów tak jak gold.Parent = leaderstats.

Przedmioty kodu i przestrzenie

Pamiętaj, że nazwy statystyk mogą być wszystko w oparciu o dokument projektu gry. Innymi słowy, "Items" może zostać zamiast tego "Crystals".

  1. Dodaj pustą linię, aby oddzielić następną statystykę, a następnie stwórz statystykę przedmiotu, ustawiając nową wartość IntValue w ten sam sposób, w jaki uczyniłeś to dla złota.


    local function onPlayerJoin(player)
    gold.Parent = leaderstats
    -- Stwórz statystykę przedmiotów
    local items = Instance.new("IntValue")
    items.Name = "Items"
    items.Value = 0
    items.Parent = leaderstats
    end
  2. Utwórz nową statystykę dla przestrzeni torby gracza.Ustaw spaces.Value na 2, aby gracze rozpoczęli doświadczenie, będąc w stanie trzymać tylko dwa przedmioty na raz, zachęcając ich do kupienia nowej torby tak szybko, jak to możliwe.


    local function onPlayerJoin(player)
    items.Parent = leaderstats
    -- Stwórz statystykę Spacji
    local spaces = Instance.new("IntValue")
    spaces.Name = "Spaces"
    spaces.Value = 2
    spaces.Parent = leaderstats
    end
  3. Przetestuj projekt. Gracze powinni mieć tabelę wyników pokazującą złoto, przedmioty i przestrzenie.

Jeśli tabela liderów nie pojawia się, spróbuj sprawdzić poniższe.

  • Jeśli nie widzisz liczby na ranking, sprawdź, czy każda wartość IntValue jest powiązana z statystykami lidera.
  • Upewnij się, że każda wartość IntValue jest wymowna dokładnie tak, jak pokazano
  • Sprawdź, czy wydarzenie PlayerAdded znajduje się na dole skryptu

Zakończ skrypt PlayerSetup

Zakończona wersja skryptu może być odwołana poniżej.


local Players = game:GetService("Players")
-- Tworzy tabelę liderów, która pokazuje zmienne gracza
local function onPlayerJoin(player)
local leaderstats = Instance.new("Folder")
leaderstats.Name = "leaderstats"
leaderstats.Parent = player
local gold = Instance.new("IntValue")
gold.Name = "Gold"
gold.Value = 0
gold.Parent = leaderstats
local items = Instance.new("IntValue")
items.Name = "Items"
items.Value = 0
items.Parent = leaderstats
local spaces = Instance.new("IntValue")
spaces.Name = "Spaces"
spaces.Value = 2
spaces.Parent = leaderstats
end
-- Biegnij na PlayerJoin, gdy wydarzenie PlayerAdded się uruchomi
Players.PlayerAdded:Connect(onPlayerJoin)