แถบอีโมท

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

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

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

การติดตั้ง

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

  1. จากแท็บ ดู เปิด กล่องเครื่องมือ และเลือกแท็บ ร้านค้าผู้สร้าง

    Toolbox toggle button in Studio
  2. ตรวจสอบให้แน่ใจว่าการจัดเรียง รูปแบบ ถูกเลือกแล้วคลิกที่ปุ่ม ดูทั้งหมด สำหรับ หมวดหมู่

  3. ค้นหาและคลิกที่แท็บ โมดูลพัฒนา

  4. ค้นหาโมดูล แถบอีโมท และคลิกหรือลากลงไปในมุมมอง 3D

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

การกำหนดค่า

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

  1. ใน ServerScriptService สร้างใหม่ Script และเปลี่ยนชื่อเป็น กำหนดค่าอีโมท

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

    สคริปต์ - กำหนดค่าอีโมต

    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,
    },
    })

อีโมตเมกะ

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

ความเร็ว

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

การอ้างอิง API

ประเภท

อีโมท

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

กุญแจประเภทคําอธิบาย
nameสตริงชื่ออีโมท ตัวอย่างเช่น "Shrug" .
animationสตริงID แอนิเมชัน
imageสตริงท่าทางGUI
defaultTempoจํานวนแอนิเมชันความเร็ว 2 จะเล่นแอนิเมชั่นในความเร็วสองเท่าของปกติต้องมากกว่า 0
isLockedบูลว่าอีโมทถูก "ล็อค" จากการเปิดใช้งานหรือไม่

เอนุม

ประเภทอีโมทบาร์ .GuiType

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

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

ฟังก์ชัน

กำหนดค่าเซิร์ฟเวอร์

กำหนดค่าเซิร์ฟเวอร์(config: table )

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

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

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

กำหนดค่าไคลเอนต์

กำหนดค่าไคลเอนต์ (config: table )

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

กุญแจคําอธิบายค่าเริ่มต้น
guiTypeการควบคุมที่สร้าง GUI จะใช้สำหรับแสดงอีโมท ( EmoteBar.GuiType ).แถบอีโมท
useTempoเปิดใช้งานหรือปิดใช้งานคุณลักษณะ เวลา ที่ผู้ใช้สามารถควบคุมความเร็วหรือความช้าที่อีโมทของพวกเขาเล่นโดยการเปิดใช้งานอีโมทเดียวกันอย่างต่อเนื่องจริง
tempoActivationWindowจํานวนเวลาในวินาทีที่ผู้ใช้มีระหว่างการเปิดใช้งานต่อเนื่องของอีโมทเพื่อนับเป็นส่วนหนึ่งของจังหวะ3
lockedImageภาพที่จะแสดงอีโมทล็อคด้านบน“rbxassetid://6905802778”
สคริปท้องถิ่น - แถบอีโมท

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,
})
สคริปท้องถิ่น - ล้อแสดงอารมณ์

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

ตั้งค่าอีโมท

ตั้งอีโมท(อีโมท: table )

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

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

สคริปต์ - กำหนดค่าอีโมต

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,
},
})

ตั้งค่าการมองเห็น GUI

ตั้งค่าความเห็นยินยอม (visible: boolean )

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

สคริปท์ท้องถิ่น

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

รับอีโมท

รับอีโมท(ชื่ออีโมท: string ): table

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

สคริปท์ท้องถิ่น

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

เล่นอีโมท

เล่นอีโมท(ท่าทาง: อีโมท )

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

สคริปท์ท้องถิ่น

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

ล็อคอีโมท

ล็อคอีโมท (ชื่ออีโมท: string )

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

สคริปท์ท้องถิ่น

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

ปลดล็อคอีโมท

ปลดล็อคอีโมท (ชื่ออีโมท: string )

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

สคริปท์ท้องถิ่น

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

อีเวนต์

โผล่ขึ้นมาเล่น emote

ท่าทางอีเวนต์นี้สามารถเชื่อมต่อได้เฉพาะใน LocalScript

พารามิเตร
ผู้เล่น: Playerผู้เล่นที่แสดงอารมณ์ออกมา
ท่าทาง: อีโมทอีโมทที่เล่น
สคริปท์ท้องถิ่น

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

ล็อคอีโมทเปิดใช้งาน

ท่าทางอีเว้นท์นี้สามารถเชื่อมต่อได้เฉพาะใน LocalScript

พารามิเตร
ท่าทาง: อีโมทอีโมตล็อคที่ถูกเปิดใช้งาน
สคริปท์ท้องถิ่น

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)