Emote adalah komponen utama dari setiap pengalaman sosial.The EmoteBar modul pengembang bertujuan untuk memberikan pemain cara yang mudah diakses dan dapat disesuaikan untuk memudahkan interaksi sosial yang berarti.
Penggunaan modul
Instalasi
Untuk menggunakan modul EmoteBar dalam pengalaman:
Pastikan pengurutan Model dipilih, lalu klik tombol Lihat Semua untuk Kategori .
Temukan dan klik ubin Modul Pengembang .
Temukan modul Emote Bar dan klik, atau seret dan lepaskan ke dalam tampilan 3D.
Di jendela Explorer, pindahkan seluruh model EmoteBar ke ServerScriptService .Setelah menjalankan pengalaman, modul akan didistribusikan ke berbagai layanan dan mulai berjalan.
Konfigurasi
Modul sudah diatur sebelumnya dengan 7 emote dan dapat dengan mudah disesuaikan dengan emote dan opsi tampilan Anda sendiri.Selain itu, jika pemain memiliki emote dari acara Roblox sebelumnya seperti Lil Nas X, Royal Blood, atau Twenty One Pilots, emote tersebut akan secara otomatis ditambahkan ke daftar emote yang tersedia.
Di ServerScriptService , buat baru Script dan ganti namanya menjadi KonfigurasiEmote .
Tempelkan kode berikut ke skrip baru KonfigurasiEmote .Pengaturan useDefaultEmotes dari false menggantikan emote default dan memungkinkan Anda mendefinisikan emote khusus melalui fungsi setEmotes.
Skrip - Konfigurasi Emotelocal 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,},})
Emote mega
Sebuah emote mega terbentuk ketika beberapa pemain di area yang sama melakukan emote yang sama pada saat yang sama.Saat semakin banyak pemain bergabung, emote mega tumbuh lebih besar.Saat pemain berhenti melakukan emote, emote mega menjadi lebih kecil sampai akhirnya menghilang.

