Un distintivo è un premio speciale che puoi regalare ai giocatori quando raggiungono un obiettivo all'interno del tuo gioco, come completare un obiettivo difficile o giocare per un certo periodo di tempo. Non appena un giocatore riceve un distintivo, questo viene visualizzato all'interno della categoria Distintivi del suo inventario.

Crea distintivi
Puoi creare fino a 5 distintivi gratuitamente in un periodo di 24 ore (GMT) per ogni gioco che possiedi. Se desideri crearne di più durante il periodo di 24 ore, ogni distintivo aggiuntivo costa 100 Robux.
Per creare un distintivo:
Naviga al Pannello di Controllo dei Creatori.
Passa il mouse sopra la miniatura di un gioco, fai clic sul pulsante ⋯ e seleziona Crea Distintivo.

Nella pagina di creazione, fai clic sul pulsante Carica Immagine e poi seleziona/conferma l'immagine che desideri utilizzare come icona del distintivo. Quando crei un'immagine da utilizzare per un distintivo, considera i seguenti punti:
Usa un modello di 512×512 pixel.
Il processo di caricamento ritaglia e adatta l'immagine del distintivo in un'icona circolare, quindi evita di posizionare dettagli importanti al di fuori dei confini circolari.


Completa i seguenti campi:
- Nome — Un titolo per il distintivo.
- Descrizione — Una descrizione di cosa può fare il giocatore per guadagnare il distintivo.
- Distintivo abilitato — Se il distintivo sarà abilitato al momento della creazione. I distintivi disabilitati non vengono mostrati nella sezione Distintivi della pagina principale del gioco e non possono essere guadagnati dai giocatori.
Fai clic sul pulsante Crea Distintivo. Il nuovo distintivo viene visualizzato nella sezione Coinvolgimento ⟩ Distintivi del Pannello di Controllo dei Creatori. Se il nuovo distintivo è abilitato, verrà mostrato anche nella sezione Distintivi della pagina principale del gioco.

Distintivo sulla pagina principale del gioco
Riordina distintivi
Quando un distintivo viene creato per la prima volta, viene posto alla fine dell'elenco dei distintivi. Puoi riordinare fino a 50 distintivi alla volta utilizzando l'interfaccia di trascinamento della selezione.
Per riordinare i distintivi:
Naviga al gioco associato.
Nel pannello laterale sotto l'intestazione Coinvolgimento, vai alla pagina Distintivi.
Seleziona Riordina per andare alla pagina di riordino.

Nella pagina di riordino, trascina e rilascia i distintivi nel loro ordine preferito.

Seleziona Salva per salvare questo ordine. L'ordine specificato dovrebbe ora apparire sulla pagina dei dettagli del gioco.
Script distintivi
I flussi di lavoro comuni per la script dei distintivi includono assegnare distintivi, controllare se un giocatore ha precedentemente guadagnato un distintivo nel tuo gioco e ottenere informazioni sul distintivo.
Individua gli ID dei distintivi
L'ID di un distintivo è il suo identificatore unico. Avrai bisogno di questo ID quando implementi flussi di lavoro come assegnare il distintivo a un giocatore.
Sul Pannello di Controllo dei Creatori, naviga alla sezione Distintivi del gioco associato sotto Coinvolgimento.
Passa il mouse sopra la miniatura di un distintivo, fai clic sul pulsante ⋯ e seleziona Copia ID del Contenuto dal menu contestuale.

Assegna distintivi
Puoi assegnare distintivi ai giocatori durante il tuo gioco chiamando il metodo BadgeService:AwardBadgeAsync() in uno Script del lato server. BadgeService:GetBadgeInfoAsync() restituisce le proprietà del distintivo, incluso IsEnabled che conferma se il distintivo può essere assegnato a un giocatore. Puoi abilitare o disabilitare un distintivo dal modulo Configura Distintivo sul Pannello di Controllo dei Creatori.
Di seguito è riportato un esempio di una funzione sicura per assegnare distintivi ai giocatori.
local BadgeService = game:GetService("BadgeService")
local function awardBadge(player, badgeId)
-- Recupera le informazioni sul distintivo
local success, badgeInfo = pcall(function()
return BadgeService:GetBadgeInfoAsync(badgeId)
end)
if success then
-- Conferma che il distintivo può essere assegnato
if badgeInfo.IsEnabled then
-- Assegna il distintivo
local awarded, errorMessage = pcall(BadgeService.AwardBadgeAsync, BadgeService, player.UserId, badgeId)
if not awarded then
warn("Errore durante l'assegnazione del distintivo:", errorMessage)
end
end
else
warn("Errore durante il recupero delle informazioni sul distintivo: " .. badgeInfo)
end
end
Controlla i distintivi guadagnati
Il seguente script controlla quando un qualsiasi giocatore entra nel gioco, quindi utilizza il metodo BadgeService:UserHasBadgeAsync() per verificare se quel giocatore possiede il distintivo con l'ID corrispondente impostato nella variabile BADGE_ID. Puoi anche verificare la proprietà del distintivo in batch utilizzando il metodo BadgeService:CheckUserBadgesAsync().
local BadgeService = game:GetService("BadgeService")
local Players = game:GetService("Players")
local BADGE_ID = 00000000 -- Cambia questo con il tuo ID distintivo
local function onPlayerAdded(player)
-- Controlla se il giocatore ha il distintivo
local success, hasBadge = pcall(BadgeService.UserHasBadgeAsync, BadgeService, player.UserId, BADGE_ID)
-- Se c'è un errore, emette un avviso e esce dalla funzione
if not success then
warn("Errore durante il controllo se il giocatore ha il distintivo")
return
end
if hasBadge then
-- Gestisci la proprietà del distintivo da parte del giocatore come necessario
end
end
-- Collega gli eventi "PlayerAdded" alla funzione "onPlayerAdded()"
Players.PlayerAdded:Connect(onPlayerAdded)
Ottieni informazioni sul distintivo
Per ottenere informazioni su un distintivo, come la sua descrizione o l'ID del contenuto dell'icona, chiama il metodo BadgeService:GetBadgeInfoAsync() con un ID distintivo. Ad esempio:
local BadgeService = game:GetService("BadgeService")local BADGE_ID = 00000000 -- Cambia questo con il tuo ID distintivo-- Recupera le informazioni sul distintivolocal success, result = pcall(BadgeService.GetBadgeInfoAsync, BadgeService, BADGE_ID)-- Stampa le informazioniif success thenprint("Distintivo:", result.Name)print("Abilitato:", result.IsEnabled)print("Descrizione:", result.Description)print("Icona:", "rbxassetid://" .. result.IconImageId)elsewarn("Errore durante il recupero delle informazioni sul distintivo:", result)end