Emote Çubuğu

*Bu içerik, yapay zekâ (beta) kullanılarak çevrildi ve hatalar içerebilir. Sayfayı İngilizce görüntülemek için buraya tıkla.

Emote'lar, herhangi bir sosyal deneyimin temel bileşenleridir. EmoteBar geliştirici modülü, oyunculara anlamlı sosyal etkileşimi kolaylaştırmak için erişilebilir, özelleştirilebilir bir yol sunmayı amaçlıyor.

Modül Kullanımı

Kurulum

EmoteBar modülünü bir deneyimde kullanmak için:

  1. Studio'nun Pencere menüsünden veya Ana Sayfa sekmesindeki araç çubuğundan Toolbox açın ve Yaratıcı Mağaza sekmesini seçin.

  2. Modeller sıralamasının seçili olduğundan emin olun, ardından Tümünü Gör  butonuna tıklayın.

  3. Paketler kutusunu bulun ve tıklayın.

  4. Emote Çubuğu modülünü bulun ve tıklayın veya 3D görünümü içine sürükleyip bırakın.

  5. Explorer penceresinde, tüm EmoteBar modelini ReplicatedStorage'a taşıyın. Deneyimi çalıştırdığınızda modül çalışmaya başlayacaktır.

Yapılandırma

Modül, 7 emote ile önceden yapılandırılmıştır ve kendi emote'larınız ve görüntüleme seçenekleriniz ile kolayca özelleştirilebilir. Ayrıca, oyuncunun daha önceki Roblox etkinliklerinden (Lil Nas X, Royal Blood veya Twenty One Pilots gibi) sahip olduğu herhangi bir emote, mevcut emote listesine otomatik olarak eklenecektir.

  1. ServerScriptService içinde yeni bir Script oluşturun ve adını ConfigureEmotes olarak değiştirin.

  2. Aşağıdaki kodu yeni ConfigureEmotes script'ine yapıştırın. useDefaultEmotes ayarı false olarak ayarlandığında varsayılan emote'ları geçersiz kılar ve setEmotes fonksiyonu aracılığıyla özel emote'lar tanımlamanıza izin verir.

    Script - ConfigureEmotes

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

Mega Emote'lar

Bir mega emote, aynı alandaki birden fazla oyuncunun aynı anda aynı emote'u gerçekleştirmesiyle oluşur. Daha fazla oyuncu katıldıkça, mega emote daha da büyür. Oyuncular emote'u gerçekleştirmeyi bıraktıkça, mega emote küçülür ve sonunda kaybolur.

Tempo

Bir emote'un tempo'su, düğmesine bir kez basıldığında çaldığı hızdır. Bir emote'un varsayılan hızı, defaultTempo'su ile belirlenir. Bir emote'un hızı, düğmesine daha hızlı veya daha yavaş basarak artırılabilir veya azaltılabilir.

API Referansı

Türler

Emote

Her emote, aşağıdaki anahtar-değer çiftleri ile bir sözlükle temsil edilir:

AnahtarTürAçıklama
namestringEmote adı, örneğin "Shrug".
animationstringEmote'un animasyonuna ait varlık kimliği.
imagestringEmote'un GUI'deki resmine ait varlık kimliği.
defaultTemponumberEmote animasyonunu oynatma süresinde varsayılan hız faktörü. Örneğin, 2 temposu, animasyonu normal hızının iki katında oynatır. 0'dan büyük olmalıdır.
isLockedboolEmote'un etkinleştirilmesinin "kilitli" olup olmadığı.

Enum'lar

EmoteBar.GuiType

İsimKapsam
EmoteBarVarsayılan form, emote'ların ekranın altındaki bir çubukta görüntüleneceği, bireysel "sayfalara" ayrılmıştır.
EmoteWheelBir oyuncu karakterine tıkladığında veya dokunduğunda emote'ların bir halkada görüntülendiği varyant.
LocalScript

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

Fonksiyonlar

configureServer

configureServer(config: table)

Aşağıdaki anahtar/değerler aracılığıyla varsayılan sunucu tarafı yapılandırma seçeneklerini geçersiz kılar. Bu fonksiyon yalnızca bir Script'ten çağrılabilir ve değişiklikler otomatik olarak tüm istemcilere yansıtılır.

AnahtarAçıklamaVarsayılan
useDefaultEmotesVerilen varsayılan emote'ların dahil edilip edilmeyeceği.true
useMegaEmotesmega emote'lar özelliğini etkinleştirir veya devre dışı bırakır.true
emoteMinPlayersAynı emote'u gerçekleştiren minimum oyuncu sayısı, mega emote'a katkıda bulunmak için.3
emoteMaxPlayersAynı emote'u gerçekleştiren maksimum oyuncu sayısı, mega emote'a katkıda bulunmak için.50
playParticlesOyuncuların emote'lerinin başlarının üstünde yüzen parçacıklar olarak görüntülenip görüntülenmeyeceğini etkinleştirir veya devre dışı bırakır.true
sendContributingEmotesMega emote'a katkıda bulunmak için küçük bir emote simgesinin gönderilip gönderilmeyeceğini etkinleştirir veya devre dışı bırakır.true
Script

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

