Barra Emote

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

Le emote sono un componente fondamentale di qualsiasi esperienza sociale. Il EmoteBar modulo per sviluppatori mira a fornire ai giocatori un modo accessibile e personalizzabile per facilitare interazioni sociali significative.

Utilizzo del modulo

Installazione

Per utilizzare il modulo EmoteBar in un'esperienza:

  1. Dal menu Finestra di Studio o dalla barra degli strumenti della scheda Home, apri il Toolbox e seleziona la scheda Creator Store.

  2. Assicurati che il filtro Modelli sia selezionato, quindi fai clic sul pulsante Vedi Tutti per Categorie.

  3. Trova e fai clic sulla tile Pacchetti.

  4. Trova il modulo Emote Bar e fai clic su di esso, oppure trascinalo nella vista 3D.

  5. Nella finestra Explorer, sposta l'intero modello EmoteBar in ReplicatedStorage. Una volta avviata l'esperienza, il modulo inizierà a funzionare.

Configurazione

Il modulo è preconfigurato con 7 emote e può essere facilmente personalizzato con le tue emote e opzioni di visualizzazione. Inoltre, se il giocatore possiede emote di eventi Roblox precedenti come Lil Nas X, Royal Blood o Twenty One Pilots, quelle emote verranno automaticamente aggiunte all'elenco delle emote disponibili.

  1. In ServerScriptService, crea un nuovo Script e rinominalo ConfigureEmotes.

  2. Incolla il seguente codice nel nuovo script ConfigureEmotes. L'impostazione useDefaultEmotes su false sovrascrive le emote predefinite e ti consente di definire emote personalizzate tramite la funzione setEmotes.

    Script - ConfigureEmotes

    local ReplicatedStorage = game:GetService("ReplicatedStorage")
    local EmoteBar = require(ReplicatedStorage.EmoteBar)
    EmoteBar.configureServer({
    useDefaultEmotes = false,
    })
    EmoteBar.setEmotes({
    {
    name = "Ciao",
    animation = "rbxassetid://3344650532",
    image = "rbxassetid://7719817462",
    defaultTempo = 1,
    },
    {
    name = "Applausi",
    animation = "rbxassetid://5915693819",
    image = "rbxassetid://7720292217",
    defaultTempo = 2,
    },
    })

Mega emote

Una mega emote si forma quando più giocatori nella stessa area eseguono la stessa emote contemporaneamente. Quando sempre più giocatori si uniscono, la mega emote cresce. Quando i giocatori smettono di eseguire l'emote, la mega emote diminuisce fino a scomparire.

Tempo

Il tempo di un'emote è la velocità alla quale viene riprodotta quando il suo pulsante viene premuto una volta. La velocità predefinita di un'emote è determinata dal suo defaultTempo. La velocità di un'emote può essere aumentata o diminuita premendo il suo pulsante più velocemente o più lentamente.

Riferimento API

Tipi

Emote

Ogni emote è rappresentata da un dizionario con le seguenti coppie chiave-valore:

ChiaveTipoDescrizione
namestringNome dell'emote, ad esempio "Shrug".
animationstringID risorsa per l'animazione dell'emote.
imagestringID risorsa per l'immagine dell'emote nell'interfaccia grafica.
defaultTemponumberFattore di velocità predefinito con cui riprodurre l'animazione dell'emote. Ad esempio, un tempo di 2 riprodurrà l'animazione a una velocità doppia rispetto alla normale. Deve essere maggiore di 0.
isLockedboolIndica se l'emote è "bloccata" e non può essere attivata.

Enums

EmoteBar.GuiType

NomeRiassunto
EmoteBarForma predefinita in cui le emote vengono visualizzate in una barra lungo il fondo dello schermo, separate in singole "pagine".
EmoteWheelVariante in cui le emote vengono visualizzate in un cerchio quando un giocatore fa clic o tocca il proprio personaggio.
LocalScript

local ReplicatedStorage = game:GetService("ReplicatedStorage")
local EmoteBar = require(ReplicatedStorage.EmoteBar)
EmoteBar.configureClient({
guiType = EmoteBar.GuiType.EmoteWheel,
})

Funzioni

configureServer

configureServer(config: table)

Sovrascrive le opzioni di configurazione predefinite lato server tramite le seguenti chiavi/valori nella tabella config. Questa funzione può essere chiamata solo da un Script e le modifiche verranno replicate automaticamente a tutti i client.

ChiaveDescrizionePredefinito
useDefaultEmotesIndica se le emote predefinite fornite sono incluse o meno.true
useMegaEmotesAbilita o disabilita la funzione delle mega emote.true
emoteMinPlayersNumero minimo di giocatori che eseguono la stessa emote per contribuire a una mega emote.3
emoteMaxPlayersNumero massimo di giocatori che eseguono la stessa emote per contribuire a una mega emote.50
playParticlesAbilita o disabilita le emote che i giocatori stanno eseguendo come particelle fluttuanti sopra le loro teste.true
sendContributingEmotesAbilita o disabilita l'invio di una piccola icona dell'emote per contribuire alla mega emote.true
Script

local ReplicatedStorage = game:GetService("ReplicatedStorage")
local EmoteBar = require(ReplicatedStorage.EmoteBar)
EmoteBar.configureServer({
emoteMinPlayers = 2,
playParticles = false,
})

configureClient

configureClient(config: table)

Sovrascrive le opzioni di configurazione predefinite lato client tramite le seguenti chiavi/valori nella tabella config. Questa funzione può essere chiamata solo da un LocalScript. A seconda del valore di guiType, le opzioni nelle schede indicate si applicano anche.

