İfade Ç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.

Duygular herhangi bir sosyal deneyimin temel bir bileşenidir.The EmoteBar geliştirici modülü oyunculara anlamlı sosyal etkileşimleri kolaylaştırmak için erişilebilir, özelleştirilebilir bir yol sağlamayı hedefliyor.

Modül kullanımı

Yükleme

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

  1. Görüntü sekmesinden açın Araç çantası ve Yaratıcı mağazası sekmesini seçin.

    Toolbox toggle button in Studio
  2. Modellerin sıralanması seçildiğinden emin olun, ardından Tümünü Görüntüle düğmesine tıklayın Kategoriler için >.

  3. Yerini ve tıklayın Geliştirici Modülleri düğmesi.

  4. ifade çubuğu modülünü bulun ve tıklayın veya 3B görüntüye sürükleyin ve bırakın.

  5. Gezgini penceresinde, tüm EmoteBar modelini ServerScriptService ye taşıyın.Deneyimi çalıştırdıktan sonra, modül kendini çeşitli hizmetlere dağıtacak ve çalışmaya başlayacaktır.

Yapılandırma

Modül 7 emote ile önceden yapılandırılmıştır ve kendi emote ve görüntü seçeneklerinizle kolayca özelleştirilebilir.Ayrıca, oyuncu Lil Nas X, Royal Blood veya Twenty One Pilots gibi önceki Roblox etkinliklerinden herhangi bir emote sahipse, bu emoteler otomatik olarak mevcut emote listesine eklenecektir.

  1. In ServerScriptService , yeni bir Script oluştur ve adını Emote Yapılandırma olarak değiştir.

  2. Aşağıdaki kodu yeni ConfigureEmotes scriptine yapıştırın.The useDefaultEmotes ayarı false öntanımlı ifadeleri geçersiz kılar ve setEmotes işlevi aracılığıyla özel ifadeler tanımlamanıza izin verir.

    Script - ConfigureEmotes'u yapılandır

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

Mega ifadeler

Aynı alandaki birden fazla oyuncu aynı emote'u aynı anda yaptığında bir mega ifade oluşur.Gittikçe daha fazla oyuncu katıldıkça, mega ifade daha da büyür.Oyuncular ifadeyi yapmayı bıraktığında, mega ifade sonunda kaybolana kadar daha küçük hale gelir.

Hız

Bir ifadenin ritmi düğmesine basıldığında oynadığı hızdır.Bir ifadenin varsayılan hızı, defaultTempo 'si tarafından belirlenir.Bir ifadenin hızı, daha hızlı veya daha yavaş dokunarak düğmesine basarak artırılabilir veya azaltılabilir.

API referansı

Türler

ifade

Her ifade, aşağıdaki anahtar-değer çiftleriyle bir sözlük tarafından temsil edilir:

AnahtarTürAçıklama
namediziÖrneğin ifade adı, "Shrug" .
animationdiziifade'un animasyonu için varlık kimliği.
imagediziUI'de ifade'un görüntüsü için varlık kimliği.
defaultTemposayıEmote animasyonunu oynamak için varsayılan hız faktörü.Örneğin, 2'in bir tempo animasyonu normal hızının iki katında oynayacaktır.0'dan büyük olmalıdır.
isLocked

bool i̇çindekiler nasıl yapılır bool i̇çindekiler nasıl yapılır

Emote'un etkinleştirilmesinden "kilitli" olup olmadığı.

Enleri

EmoteBar.GuiType türü

AdıÖzet
EmoteBarEkranın alt kısmında bir çubukta emote'ların gösterildiği varsayılan form, bireysel "sayfalara" ayrılmış.
EmoteWheelBir oyuncunun oyuncu karakterine tıkladığında veya dokunduğunda bir yüzükte emote görüntülenen varyant.
YerelScript

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

Fonksiyonlar

sunucu yapılandırmak

configureServer(config: table )

Varsayılan sunucu tarafı yapılandırma seçeneklerini aşağıdaki anahtarlar/değerler aracılığıyla geçersiz kılar: config tablosunda.Bu işlev yalnızca bir Script 'dan çağrılabilir ve değişiklikler otomatik olarak tüm müşterilere yayılır.

AnahtarAçıklamaVarsayılan
useDefaultEmotesVerilen varsayılan ifadeler dahil edilir mi yoksa edilmez mi.doğru
useMegaEmotesmega emote özelliketkinleştirir veya devre dışı bırakır.doğru
emoteMinPlayersBir mega ifadeye katkıda bulunmak için aynı ifadeyi yapan minimum oyuncu sayısı.3
emoteMaxPlayersBir mega ifadeye katkıda bulunmak için aynı ifadeyi yapan maksimum oyuncu sayısı.50
playParticlesOyuncuların kafalarının üzerinde yüzen parçacıklar olarak oynadıkları ifadeleri etkinleştirir veya devre dışı bırakır.doğru
sendContributingEmotesMega emote'ye katkıda bulunmak için küçük bir ifade simgesi göndermeyi etkinleştirir veya devre dışı bırakır.doğru
Komut Dosyası

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

