Twój awatar jest twoją tożsamością w każdej przestrzeni, którą wchodzisz. Moduł SocialInteractions moduł dewelopera pozwala każdemu użytkownikowi lepiej wyrażać siebie i swoje naturalne ruchy, dodając odrobinę realizmu do doświadczenia.
Moduł ten zawiera następujące funkcje:
| Orientacja Ciała | Sprawia, że głowa awatara każdej osoby zwraca się w kierunku, w którym wskazuje kamera ich użytkownika, poprzez mieszankę rotacji szyi i talii. Daje to subtelny sygnał, z kim lub czym ktoś inny wchodzi w interakcję. |
| Animacje Czatowe | Dodaje żywości do czatu w doświadczeniu, sprawiając, że awatary od czasu do czasu wykonują animacje, w zależności od treści wiadomości, które wysyłają. Lista "słów uruchamiających", które aktywują każdą animację, jest konfigurowalna. |
Użycie modułu
Instalacja
Aby użyć modułu SocialInteractions w doświadczeniu:
Z menu Okno w Studio lub z paska narzędzi w zakładce Strona główna, otwórz Toolbox i wybierz zakładkę Sklep Stwórców.

Upewnij się, że wybrano sortowanie Modele, a następnie kliknij przycisk Zobacz wszystkie dla Kategorii.

Znajdź i kliknij kafelek Pakiety.
Znajdź moduł Interakcje Społeczne i kliknij go lub przeciągnij go do widoku 3D.

W oknie Eksploratora przenieś cały model SocialInteractions do ReplicatedStorage. Po uruchomieniu doświadczenia moduł zacznie działać.
Konfiguracja
Proste wstawienie modułu SocialInteractions włączy zarówno funkcję orientacji ciała, jak i animacji czatowych w twoim miejscu. Aby dostosować domyślne zachowanie:
W StarterPlayerScripts utwórz nowy LocalScript i zmień jego nazwę na ConfigureSocialInteractions.

