Emotki są głównym komponentem każdego doświadczenia społecznościowego. EmoteBarmoduł rozwoju ma na celu zapewnić graczom dostępny, dostosowywalny sposób na ułatwienie znaczącej interakcji społecznej.
Użyj modułu
Instalacja
Aby użyć modułu EmoteBar w doświadczeniu:
Z zakładki Zobacz, otwórz Skrzynię narzędzi i wybierz Sklep z twórcami.
Upewnij się, że Modele sortowanie jest zaznaczone, a następnie kliknij przycisk Zobacz wszystko dla Kategorie.
Lokalizuj i klikaj na płytę Moduły Rozwoju .
Lokalizuj moduł Emote Bar i kliknij go, lub przeciągnij go do 3D.
W oknie Explorer przenieś cały model EmoteBar do ServerScriptService . Po uruchomieniu doświadczenia moduł zostanie rozdzielony na różne usługi i zacznie działać.
Konfiguracja
Moduł jest wcześniej skonfigurowany z 7 emotikonami i można go łatwo dostosować za pomocą własnych emotikon i opcji wyświetlania. Ponadto, jeśli gracz posiada jakiekolwiek emotikony z poprzednich wydarzeń Roblox, takich jak Lil Nas X, Royal Blood lub Twenty One Pilots, te emotikony zostaną automatycznie dodane do listy dostępnych emotikon.
W ServerScriptService, utwórz nowy Script i zmień jego nazwę Konfiguruj Emotki.
Wklej następujący kod do nowego konfiguruj Emotki skryptu. Ustawienie useDefaultEmotes``false Emotki domyślne i pozwala na określenie niestandardowych emotik poprzez funkcję 2>setEmotes2>.
Skrypt - Konfiguruj Emotkilocal 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,},})
Mega Emotki
Mega emote jest tworzony, gdy kilku graczy w tej samej obszarze wykonuje to samo emote w tym samym czasie. Im więcej graczy dołącza, tym większa jest mega emote. Gdy gracze przestają wykonuje emotka, mega emote staje się mniejsza, aż w końcu zniknie.
Tymczas
Prędkość czasu emotkajest szybkością, w jakiej gra, gdy jego przycisk jest naciśnięty raz. Domyślną szybkość emota jest określona przez jego defaultTempo. Prędkość emotkamożna zwiększyć lub zmniejszyć, klikając jego przycisk szybciej lub wolniej.
Referencja API
Typy
Emotki
Każda emota jest zapisana w słowniku z następującymi parami kluczowych:
Klucz | Typ | Opis |
---|---|---|
name | ciąg | Nazwa emotki, na przykład "Shrug". |
animation | ciąg | ID zasobu dla animacjaemotka. |
image | ciąg | ID zasobu dla obrazu emotkaw interfejsie użytkownika. |
defaultTempo | liczba | Domyślny czynnik prędkości, w którym można odtwarzyć animacjaemotki. Na przykład, czas trwania 2 odtwarzy animację w dwóch razy większą niż normalna prędkość. Musi być większy niż 0. |
isLocked | boolean | Czy emotka jest "zablokowana" od aktywowania. |
Enumy
EmoteBar.GuiTyp
Nazwa | Podsumowanie |
---|---|
EmoteBar | Domyślna forma, w której emotki są wyświetlane w barze po dole ekranu, podzielone na poszczególne "strony". |
EmoteWheel | Wariant, w którym emotki są wyświetlane w pierścieniu, gdy gracz klika lub dotyka ich postaci gracza. |
Lokalny Skrypt
local ReplicatedStorage = game:GetService("ReplicatedStorage")local EmoteBar = require(ReplicatedStorage:WaitForChild("EmoteBar"))EmoteBar.configureClient({guiType = EmoteBar.GuiType.EmoteWheel,})
Funkcje
Konfiguruj Server
Przywraca domyślne opcje konfiguracji serwerowej poprzez następujące klucze/werte w tabeli config. Ta funkcja może być wywołana tylko z Script i zmiany zostaną automatycznie sklonowane na wszystkie klienty.
Klucz | Opis | Domyślny |
---|---|---|
useDefaultEmotes | Czy dostępne domyślne emotki są włączone lub nie. | prawdziwy |
useMegaEmotes | Włącza lub wyłącza funkcjamega emotikon. | prawdziwy |
emoteMinPlayers | Minimalna liczba graczy, którzy wykonują ten sam emote, aby przyczynić się do mega emotka. | 3 |
emoteMaxPlayers | Maksymalna liczba graczy, którzy wykonują ten sam emote, aby przyczynić się do mega emotka. | 50 |
playParticles | Włącza lub wyłącza emotki, które gracze grają jako pływające cząsteczki nad ich głowami. | prawdziwy |
sendContributingEmotes | Włącza lub wyłącza wysyłanie małego ikona emote, aby przyczynić się do mega emotka. | prawdziwy |
Skrypt
local ReplicatedStorage = game:GetService("ReplicatedStorage")local EmoteBar = require(ReplicatedStorage:WaitForChild("EmoteBar"))EmoteBar.configureServer({emoteMinPlayers = 2,playParticles = false,})
skonfigurujClient
Przywraca domyślne opcje konfiguracji strony klienta poprzez następujące klucze/wartości w tabeli config. Ta funkcja może być wywołana tylko z LocalScript . W zależności od wartości guiType opcje w zakładkach zastosowania również mają zastosowanie.
Klucz | Opis | Domyślny |
---|---|---|
guiType | Kontrole, które tworzą GUI, będą wyświetlać emotki ( EmoteBar.GuiType ). | EmoteBar |
useTempo | Włącza lub wyłącza funkcję czasu, która umożliwia użytkownikom kontrolowanie, jak szybko lub powoli odtwarzane są ich emotki, poprzez ponowne aktywowanie tego samego rytmu emotki. | prawdziwy |
tempoActivationWindow | Ilość czasu, w sekundach, użytkownik ma między kolejnymi aktywacjami emota, aby liczyć go jako część czasu. | 3 |
lockedImage | Obraz do wyświetlenia nad głową zablokowanych emotikon. | „rbxassetid://6905802778” |
Lokalny Skrypt - Emotki Bar
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,})
Lokalny Skrypt - Emote Wheel
local ReplicatedStorage = game:GetService("ReplicatedStorage")local EmoteBar = require(ReplicatedStorage:WaitForChild("EmoteBar"))EmoteBar.configureClient({guiType = EmoteBar.GuiType.EmoteWheel,})
Ustaw Emotki
Ustawia używane emotki. Te zostaną dodane do domyślnych, jeśli useDefaultEmotes jest true lub zastąpione domyślnie, jeśli useDefaultEmotes jest 2> auto2> . Ta funkcja może być wywołana tylko z 5> Class.Script5> i zmiany zost
Zobacz Emote dla struktury każdego przekazanego emota do tej funkcji.
Skrypt - Konfiguruj Emotki
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,},})
ustawG widoczność
Pokazuje lub ukrywa GUI emotikon. Ta funkcja może być wywołana tylko z LocalScript na określonym kliente.
Lokalny Skrypt
local ReplicatedStorage = game:GetService("ReplicatedStorage")local EmoteBar = require(ReplicatedStorage:WaitForChild("EmoteBar"))EmoteBar.setGuiVisibility(false)
dostańEmote
Dostaje Emotikonę przez imię. Występuje nil jeśli emotikonę nie można znaleźć. Ta funkcja może być uruchomiona tylko z LocalScript na określonym klencie.
Lokalny Skrypt
local ReplicatedStorage = game:GetService("ReplicatedStorage")local EmoteBar = require(ReplicatedStorage:WaitForChild("EmoteBar"))local shrug = EmoteBar.getEmote("Shrug")
grajEmote
Odtwarza dany Emote i wysyła wydarzenie emotePlayed na serwerze, jeśli jest połączone. Ta funkcja może być wywołana tylko z LocalScript na konkretnym kliente.
Lokalny Skrypt
local ReplicatedStorage = game:GetService("ReplicatedStorage")local EmoteBar = require(ReplicatedStorage:WaitForChild("EmoteBar"))local shrug = EmoteBar.getEmote("Shrug")EmoteBar.playEmote(shrug)
Zablokuj Emoty
Zablokuje Emotę z podanym nazwą. Ta funkcja może być wywołana tylko z LocalScript na klienta.
Lokalny Skrypt
local ReplicatedStorage = game:GetService("ReplicatedStorage")local EmoteBar = require(ReplicatedStorage:WaitForChild("EmoteBar"))EmoteBar.lockEmote("Applaud")
OdblokujEmote
Odblokowuje Emote z podanym nazwiskiem. Ta funkcja może być wywołana tylko z LocalScript na klienta.
Lokalny Skrypt
local ReplicatedStorage = game:GetService("ReplicatedStorage")local EmoteBar = require(ReplicatedStorage:WaitForChild("EmoteBar"))EmoteBar.unlockEmote("Applaud")
Wydarzenia
emoteGrał
Występuje, gdy dowolny kliент gra emotka. Ten wątek może być połączony tylko w LocalScript .
Lokalny Skrypt
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local EmoteBar = require(ReplicatedStorage:WaitForChild("EmoteBar"))
EmoteBar.emotePlayed:Connect(function(player, emote)
print(player.Name, "played", emote.name)
end)
zablokowaneEmoteAktywowane
Występuje, gdy klient klika zablokowaną emotka. Ten wydarzenie może być połączony tylko w LocalScript .
Parametry | |
---|---|
emotka: Emotka | Zablokowano emotę, która została aktywowana. |
Lokalny Skrypt
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)