Kecepatan
Kecepatan emote adalah kecepatan di mana ia dimainkan saat tombolnya ditekan sekali adalah kecepatan di mana ia dimainkan saat tombolnya ditekan sekaliKecepatan default dari emote ditentukan oleh defaultTempo nya.Kecepatan emote dapat ditingkatkan atau dikurangi dengan mengetuk tombolnya lebih cepat atau lebih lambat.
Referensi API
Jenis
Emotik
Setiap emote diwakili oleh kamus dengan pas kunci-nilai berikut:
Kunci | Jenis | Deskripsi |
---|---|---|
name | string | Nama emote, misalnya "Shrug" . |
animation | string | ID aset untuk animasi emote. |
image | string | ID aset untuk gambar emote di GUI. |
defaultTempo | angka | Faktor kecepatan default di mana untuk memainkan animasi emote.Sebagai contoh, tempo 2 akan memutar animasi dua kali dengan kecepatan normalnya.Harus lebih besar dari 0. |
isLocked | bool | Apakah emote "terkunci" dari aktifasi. |
Enums
EmoteBar.GuiType
Nama | Singkatan |
---|---|
EmoteBar | Bentuk default di mana emote ditampilkan di bilah di bagian bawah layar, dibagi menjadi halaman individu. |
EmoteWheel | Variasi di mana emote ditampilkan di cincin saat pemain mengklik atau mengetuk karakter pemain mereka. |
Skrip Lokal
local ReplicatedStorage = game:GetService("ReplicatedStorage")local EmoteBar = require(ReplicatedStorage:WaitForChild("EmoteBar"))EmoteBar.configureClient({guiType = EmoteBar.GuiType.EmoteWheel,})
Fungsi
konfigurasiServer
konfigurasiServer(config: table )
Menggantikan opsi konfigurasi sisi server default melalui kunci/nilai berikut di tabel config.Fungsi ini hanya dapat dipanggil dari Script dan perubahan akan secara otomatis direplikasi ke semua klien.
Kunci | Deskripsi | Standar |
---|---|---|
useDefaultEmotes | Apakah emote default yang disediakan termasuk atau tidak. | benar |
useMegaEmotes | Mengaktifkan atau menonaktifkan fitur emote mega. | benar |
emoteMinPlayers | Jumlah minimum pemain yang melakukan emote yang sama untuk berkontribusi pada emote mega. | 3 |
emoteMaxPlayers | Jumlah maksimum pemain yang melakukan emote yang sama untuk berkontribusi pada emote mega. | 50 |
playParticles | Mengaktifkan atau menonaktifkan emote pemain yang dimainkan sebagai partikel mengambang di atas kepala mereka. | benar |
sendContributingEmotes | Mengaktifkan atau menonaktifkan mengirim ikon emote kecil untuk berkontribusi pada emote mega. | benar |
Skrip
local ReplicatedStorage = game:GetService("ReplicatedStorage")local EmoteBar = require(ReplicatedStorage:WaitForChild("EmoteBar"))EmoteBar.configureServer({emoteMinPlayers = 2,playParticles = false,})
konfigurasiClient
konfigurasiKlien(config: table)
Menggantikan opsi konfigurasi sisi klien default melalui kunci/nilai berikut di tabel config.Fungsi ini hanya dapat dipanggil dari LocalScript .Tergantung pada nilai guiType, opsi di tab yang dicatat juga berlaku.
Kunci | Deskripsi | Standar |
---|---|---|
guiType | Kontrol yang membentuk GUI akan mengambil untuk menampilkan emote ( EmoteBar.GuiType ). | Bilah Emote |
useTempo | Mengaktifkan atau menonaktifkan fitur tempo di mana pengguna dapat mengontrol seberapa cepat atau lambat emote mereka diputar dengan mengaktifkan kembali emote yang sama secara berulang secara ritme. | benar |
tempoActivationWindow | Jumlah waktu, dalam detik, pengguna memiliki antara aktivasi berurutan dari emote untuk dihitung sebagai bagian dari tempo. | 3 |
lockedImage | Gambar untuk ditampilkan di atas emote terkunci. | “rbxassetid://6905802778” |
Skrip Lokal - Bar Emote
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,})
Skrip Lokal - Roda Emote
local ReplicatedStorage = game:GetService("ReplicatedStorage")local EmoteBar = require(ReplicatedStorage:WaitForChild("EmoteBar"))EmoteBar.configureClient({guiType = EmoteBar.GuiType.EmoteWheel,})
setEmotes
setEmotes(emotes: table )
Tetapkan emote kustom untuk digunakan.Ini akan ditambahkan ke default jika useDefaultEmotes adalah true , atau menggantikan default jika useDefaultEmotes adalah false .Fungsi ini hanya dapat dipanggil dari Script dan perubahan akan secara otomatis direplikasikan ke semua klien.
Lihat Emote untuk struktur setiap emote yang dikirim ke fungsi ini.
Skrip - Konfigurasi Emote
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
setGuiVisibility(terlihat: boolean )
Menampilkan atau menyembunyikan emote GUI. Fungsi ini hanya dapat dipanggil dari LocalScript pada klien tertentu.
Skrip Lokal
local ReplicatedStorage = game:GetService("ReplicatedStorage")local EmoteBar = require(ReplicatedStorage:WaitForChild("EmoteBar"))EmoteBar.setGuiVisibility(false)
dapatkanEmote
Mendapatkan Emote oleh nama.Kembalikan nil jika emote tidak dapat ditemukan.Fungsi ini hanya dapat dipanggil dari LocalScript pada klien tertentu.
Skrip Lokal
local ReplicatedStorage = game:GetService("ReplicatedStorage")local EmoteBar = require(ReplicatedStorage:WaitForChild("EmoteBar"))local shrug = EmoteBar.getEmote("Shrug")
playEmote
playEmote(emote: Emote )
Memainkan Emote yang diberikan dan menembakkan acara emotePlayed di server, jika terhubung.Fungsi ini hanya dapat dipanggil dari LocalScript pada klien tertentu.
Skrip Lokal
local ReplicatedStorage = game:GetService("ReplicatedStorage")local EmoteBar = require(ReplicatedStorage:WaitForChild("EmoteBar"))local shrug = EmoteBar.getEmote("Shrug")EmoteBar.playEmote(shrug)
mengunciEmote
lockEmote(nama emote: string)
Mengunci Emote dengan nama yang diberikan. Fungsi ini hanya dapat dipanggil dari LocalScript pada klien.
Skrip Lokal
local ReplicatedStorage = game:GetService("ReplicatedStorage")local EmoteBar = require(ReplicatedStorage:WaitForChild("EmoteBar"))EmoteBar.lockEmote("Applaud")
bukaEmote
bukaEmote(nama emote: string )
Membuka Emote dengan nama yang diberikan. Fungsi ini hanya dapat dipanggil dari LocalScript pada klien.
Skrip Lokal
local ReplicatedStorage = game:GetService("ReplicatedStorage")local EmoteBar = require(ReplicatedStorage:WaitForChild("EmoteBar"))EmoteBar.unlockEmote("Applaud")
Peristiwa
emoteDimainkan
Melepaskan api saat klien mana pun memainkan emote. Acara ini hanya dapat terhubung di LocalScript .
Skrip Lokal
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local EmoteBar = require(ReplicatedStorage:WaitForChild("EmoteBar"))
EmoteBar.emotePlayed:Connect(function(player, emote)
print(player.Name, "played", emote.name)
end)
lockedEmoteAktif
Melepaskan api ketika klien mengklik emote terkunci. Peristiwa ini hanya dapat terhubung dalam LocalScript .
Parameter | |
---|---|
emote: Emote | Emote terkunci yang aktif. |
Skrip Lokal
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)