configureClient

configureClient(config: table)

Aşağıdaki anahtar/değerler aracılığıyla varsayılan istemci tarafı yapılandırma seçeneklerini geçersiz kılar. Bu fonksiyon yalnızca bir LocalScript'ten çağrılabilir. guiType değerine göre, belirtilen sekmelerdeki seçenekler de geçerlidir.

AnahtarAçıklamaVarsayılan
guiTypeEmote'ları görüntülemek için GUI'nin alacağı formu kontrol eder (EmoteBar.GuiType).EmoteBar
useTempoKullanıcıların emote'larının nasıl hızlı veya yavaş oynatılacağını kontrol edebilmeleri için tempo özelliğini etkinleştirir veya devre dışı bırakır.true
tempoActivationWindowBir emote'un ardışık etkinleştirmeleri arasında kullanıcının sahip olduğu süre, saniye cinsinden.3
lockedImageKilitli emote'ların üzerinde görüntülenecek resim."rbxassetid://6905802778"
LocalScript - Emote Çubuğu

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 - Emote Tekerleği

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

setEmotes

setEmotes(emotes: table)

Kullanılacak özel emote'ları ayarlar. Eğer useDefaultEmotes true ise, bunlar varsayılanlara eklenir; false ise varsayılanların yerini alır. Bu fonksiyon yalnızca bir Script'ten çağrılabilir ve değişiklikler otomatik olarak tüm istemcilere yansıtılır.

Bu fonksiyona geçirilen her bir emote'un yapısı için Emote kısmına bakın.

Script - ConfigureEmotes

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

setGuiVisibility

setGuiVisibility(visible: boolean)

Emote GUI'sini gösterir veya gizler. Bu fonksiyon yalnızca belirli bir istemci üzerinde bir LocalScript'ten çağrılabilir.

LocalScript

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

getEmote

getEmote(emoteName: string): table

Bir Emote'u adla alır. Emote bulunamazsa nil döner. Bu fonksiyon yalnızca belirli bir istemci üzerinde bir LocalScript'ten çağrılabilir.

LocalScript

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

playEmote

playEmote(emote: Emote)

Verilen Emote'u oynatır ve sunucudaki emotePlayed olayını tetikler, eğer bağlıysa. Bu fonksiyon yalnızca belirli bir istemci üzerinde bir LocalScript'ten çağrılabilir.

LocalScript

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

lockEmote

lockEmote(emoteName: string)

Verilen isme sahip Emote'u kilitler. Bu fonksiyon yalnızca istemcide bir LocalScript'ten çağrılabilir.

LocalScript

local ReplicatedStorage = game:GetService("ReplicatedStorage")
local EmoteBar = require(ReplicatedStorage.EmoteBar)
EmoteBar.lockEmote("Alkışla")

unlockEmote

unlockEmote(emoteName: string)

Verilen isme sahip Emote'u kilidini açar. Bu fonksiyon yalnızca istemcide bir LocalScript'ten çağrılabilir.

LocalScript

local ReplicatedStorage = game:GetService("ReplicatedStorage")
local EmoteBar = require(ReplicatedStorage.EmoteBar)
EmoteBar.unlockEmote("Alkışla")

Olaylar

emotePlayed

Herhangi bir istemci bir emote oynattığında tetiklenir. Bu olay yalnızca bir LocalScript içinde bağlanabilir.

Parametreler
player: PlayerEmote'u gerçekleştiren oyuncu.
emote: EmoteOynatılan emote.
LocalScript

local ReplicatedStorage = game:GetService("ReplicatedStorage")
local EmoteBar = require(ReplicatedStorage.EmoteBar)
EmoteBar.emotePlayed:Connect(function(player, emote)
print(player.Name, "şu emote'u oynattı:", emote.name)
end)

lockedEmoteActivated

Bir istemci kilitli bir emote'a tıkladığında tetiklenir. Bu olay yalnızca bir LocalScript içinde bağlanabilir.

Parametreler
emote: EmoteEtkinleştirilen kilitli emote.
LocalScript

local ReplicatedStorage = game:GetService("ReplicatedStorage")
local Players = game:GetService("Players")
local EmoteBar = require(ReplicatedStorage.EmoteBar)
EmoteBar.lockedEmoteActivated:Connect(function(emote)
print(Players.LocalPlayer, "şu emote'a tıkladı:", emote.name)
end)
©2026 Roblox Corporation. Roblox, the Roblox logo and Powering Imagination are among our registered and unregistered trademarks in the U.S. and other countries.