Codice la classifica

*Questo contenuto è tradotto usando AI (Beta) e potrebbe contenere errori. Per visualizzare questa pagina in inglese, clicca qui.

In gioco, il giocatore avrà importanti statistiche di cui hanno bisogno di vedere come gli oggetti che hanno raccolto. Questi numeri saranno visualizzati utilizzando una Classifica. Le classifiche sono funzionalità di Roblox che richiedono uno script per essere attivate e personalizzate.

Configurazione della classifica

Ogni volta che un giocatore viene aggiunto all'esperienza, dovrà essere aggiunto alla classifica insieme al codice per tracciare le statistiche individuali.

  1. Nell'Explorer, sotto ServerScriptService , crea uno script nuovo chiamato PlayerSetup. In that script, elimina la linea di saluto e scrivi un Commentaredescrittivo.

  2. Dopo il Commentare, crea una funzione personalizzata chiamata onPlayerJoin con un parametro chiamato Giocatore.


    -- Crea una classifica che mostra le variabili del giocatore
    local function onPlayerJoin(player)
    end
  3. In onPlayerJoin, crea una variabile chiamata leaderstats e fai in modo che crei una nuova istanza Folder .


    local function onPlayerJoin(player)
    local leaderstats = Instance.new("Folder")
    end
  4. Nome la nuova cartella istanza leaderstats , e affidarla al Giocatore. Nome della cartella leaderstats , Roblox Studio Studio sa di creare una Classifica.


    local function onPlayerJoin(player)
    local leaderstats = Instance.new("Folder")
    leaderstats.Name = "leaderstats"
    leaderstats.Parent = player
    end
  5. Dopo la fine della funzione, connect OnPlayerJoin all'evento PlayerAdded. Quando un giocatore si unisce all'esperienza, ogni giocatore riceverà la Classifica.


    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)

Tracciamento delle statistiche del giocatore

Ora che una classifica è stata creata, deve mostrare al giocatore questi numeri:

  • Oro - Quanto denaro ha il giocatore.
  • Oggetti - Quanti oggetti il giocatore ha raccolto dal Mondo.
  • Spaces - Il maggior numero di oggetti che un giocatore può contenere in un momento.

Ognuno di questi numeri sarà un IntValue, un oggetto placeholder per un numero.

Codice del giocatore d'oro

Inizia con il codice di una statistica per l'oro.

  1. In OnPlayerJoin , sotto leaderstats.Parent = player , tipo local gold = Instance.new("IntValue") . Questo crea un nuovo IntValue e lo memorizza nella variabile gold.


    local function onPlayerJoin(player)
    local leaderstats = Instance.new("Folder")
    leaderstats.Name = "leaderstats"
    leaderstats.Parent = player
    local gold = Instance.new("IntValue")
    end
  2. Successivamente, digita gold.Name = "Gold" . Questo dà all'IntValue un nome in modo che tu possa usarlo in altri script. Il nome verrà anche mostrato ai giocatori nella Classifica.


    local function onPlayerJoin(player)
    local gold = Instance.new("IntValue")
    gold.Name = "Gold"
    end
  3. Su una nuova linea, scrivi gold.Value = 0 . Questo imposta il valore di partenza per i giocatori.


    local function onPlayerJoin(player)
    local gold = Instance.new("IntValue")
    gold.Name = "Gold"
    gold.Value = 0
    end
  4. Type gold.Parent = leaderstats . This parents the IntValue for gold to leaderstats. If the IntValue is not parented to leaderstats, players won't see it.


    local function onPlayerJoin(player)
    local gold = Instance.new("IntValue")
    gold.Name = "Gold"
    gold.Value = 0
    gold.Parent = leaderstats
    end
  5. Gioca il tuo progetto e nota che una classifica appare nella parte superiore destra.

Risolvere i problemi

Se non vedi la Classifica, prova il Seguendo:

  • Assicurati che .Value sia in grassetto.
  • Assicurati che la variabile per IntValue sia parented a leaderboard come gold.Parent = leaderstats .

Codice oggetti e spazi

Ricorda che i nomi delle statistiche possono essere qualsiasi cosa basata sul documento di progettazione del gioco. In altre parole, "Items" può essere "Crystals" invece.

  1. Aggiungi una linea vuota per separare la prossima statistica, quindi crea la statistica dell'elemento impostando un nuovo IntValue in modo da fare esattamente come hai fatto per l'oro.


    local function onPlayerJoin(player)
    gold.Parent = leaderstats
    -- Crea la stat dei pulsanti
    local items = Instance.new("IntValue")
    items.Name = "Items"
    items.Value = 0
    items.Parent = leaderstats
    end
  2. Crea una nuova statistica per le aree della borsa del Giocatore. Imposta spaces.Value su 2 in modo che i giocatori inizino l'esperienza in cui potranno tenere solo due oggetti alla volta, incoraggiandoli ad acquistare una nuova borsa non appena potranno.


    local function onPlayerJoin(player)
    items.Parent = leaderstats
    -- Crea la stat Spaces
    local spaces = Instance.new("IntValue")
    spaces.Name = "Spaces"
    spaces.Value = 2
    spaces.Parent = leaderstats
    end
  3. Prova il progetto. I giocatori dovrebbero avere una classifica che mostra oro, oggetti e spazi.

Se la classifica non appare, controlla i seguenti elementi.

  • Se non riesci a vedere il numero nella Classifica, controlla che ogni IntValue sia parented a leaderstats.
  • Assicurati che ogni IntValue sia scritto esattamente come mostrato
  • Assicurati che l'evento PlayerAdded sia alla fine dello script

Completa lo script di PlayerSetup

Una versione finita dello script può essere riferita qui sotto.


local Players = game:GetService("Players")
-- Crea una classifica che mostra le variabili del giocatore
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
-- Esegui onPlayerJoin quando si attiva l'evento PlayerAdded
Players.PlayerAdded:Connect(onPlayerJoin)