ChiaveDescrizionePredefinito
guiTypeControlla quale forma avrà l'interfaccia grafica per visualizzare le emote (EmoteBar.GuiType).EmoteBar
useTempoAbilita o disabilita la funzione tempo in cui gli utenti possono controllare quanto velocemente o lentamente vengono riprodotte le loro emote attivando ripetutamente la stessa emote in modo ritmico.true
tempoActivationWindowQuantità di tempo, in secondi, che l'utente ha tra attivazioni sequenziali di un'emote affinché venga considerata parte del tempo.3
lockedImageImmagine da visualizzare sopra le emote bloccate."rbxassetid://6905802778"
LocalScript - Barra Emote

local ReplicatedStorage = game:GetService("ReplicatedStorage")
local EmoteBar = require(ReplicatedStorage.EmoteBar)
EmoteBar.configureClient({
guiType = EmoteBar.GuiType.EmoteBar,
maxEmotesPerPage = 6,
nextPageKey = Enum.KeyCode.Z,
prevPageKey = Enum.KeyCode.C,
})
LocalScript - Ruota Emote

local ReplicatedStorage = game:GetService("ReplicatedStorage")
local EmoteBar = require(ReplicatedStorage.EmoteBar)
EmoteBar.configureClient({
guiType = EmoteBar.GuiType.EmoteWheel,
})

setEmotes

setEmotes(emotes: table)

Imposta le emote personalizzate da utilizzare. Queste verranno aggiunte ai predefiniti se useDefaultEmotes è true, oppure sostituiranno i predefiniti se useDefaultEmotes è false. Questa funzione può essere chiamata solo da un Script e le modifiche verranno replicate automaticamente a tutti i client.

Vedi Emote per la struttura di ogni emote passata a questa funzione.

Script - ConfigureEmotes

local ReplicatedStorage = game:GetService("ReplicatedStorage")
local EmoteBar = require(ReplicatedStorage.EmoteBar)
EmoteBar.configureServer({
useDefaultEmotes = false,
})
EmoteBar.setEmotes({
{
name = "Ciao",
animation = "rbxassetid://3344650532",
image = "rbxassetid://7719817462",
defaultTempo = 1,
},
{
name = "Applausi",
animation = "rbxassetid://5915693819",
image = "rbxassetid://7720292217",
defaultTempo = 2,
},
})

setGuiVisibility

setGuiVisibility(visible: boolean)

Mostra o nasconde l'interfaccia grafica delle emote. Questa funzione può essere chiamata solo da un LocalScript su un client specifico.

LocalScript

local ReplicatedStorage = game:GetService("ReplicatedStorage")
local EmoteBar = require(ReplicatedStorage.EmoteBar)
EmoteBar.setGuiVisibility(false)

getEmote

getEmote(emoteName: string): table

Ottiene un Emote per nome. Restituisce nil se l'emote non può essere trovata. Questa funzione può essere chiamata solo da un LocalScript su un client specifico.

LocalScript

local ReplicatedStorage = game:GetService("ReplicatedStorage")
local EmoteBar = require(ReplicatedStorage.EmoteBar)
local shrug = EmoteBar.getEmote("Shrug")

playEmote

playEmote(emote: Emote)

Riproduce la Emote data e attiva l'evento emotePlayed sul server, se connesso. Questa funzione può essere chiamata solo da un LocalScript su un client specifico.

LocalScript

local ReplicatedStorage = game:GetService("ReplicatedStorage")
local EmoteBar = require(ReplicatedStorage.EmoteBar)
local shrug = EmoteBar.getEmote("Shrug")
EmoteBar.playEmote(shrug)

lockEmote

lockEmote(emoteName: string)

Blocca l'Emote con il nome dato. Questa funzione può essere chiamata solo da un LocalScript sul client.

LocalScript

local ReplicatedStorage = game:GetService("ReplicatedStorage")
local EmoteBar = require(ReplicatedStorage.EmoteBar)
EmoteBar.lockEmote("Applausi")

unlockEmote

unlockEmote(emoteName: string)

Sblocca l'Emote con il nome dato. Questa funzione può essere chiamata solo da un LocalScript sul client.

LocalScript

local ReplicatedStorage = game:GetService("ReplicatedStorage")
local EmoteBar = require(ReplicatedStorage.EmoteBar)
EmoteBar.unlockEmote("Applausi")

Eventi

emotePlayed

Si attiva quando un client esegue un'emote. Questo evento può essere connesso solo in un LocalScript.

Parametri
player: PlayerGiocatore che ha eseguito l'emote.
emote: EmoteEmote che è stata eseguita.
LocalScript

local ReplicatedStorage = game:GetService("ReplicatedStorage")
local EmoteBar = require(ReplicatedStorage.EmoteBar)
EmoteBar.emotePlayed:Connect(function(player, emote)
print(player.Name, "ha eseguito", emote.name)
end)

lockedEmoteActivated

Si attiva quando un client fa clic su un'emote bloccata. Questo evento può essere connesso solo in un LocalScript.

Parametri
emote: EmoteEmote bloccata che è stata attivata.
LocalScript

local ReplicatedStorage = game:GetService("ReplicatedStorage")
local Players = game:GetService("Players")
local EmoteBar = require(ReplicatedStorage.EmoteBar)
EmoteBar.lockedEmoteActivated:Connect(function(emote)
print(Players.LocalPlayer, "ha cliccato", emote.name)
end)
© 2026 Roblox Corporation. Roblox, il logo Roblox e Powering Imagination sono tra i nostri marchi registrati e non registrati negli Stati Uniti. e altri paesi.