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:
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 >.
Yerini ve tıklayın Geliştirici Modülleri düğmesi.
ifade çubuğu modülünü bulun ve tıklayın veya 3B görüntüye sürükleyin ve bırakın.
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.
In ServerScriptService , yeni bir Script oluştur ve adını Emote Yapılandırma olarak değiştir.
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ırlocal 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:
Anahtar | Tür | Açıklama |
---|---|---|
name | dizi | Örneğin ifade adı, "Shrug" . |
animation | dizi | ifade'un animasyonu için varlık kimliği. |
image | dizi | UI'de ifade'un görüntüsü için varlık kimliği. |
defaultTempo | sayı | 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 |
---|---|
EmoteBar | Ekranın alt kısmında bir çubukta emote'ların gösterildiği varsayılan form, bireysel "sayfalara" ayrılmış. |
EmoteWheel | Bir 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.
Anahtar | Açıklama | Varsayılan |
---|---|---|
useDefaultEmotes | Verilen varsayılan ifadeler dahil edilir mi yoksa edilmez mi. | doğru |
useMegaEmotes | mega emote özelliketkinleştirir veya devre dışı bırakır. | doğru |
emoteMinPlayers | Bir mega ifadeye katkıda bulunmak için aynı ifadeyi yapan minimum oyuncu sayısı. | 3 |
emoteMaxPlayers | Bir mega ifadeye katkıda bulunmak için aynı ifadeyi yapan maksimum oyuncu sayısı. | 50 |
playParticles | Oyuncuların kafalarının üzerinde yüzen parçacıklar olarak oynadıkları ifadeleri etkinleştirir veya devre dışı bırakır. | doğru |
sendContributingEmotes | Mega 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.
Anahtar | Açıklama | Varsayılan |
---|---|---|
guiType | UI'yi oluşturan kontroller, emote'ları görüntülemek için alacaklar ( EmoteBar.GuiType ). | ifade çubuğu |
useTempo | Kullanı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ır | doğru |
tempoActivationWindow | Saniye 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
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.
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: İfade | Aktifleş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)