แถบอีโมต

*เนื้อหานี้แปลโดยใช้ AI (เวอร์ชัน Beta) และอาจมีข้อผิดพลาด หากต้องการดูหน้านี้เป็นภาษาอังกฤษ ให้คลิกที่นี่

อีโมตเป็นส่วนสำคัญของประสบการณ์ทางสังคมใด ๆ โมดูล EmoteBar สำหรับนักพัฒนา มีเป้าหมายเพื่อมอบวิธีการที่เข้าถึงได้และปรับแต่งได้ให้กับผู้เล่นในการส่งเสริมการโต้ตอบทางสังคมที่มีความหมาย

การใช้งานโมดูล

การติดตั้ง

ในการใช้โมดูล EmoteBar ในประสบการณ์:

  1. จากเมนู Window ของ Studio หรือแถบเครื่องมือ Home เปิด Toolbox และเลือกแท็บ Creator Store

  2. ตรวจสอบให้แน่ใจว่าได้เลือกการจัดเรียง Models จากนั้นคลิกปุ่ม See All สำหรับ Categories

  3. หาและคลิกที่สัญลักษณ์ Packages

  4. หาโมดูล Emote Bar แล้วคลิกที่มัน หรือดึงและวางเข้าไปในมุมมอง 3D

  5. ในหน้าต่าง Explorer ย้ายโมเดล EmoteBar ทั้งหมดเข้าไปใน ReplicatedStorage เมื่อต้องการเรียกใช้ประสบการณ์ โมดูลจะเริ่มทำงาน

การตั้งค่า

โมดูลถูกตั้งค่าไว้ล่วงหน้าด้วยอีโมต 7 ตัว และสามารถปรับแต่งได้ง่ายด้วยอีโมตและตัวเลือกการแสดงผลของคุณเอง นอกจากนี้ หากผู้เล่นมีอีโมตจากเหตุการณ์ Roblox ก่อนหน้านี้ เช่น Lil Nas X, Royal Blood หรือ Twenty One Pilots อีโมตเหล่านั้นจะถูกเพิ่มเข้าไปในรายการอีโมตที่สามารถใช้งานได้โดยอัตโนมัติ

  1. ใน ServerScriptService สร้าง Script ใหม่และเปลี่ยนชื่อเป็น ConfigureEmotes

  2. วางโค้ดต่อไปนี้ลงในสคริปต์ ConfigureEmotes ใหม่ การตั้งค่า useDefaultEmotes เป็น false จะเขียนทับอีโมตเริ่มต้นและอนุญาตให้คุณกำหนดอีโมตที่กำหนดเองผ่านฟังก์ชัน setEmotes

    Script - ConfigureEmotes

    local ReplicatedStorage = game:GetService("ReplicatedStorage")
    local EmoteBar = require(ReplicatedStorage.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,
    },
    })

อีโมตเมก้า

อีโมต เมก้า จะเกิดขึ้นเมื่อผู้เล่นหลายคนในพื้นที่เดียวกันทำอีโมตเดียวกันในเวลาเดียวกัน เมื่อมีผู้เล่นเข้าร่วมมากขึ้น อีโมตเมก้าจะเติบโตใหญ่ขึ้น เมื่อผู้เล่นหยุดทำอีโมต อีโมตเมก้าจะลดขนาดลงจนในที่สุดก็หายไป

จังหวะ (Tempo)

จังหวะ ของอีโมตคือความเร็วที่เล่นเมื่อปุ่มของมันถูกเลือกเพียงครั้งเดียว ความเร็วเริ่มต้นของอีโมตจะถูกกำหนดโดย defaultTempo ของมัน ความเร็วของอีโมตสามารถเพิ่มขึ้นหรือลดลงได้โดยการแตะปุ่มของมันให้เร็วขึ้นหรือลง

เอกสารอ้างอิง API

ประเภท

อีโมต

อีโมตแต่ละตัวจะถูกแทนด้วยพจนานุกรมที่มีคู่คีย์-ค่า ดังนี้:

คีย์ประเภทคำอธิบาย
namestringชื่ออีโมต เช่น "Shrug"
animationstringAsset ID สำหรับอนิเมชันของอีโมต
imagestringAsset ID สำหรับภาพอีโมตใน GUI
defaultTemponumberปัจจัยความเร็วเริ่มต้นที่ใช้ในการเล่นอนิเมชันอีโมต เช่น ค่า tempo ของ 2 จะเล่นอนิเมชันที่ความเร็วเป็นสองเท่าของความเร็วปกติ ต้องมากกว่า 0
isLockedboolอีโมตถูก "ล็อค" ไม่ให้เปิดใช้งานหรือไม่

Enum

EmoteBar.GuiType

ชื่อสรุป
EmoteBarรูปแบบเริ่มต้นที่อีโมตจะแสดงในแถบที่ด้านล่างของหน้าจอ ซึ่งแยกออกเป็น "หน้า" แต่ละหน้า
EmoteWheelแบบที่อีโมตแสดงในวงแหวนเมื่อผู้เล่นคลิกหรือแตะที่ตัวละครของพวกเขา
LocalScript

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

ฟังก์ชัน

configureServer

configureServer(config: table)

เขียนทับค่าเริ่มต้นของการกำหนดค่าด้านเซิร์ฟเวอร์ผ่านคีย์/ค่าในตาราง config ฟังก์ชันนี้สามารถเรียกใช้ได้เฉพาะจาก Script และการเปลี่ยนแปลงจะทำให้แสดงซ้ำไปยังลูกค้าทั้งหมดโดยอัตโนมัติ

