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:
Từ trang Xem, mở trang Hộp công cụ và chọn trang Cửa hàng Creator .
Đả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 .
Tìm và nhấp vào Dev Modules mảnh.
Tìm Emote Bar module và nhấp vào nó, hoặc kéo nó vào 3D view.
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
Trong ServerScriptService , tạo một Script mới và đổi tên nó thành Tùy chỉnh biểu cảm .
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ảmlocal 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óa | Kiểu | Mô tả |
---|---|---|
name | chuỗi | Tên biểu cảm, ví dụ "Shrug" . |
animation | chuỗi | ID tài sản cho hoạt hiệu ứng độngcủa biểu cảm. |
image | chuỗi | ID tài nguyên cho hình ảnh biểu cảmtrong GUI. |
defaultTempo | con 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. |
isLocked | boolean | Có phải biểu tượng được "khóa" khỏi khi được kích hoạt. |
Số
EmoteBar.GuiLoại
Tên | Tổng kết |
---|---|
EmoteBar | Mặ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ẻ. |
EmoteWheel | Biế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ủ
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óa | Mô tả | Mặc định |
---|---|---|
useDefaultEmotes | Có phải các khuôn mặt được cung cấp làm mặt mặc định hay không. | đúng |
useMegaEmotes | Bật hoặc tắt tính năng cười mega | đúng |
emoteMinPlayers | Số 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 |
emoteMaxPlayers | Số 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 |
playParticles | Mở 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 |
sendContributingEmotes | Mở 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
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óa | Mô tả | Mặc định |
---|---|---|
guiType | Các điều khiển hình thành GUI sẽ được hiển thị biểu cảm ( EmoteBar.GuiType ). | EmoteBar |
useTempo | Mở 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 |
tempoActivationWindow | Số 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 |
lockedImage | Hì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
Đặ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ị
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ậ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ơ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
Đă 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ó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 .
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)