Bar biểu cảm

*Nội dung này được dịch bằng AI (Beta) và có thể có lỗi. Để xem trang này bằng tiếng Anh, hãy nhấp vào đây.

Biểu cảm là một thành phần chính của bất kỳ trải nghiệm xã hội nào. The EmoteBar 模块 nhà phát triển nhắm tới cung cấp cho người chơi một cách truy cập, tùy chỉnh có thể tùy chỉnh để dễ dàng hơn cho các tương tác xã hội có ý nghĩa.

Sử dụng mô-đun

Cài đặt

Để sử dụng module EmoteBar trong một trải nghiệm:

  1. Từ trang Xem, mở trang Hộp công cụ và chọn trang Cửa hàng Creator .

    Toolbox toggle button in Studio
  2. Đảm bạn chắn chọn Mô Hình sắp xếp, then click the Xem tất cả button for Các danh mục .

  3. Tìm và nhấp vào Dev Modules mảnh.

  4. Tìm Emote Bar module và nhấp vào nó, hoặc kéo nó vào 3D view.

  5. Trong cửa sổ Trình phát, di chuyển toàn bộ mô hình EmoteBar đến ServerScriptService . Khi chạy trải nghiệm, mô-đun sẽ được phân bố đến các dịch vụ khác nhau và bắt đầu chạy.

Tùy chỉnh

Modul này đã được cấu hình với 7 biểu cảm và có thể được tùy chỉnh dễ dàng với các biểu cảm của riêng bạn và lựa chọn hiển thị. Ngoài ra, nếu người chơi sở hữu bất kỳ biểu cảm nào từ các sự kiện Roblox trước đó như Lil Nas X, Royal Blood hoặc Twenty One

  1. Trong ServerScriptService , tạo một Script mới và đổi tên nó thành Tùy chỉnh biểu cảm .

  2. Sao chép mã sau đây vào new ConfigureEmotes script. The useDefaultEmotes setting of false overrides the default emotes và cho phép bạn định nghĩa các emote tùy chỉnh via the 1> setEmotes1> function.

    Script - Tùy chỉnh biểu cảm

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

Cảm xúc Mega

Một mega emote được hình thành khi nhiều người chơi trong cùng một khu vực thực hiện cùng một emote tại cùng một thời điểm. Khi nhiều người chơi hơn bị tham gia vào, mega emote lớn hơn. Khi người chơi dừng thực hiện biểu cảm, mega emote sẽ thu nhỏ cho đến khi cuố

Tempo

Thời gian trễ của một biểu cảmlà tốc độ mà nó chơi khi nút của nó được nhấn một lần. Tốc độ mặc định của một emote được xác định bởi defaultTempo của nó. Tốc độ của một biểu cảmcó thể được tăng hoặc giảm bằng cách nhấ

Tham khảo API

Các loại

Biểu cảm

Mỗi biểu cảm được diễn tả bởi một từ điển với các cặp giá trị chìa khóa sau đây:

Chìa khóaKiểuMô tả
namechuỗiTên biểu cảm, ví dụ "Shrug" .
animationchuỗiID tài sản cho hoạt hiệu ứng độngcủa biểu cảm.
imagechuỗiID tài nguyên cho hình ảnh biểu cảmtrong GUI.
defaultTempocon sốYếu tố tốc độ mặc định mà bạn có thể chơi hoạt hiệu ứng động. Ví dụ, một thời gian của 2 sẽ chơi hoạt họa ở hai lần tốc độ bình thường của nó. Phải lớn hơn 0.
isLockedbooleanCó phải biểu tượng được "khóa" khỏi khi được kích hoạt.

Số

EmoteBar.GuiLoại

TênTổng kết
EmoteBarMặt định nghĩa mặc định nơi các biểu tượng được hiển thị trong một thanh ở phía dưới của màn hình, chia thành các trang riêng lẻ.
EmoteWheelBiến thể nơi các biểu cảm được hiển thị trong một vòng khi một người chơi nhấp chuột hoặc nhấp vào nhân vật người chơi của họ.
Script địa phương

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

Hàm

Tùy chỉnh máy chủ

配置Server(config: table )

Làm trái ngược lại các tùy chọn cấu hình bên trên của máy chủ thông qua các chìa khóa/giá trị được đề xuất dưới đây trong bảng config của Script. Chức năng này chỉ có thể được gọi từ một Class.Script và sự thay đổi sẽ tự động sao chép đến tất c