client yapılandırmak

configureClient(config: table )

Varsayılan istemci tarafı yapılandırma seçeneklerini aşağıdaki anahtarlar/değerler aracılığıyla geçersiz kılar: config tablosunda.Bu işlev yalnızca bir LocalScript 'dan çağrılabilir.guiType değerine bağlı olarak, not edilen sekmelerdeki seçenekler de uygulanır.

AnahtarAçıklamaVarsayılan
guiTypeUI'yi oluşturan kontroller, emote'ları görüntülemek için alacaklar ( EmoteBar.GuiType ).ifade çubuğu
useTempoKullanıcıların aynı ifadeyi tekrar tekrar etkinleştirerek emote'larının ne kadar hızlı veya yavaş oynandığını kontrol edebilecekleri tempo özelliğini etkinleştirir veya devre dışı bırakırdoğru
tempoActivationWindowSaniye olarak, kullanıcının bir emote'un bir parçası olarak sayılması için bir dizi aktivasyon arasında olması gereken süre.3
lockedImageÜstte kilitli ifadeleri görüntülemek için görüntü.“rbxassetid://6905802778”
YerelScript - Duygusal Bar

local ReplicatedStorage = game:GetService("ReplicatedStorage")
local EmoteBar = require(ReplicatedStorage:WaitForChild("EmoteBar"))
EmoteBar.configureClient({
guiType = EmoteBar.GuiType.EmoteBar,
maxEmotesPerPage = 6,
nextPageKey = Enum.KeyCode.Z,
prevPageKey = Enum.KeyCode.C,
})
YerelScript - İfade Çarkı

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

setEmotes Yorumlar Yorumlar Yorumlar setEmotes

setEmotes(emotes: table )

Kullanılacak özel ifadeleri ayarlar.Bunlar varsayılana eklenecek veya varsayılanların yerine geçeceklerdir, eğer useDefaultEmotes varsa true veya useDefaultEmotes varsa false .Bu işlev yalnızca bir Script 'dan çağrılabilir ve değişiklikler otomatik olarak tüm müşterilere yayılır.

Bu işleve geçen her bir ifadenin yapısı için ifade görün.

Script - ConfigureEmotes'u yapılandır

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

setGuiVisibility değeri

setGuiVisibility(görünür: boolean )

Duyguları GUI'yi gösterir veya gizler. Bu işlev yalnızca belirli bir istemceden LocalScript üzerinden çağrılabilir.

YerelScript

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

getEmote Yorumlar Yorumlar Yorumlar Get Emote

getEmote(emoteName: string ): table

Adına bir ifade alır.Emote bulunamıyorsa nil döndürür.Bu işlev yalnızca belirli bir istemceden LocalScript üzerinden çağrılabilir.

YerelScript

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

oynaEmote

playEmote(ifade: Emote )

Verdiği ifadeyi oynar ve veri aktarıldığında sunucuda ifadeOynandı etkinliğini ateş eder, bağlıysa.Bu işlev yalnızca belirli bir istemceden LocalScript üzerinden çağrılabilir.

YerelScript

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

lockEmote kapanışı

lockEmote(emoteName: string )

ifadenın verilen adıyla kilidini kilitler. Bu işlev yalnızca istemciden bir LocalScript üzerinden çağrılabilir.

YerelScript

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

ifadeKilidiniAç

emoteEmote'un kilidini aç(emoteName: string )

Verilen adı kullanarak ifadeyi kilidini açar. Bu işlev yalnızca istemceden bir LocalScript üzerinden çağrılabilir.

YerelScript

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

Etkinlikler

ifadeOynandı

Herhangi bir istemci bir ifade oynattığında ateş eder. Bu olay yalnızca bir LocalScript içinde bağlanabilir.

Değerler
oyuncu: Playerifadeyi yerine getiren oyuncu.
ifade: İfadeOynanan ifade.
YerelScript

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

kilitliEmoteAktif edildi

Bir müşteri kilitli bir ifadeye tıkladığında ateş eder. Bu olay yalnızca bir LocalScript içinde bağlanabilir.

Değerler
ifade: İfadeAktifleştirilen kilitli ifade.
YerelScript

local ReplicatedStorage = game:GetService("ReplicatedStorage")
local Players = game:GetService("Players")
local EmoteBar = require(ReplicatedStorage:WaitForChild("EmoteBar"))
EmoteBar.lockedEmoteActivated:Connect(function(emote)
print(Players.LocalPlayer, "clicked", emote.name)
end)