Un badge è un premio speciale che puoi regalare ai giocatori quando raggiungono un obiettivo nella tua esperienza, come completare un obiettivo difficile o giocare per un certo periodo di tempo. Appena un giocatore riceve un badge, viene visualizzato nella categoria Badge della sua Inventario, reportorio.
Creazione di Badge
Puoi creare fino a 5 badge gratuiti in un periodo di 24 ore (GMT) per ciascuna esperienza che Proprio. Se vuoi crearne di più nel periodo di 24 ore, ogni nuovo badge costa 100 Robux.
Per creare un badge:
Vai alla Dashboard del Creatore .
Individua l'esperienza associata, click the ⋯ in the corner of its Miniatura, and select Crea Badge .
On the create page, click the Carica immagine button and then select/confirm the image you want to use as the badge's Icona. When creating an image to use for a badge, consider the Seguendo:
Usa un modello di 512×512 pixel .
Il processo di caricamento taglia e ritaglia l'immagine del badge in un'Iconacircolare, quindi evita di mettere dettagli importanti al di fuori dei confini circolari.
Completa i seguenti campi:
- Nome — Un titolo per il badge.
- Descrizione — Una descrizione di ciò che il giocatore può fare per guadagnare il badge.
- Il badge è abilitato — Indipendentemente dal fatto che il badge sia abilitato o no quando viene creato. I badge disabilitati non sono mostrati nella sezione Badge della pagina principale dell'esperienza e non possono essere guadagnati dai giocatori.
Fai clic sul pulsante Crea Badge. Il nuovo badge viene visualizzato nella sezione Engagement → Badge della dashboard del creatore. Se il nuovo badge è abilitato, sarà anche mostrato sotto la sezione 2>Badge2> della pagina principale dell'esperienza.
Badge di script
I flussi di lavoro comuni per gli script del badge includono assegnare i badge, controllare se un giocatore ha precedentemente guadagnato un badge nella tua esperienza e ottenere informazioni sul badge .
Individuazione degli ID del badge
L'ID di un badge è il suo identificatore unico. Avrai bisogno di questo ID quando implementerai workflows come assegnare il badge a un Giocatore.
Nella Dashboard del Creatore, fai clic sulla sezione Badge dell'esperienza associata sotto impegno.
Fai clic sul pulsante ⋯ per un badge e seleziona Copia ID risorsa .
Assegnazione dei badge
Puoi assegnare badge ai Giocatoredurante tutta la tua esperienza chiamando il metodo BadgeService:AwardBadge() in un Class.Script server-side Class.BadgeService:GetBadgeInfoAsync()
Il seguente è un esempio di una funzione di sicurezza per l'assegnazione di badge ai giocatori.
local BadgeService = game:GetService("BadgeService")
local function awardBadge(player, badgeId)
-- Ottieni informazioni sul badge
local success, badgeInfo = pcall(BadgeService.GetBadgeInfoAsync, BadgeService, badgeId)
if success then
-- Conferma che il badge può essere assegnato
if badgeInfo.IsEnabled then
-- Award badge
local awarded, errorMessage = pcall(BadgeService.AwardBadge, BadgeService, player.UserId, badgeId)
if not awarded then
warn("Error while awarding badge:", errorMessage)
end
end
else
warn("Error while fetching badge info!")
end
end
Controllo delle badge guadagnate
Il seguente script controlla quando qualsiasi giocatore entra nell'esperienza, poi usa il metodo BadgeService:UserHasBadgeAsync() per verificare se quel giocatore possiede il badge con l'ID corrispondente impostato nella variabile BADGE_ID. Puoi anche verificare la proprietà del badge in lotto usando il metodo 2>Class.
local BadgeService = game:GetService("BadgeService")
local Players = game:GetService("Players")
local BADGE_ID = 00000000 -- Cambia questo per il tuo ID del badge
local function onPlayerAdded(player)
-- Controlla se il giocatore ha il badge
local success, hasBadge = pcall(BadgeService.UserHasBadgeAsync, BadgeService, player.UserId, BADGE_ID)
-- Se si verifica un errore, emettere un avviso e uscire dalla funzione
if not success then
warn("Error while checking if player has badge")
return
end
if hasBadge then
-- Maneggia la proprietà del badge del Giocatorese necessario
end
end
-- Connetti gli eventi "PlayerAdded" alla funzione "onPlayerAdded()"
Players.PlayerAdded:Connect(onPlayerAdded)
Ottenere informazioni sul badge
Per ottenere informazioni su un badge, come la sua descrizione o l'ID dell'asset dell'icona, chiama il metodo Class.BadgeService:GetBadgeInfoAsync() con un ID del badge . Ad esempio:
local BadgeService = game:GetService("BadgeService")local BADGE_ID = 00000000 -- Cambia questo per il tuo ID del badge-- Ottieni informazioni sul badgelocal success, result = pcall(BadgeService.GetBadgeInfoAsync, BadgeService, BADGE_ID)-- Estrai l'informazioneif success thenprint("Badge:", result.Name)print("Enabled:", result.IsEnabled)print("Description:", result.Description)print("Icon:", "rbxassetid://" .. result.IconImageId)elsewarn("Error while fetching badge info:", result)end