Chìa khóaMô tảMặc định
useDefaultEmotesCó phải các khuôn mặt được cung cấp làm mặt mặc định hay không.đúng
useMegaEmotesBật hoặc tắt tính năng cười megađúng
emoteMinPlayersSố lượng tối thiểu của người chơi thực hiện cùng một biểu cảm để đóng góp vào một biểu cảm mega.3
emoteMaxPlayersSố lượng tối đa người chơi thực hiện cùng một biểu cảm để đóng góp cho một biểu cảm mega.50
playParticlesMở hoặc tắt các biểu cảm mà người chơi đang chơi như các hạt nổi trên đầu của họ.đúng
sendContributingEmotesMở hoặc đóng một biểu tượng emote nhỏ để đóng góp vào mega biểu cảm.đúng
Tập lệnh

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

tùy chỉnhClient

配置Client(config: table )

Làm trái ngược lại các tùy chọn cài đặt bên trình client qua các chìa khóa/giá trị được đề xuất trong bảng config . Chức năng này chỉ có thể được gọi từ một LocalScript . Tùy thuộc vào giá trị của guiType, các tùy chọ

Chìa khóaMô tảMặc định
guiTypeCác điều khiển hình thành GUI sẽ được hiển thị biểu cảm ( EmoteBar.GuiType ).EmoteBar
useTempoMở hoặc đóng feature tempo cho phép hoặc không cho phép người dùng kiểm soát tốc độ phát của các biểu cảm bằng cách tái tạo cùng một lượt chơi cảm xúc của các biểu cảm.đúng
tempoActivationWindowSố thời gian, trong giây, người dùng có giữa các hoạt động theo thứ tự của một biểu tượng để đếm nó như một phần của thời gian.3
lockedImageHình ảnh để hiển thị những kẻ địch bị khóa trên cùng.“rbxassetid://6905802778”
LocalScript - Bar biểu cảm

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,
})
LocalScript - Bánh xe biểu cảm

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

setBiểu tượng

setEmotes(emotes: table )

Đặt các biểu cảm tùy chỉnh để sử dụng. Điều này sẽ được thêm vào các giá trị mặc định nếu useDefaultEmotes được true , hoặc thay thế các giá trị mặc định nếu useDefaultEmotes

Xem Emote cho cấu trúc của mỗi emote được truyền cho chức năng này.

Script - Tùy chỉnh biểu cảm

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

đặt Hội suất hiển thị

setGuiVisibility(hiển thị: boolean )

Hiển thị hoặc ẩn GUI biểu tượng. Chức năng này chỉ có thể được gọi từ một LocalScript trên một máy chủ cụ thể.

Script địa phương

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

nhận Emote

nhậnEmote(emoteName: string>: table

Nhận một Emote bằng tên. Đổi lại nil nếu không thể tìm thấy emote. Đây chỉ có thể được gọi từ một LocalScript trên một máy chủ cụ thể.

Script địa phương

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

chơiEmote

chơiEmote(biểu cảm: Emote )

Chơi các biểu tượng được cho và kích hoạt sự kiện emotePlayed trên máy chủ, nếu có kết nối. Đây chỉ có thể được gọi từ một Class.LocalScript trên một máy chủ cụ thể.

Script địa phương

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

Đăm đăm

lockEmote(emoteName: string )

Đă ký Emote với tên đã được cung cấp. Chức năng này chỉ có thể được gọi từ một LocalScript trên client.

Script địa phương

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

Mở khóa biểu tượng

mở khóaEmote(emoteName: string )

Mở khóa Emote với tên đã được cung cấp. Chức năng này chỉ có thể được gọi từ một LocalScript trên client.

Script địa phương

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

Sự kiện

emoteĐã chơi

Kích hoạt khi bất kỳ khách hàng nào chơi một biểu cảm. Sự kiện này chỉ có thể được kết nối trong một LocalScript .

Các biến
người chơi: PlayerNgười chơi đã thực hiện hành động.
biểu cảm: EmoteBiểu tượng đã được chơi.
Script địa phương

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

đã mở khóa

Lửa khi một khách hàng nhấp vào một biểu cảm bị khóa. Sự kiện này chỉ có thể được kết nối trong một LocalScript .

Các biến
biểu cảm: EmoteĐã kích hoạt cảm xúc bị khóa.
Script địa phương

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)