Wklej poniższy kod do nowego skryptu, używając funkcji configure, aby dostosować zachowanie modułu.
LocalScriptlocal ReplicatedStorage = game:GetService("ReplicatedStorage")local SocialInteractions = require(ReplicatedStorage.SocialInteractions)-- Zwiększ efekt rotacji talii i wyłącz animacje czatoweSocialInteractions.configure({waistOrientationWeight = 0.75,useChatAnimations = false,})
Słowa uruchamiające animacje czatowe
Lista "słów uruchamiających", które aktywują każdą animację czatową, jest konfigurowalna, a wzory ciągów Luau są wykorzystywane do zwiększenia rozpoznawalnych słów. Na przykład jedna kombinacja używana przez animację Fala to he+y+o*, co oznacza, że hey, heyyy, heyo, heyyyyo, heeeeyyyyo i inne warianty kwalifikują się do uruchomienia animacji.
Zauważ również, że słowa uruchamiające są nieczułe na wielkość liter, więc wpisanie hey jest takie samo jak HEY, Hey i inne warianty.
| Animacja | ID Animacji | Wzory Słów |
|---|---|---|
| Fala | 3344650532 | hell+o+ h+i+o* wa+[sz]+u+p+ y+o+ greetings* salutations* goo+d+%smorning+ he+y+o* howdy+ what's*%s*up+ |
| Oklaski | 5911729486 | ya+y+ h[ou]+r+a+y+ woo+t* woo+h+oo+ bravo+ congratulations+ congrats+ gg pog+ poggers+ |
| Zgoda | 4841397952 | ye+s* ye+a+h* y[eu]+p+ o+k+ o+k+a+y+ |
| Nie zgadzam się | 4841401869 | no+ no+pe+ yi+ke+s+ |
| Wzruszenie ramion | 3334392772 | not+%s+sure+ idk+ don't%s+know+ i%s+don't%s+know+ who+%s+knows+ |
| Śmiech | 3337966527 | lo+l+ rof+l+ ha[ha]* he[he]+ |
| Sen | 4686925579 | zzz+ yawn+ |
Lista słów uruchamiających, które aktywują każdą animację, jest konfigurowalna, a dodatkowe animacje można dodać za pomocą funkcji setTriggerWordsForChatAnimation. Na przykład poniższy LocalScript łączy animację Tilt z wzorem ciągu cra+zy, aby wspierać słowa uruchamiające, takie jak crazy i craaaaaazy. Rejestruje również dodatkowy wzór ciągu coo+l dla animacji Oklaski, aby wspierać słowa takie jak cool i coooool.
LocalScriptlocal ReplicatedStorage = game:GetService("ReplicatedStorage")local SocialInteractions = require(ReplicatedStorage.SocialInteractions)-- Zarejestruj wzór ciągu dla animacji "Tilt"SocialInteractions.setTriggerWordsForChatAnimation("rbxassetid://3334538554", {"cra+zy"})-- Zarejestruj dodatkowy wzór ciągu dla animacji "Oklaski"SocialInteractions.setTriggerWordsForChatAnimation("rbxassetid://5911729486", {"coo+l"})
Dokumentacja API
Funkcje
configure
configure(config: table)
Nadpisuje domyślne opcje konfiguracyjne za pomocą następujących kluczy/wartości w tabeli config. Ta funkcja może być wywoływana tylko z LocalScript.
| Klucz | Opis | Domyślnie |
|---|---|---|
| useBodyOrientation | Włącza lub wyłącza funkcję orientacji ciała. | true |
| waistOrientationWeight | Orientacja ciała używa mieszanki rotacji talii i szyi; ten parametr określa, która z dwóch jest dominująca. Wartość 1 kładzie całkowity nacisk na talię, a 0 kładzie całkowity nacisk na szyję. | 0.5 |
| useChatAnimations | Włącza lub wyłącza funkcję animacji czatowych. | true |
| useDefaultTriggerWordsForChatEmotes | Animacje czatowe zawierają domyślną listę słów uruchamiających. Ustaw ten parametr na false, jeśli chcesz je wyłączyć i zamieścić swoje własne. | true |
LocalScriptlocal ReplicatedStorage = game:GetService("ReplicatedStorage")local SocialInteractions = require(ReplicatedStorage.SocialInteractions)-- Zwiększ efekt rotacji talii i wyłącz animacje czatoweSocialInteractions.configure({waistOrientationWeight = 0.75,useChatAnimations = false,})
setTriggerWordsForChatAnimation
setTriggerWordsForChatAnimation(animationId: string, triggerWords: table)
Rejestruje nową animację w funkcji animacji czatowych. Wpisanie jakiegokolwiek słowa, które pasuje do wzoru ciągu zawartego w tabeli triggerWords, uruchomi animację, której ID przekazano jako pierwszy parametr.
Zauważ, że słowa uruchamiające są nieczułe na wielkość liter dla graczy, więc wzór woah zaakceptuje frazy czatowe woah, WOAH, Woah i inne warianty.
LocalScriptlocal ReplicatedStorage = game:GetService("ReplicatedStorage")local SocialInteractions = require(ReplicatedStorage.SocialInteractions)-- Zarejestruj nowy wzór ciągu dla niestandardowej animacjiSocialInteractions.setTriggerWordsForChatAnimation("rbxassetid://3334538554",{"cra+zy", "woah+"})
Zdarzenia
onChatAnimationPlayed
Wywołuje się, gdy animacja czatowa jest odtwarzana. Podłączona funkcja otrzymuje ID animacji oraz słowo, które uruchomiło animację jako swoje argumenty. To zdarzenie może być podłączone tylko w LocalScript.
| Parametry | |
|---|---|
| animationId: string | ID animacji, która była odtwarzana. |
| triggerWord: string | Słowo czatowe, które uruchomiło animację. |
LocalScript
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SocialInteractions = require(ReplicatedStorage.SocialInteractions)
SocialInteractions.onChatAnimationPlayed:Connect(function(animationId, triggerWord)
print(animationId, triggerWord)
end)