คีย์คำอธิบายค่าเริ่มต้น
useDefaultEmotesระบุว่าอีโมตเริ่มต้นที่ให้มาถูกนำมารวมไว้หรือไม่true
useMegaEmotesเปิดหรือปิดฟีเจอร์ mega emotestrue
emoteMinPlayersจำนวนผู้เล่นขั้นต่ำที่ทำอีโมตเดียวกันเพื่อมีส่วนร่วมในอีโมตเมก้า3
emoteMaxPlayersจำนวนผู้เล่นสูงสุดที่ทำอีโมตเดียวกันเพื่อมีส่วนร่วมในอีโมตเมก้า50
playParticlesเปิดหรือปิดอีโมตที่ผู้เล่นทำเป็นอนุภาคลอยเหนือหัวของพวกเขาtrue
sendContributingEmotesเปิดหรือปิดการส่งสัญลักษณ์อีโมตขนาดเล็กเพื่อมีส่วนร่วมในอีโมตเมก้าtrue
Script

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

configureClient

configureClient(config: table)

เขียนทับค่าเริ่มต้นของการกำหนดค่าของลูกค้าผ่านคีย์/ค่าในตาราง config ฟังก์ชันนี้สามารถเรียกใช้ได้เฉพาะจาก LocalScript ขึ้นอยู่กับค่าของ guiType ตัวเลือกในแท็บที่กล่าวถึงจะมีผลด้วย

คีย์คำอธิบายค่าเริ่มต้น
guiTypeควบคุมว่ารูปแบบใดที่ GUI จะนำเสนอในการแสดงอีโมต (EmoteBar.GuiType)EmoteBar
useTempoเปิดหรือปิดฟีเจอร์ tempo ซึ่งผู้ใช้สามารถควบคุมความเร็วหรือช้าของการเล่นอีโมตด้วยการเปิดใช้งานอีโมตเดิมซ้ำหลายครั้งtrue
tempoActivationWindowระยะเวลาที่ผู้ใช้มีระหว่างการเปิดใช้งานอีโมตติดต่อกันสำหรับให้เป็นส่วนหนึ่งของจังหวะ3
lockedImageภาพที่แสดงซ้อนทับบนอีโมตที่ล็อคอยู่"rbxassetid://6905802778"
LocalScript - Emote Bar

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 Wheel

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

setEmotes

setEmotes(emotes: table)

ตั้งค่าอีโมตที่กำหนดเองที่จะใช้ เหล่านี้จะถูกเพิ่มเข้าไปในค่าเริ่มต้นหาก useDefaultEmotes เป็น true หรือลบค่าเริ่มต้นหาก useDefaultEmotes เป็น false ฟังก์ชันนี้สามารถเรียกใช้ได้เฉพาะจาก Script และการเปลี่ยนแปลงจะทำให้แสดงซ้ำไปยังลูกค้าทั้งหมดโดยอัตโนมัติ

ดู Emote สำหรับโครงสร้างของแต่ละอีโมตที่ส่งไปยังฟังก์ชันนี้

Script - ConfigureEmotes

local ReplicatedStorage = game:GetService("ReplicatedStorage")
local EmoteBar = require(ReplicatedStorage.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(visible: boolean)

แสดงหรือซ่อน GUI ของอีโมต ฟังก์ชันนี้สามารถเรียกใช้ได้เฉพาะจาก LocalScript บนลูกค้าเฉพาะ

LocalScript

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

getEmote

getEmote(emoteName: string): table

ดึงข้อมูล Emote ตามชื่อ หากไม่พบอีโมตจะส่งคืน nil ฟังก์ชันนี้สามารถเรียกใช้ได้เฉพาะจาก LocalScript บนลูกค้าเฉพาะ

LocalScript

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

playEmote

playEmote(emote: Emote)

เล่น Emote ที่กำหนดและส่งเหตุการณ์ emotePlayed ไปยังเซิร์ฟเวอร์ หากเชื่อมต่อ ฟังก์ชันนี้สามารถเรียกใช้ได้เฉพาะจาก LocalScript บนลูกค้าเฉพาะ

LocalScript

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

lockEmote

lockEmote(emoteName: string)

ล็อค Emote ที่มีชื่อที่กำหนด ฟังก์ชันนี้สามารถเรียกใช้ได้เฉพาะจาก LocalScript บนลูกค้า

LocalScript

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

unlockEmote

unlockEmote(emoteName: string)

ปลดล็อค Emote ที่มีชื่อที่กำหนด ฟังก์ชันนี้สามารถเรียกใช้ได้เฉพาะจาก LocalScript บนลูกค้า

LocalScript

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

เหตุการณ์

emotePlayed

เกิดขึ้นเมื่อผู้ใช้ใด ๆ เล่นอีโมต เหตุการณ์นี้สามารถเชื่อมต่อได้เฉพาะใน LocalScript

พารามิเตอร์
player: Playerผู้เล่นที่แสดงอีโมต
emote: Emoteอีโมตที่ถูกเล่น
LocalScript

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

lockedEmoteActivated

เกิดขึ้นเมื่อผู้ใช้คลิกอีโมตที่ล็อคอยู่ เหตุการณ์นี้สามารถเชื่อมต่อได้เฉพาะใน LocalScript

พารามิเตอร์
emote: 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, "clicked", emote.name)
end)
©2026 Roblox Corporation. Roblox, โลโก้ Roblox และ Powering Imagination เป็นส่วนหนึ่งของเครื่องหมายการค้าที่จดทะเบียน และไม่ได้จดทะเบียนของเราในสหรัฐฯ และประเทศอื่นๆ