O avatar é a sua identidade em qualquer espaço no qual você entre. O módulo de desenvolvedor SocialInteractions permite que cada usuário se expresse melhor e tenha movimentos mais naturais, o que adiciona um toque de realismo à experiência.
O módulo inclui os seguintes recursos:
Orientação do corpo | Faz a cabeça dos avatares de todos olhar para onde a câmera do usuário está apontando por meio de uma mistura de rotação do pescoço e da cintura. Isso fornece uma sugestão sutil sobre os avatares com os quais se está interagindo. |
Animações do Chat | Adiciona vivacidade ao chat dentro da experiência, fazendo com que os avatares toquem animações ocasionalmente dependendo do conteúdo das mensagens que enviam. A lista de "palavras acionadoras" que ativam cada animação pode ser configurada. |
Uso do módulo
Instalação
Para usar o módulo SocialInteractions em uma experiência:
Na aba Exibir, abra a Caixa de ferramentas e selecione a aba Mercado.
Verifique se a ordenação de Modelos está selecionada e, em seguida, clique no botão Exibir Tudo para Categorias.
Encontre e clique no painel DEV MODULES
Encontre o módulo de Interações Sociais e clique nele, ou arraste e solte-o na visualização 3D.
Na janela do Explorador, mova todo o modelo SocialInteractions para o ServerScriptService. Ao executar a experiência, o módulo será distribuído para vários serviços e começará a ser executado.
Configuração
Bastar inserir o módulo SocialInteractions para ativar tanto a orientação de corpo quanto as animações de chat dentro da sua experiência. Para ajustar o comportamento padrão:
Em StarterPlayerScripts, crie um novo Class. LocalScript e renomeie-o para ConfigureSocialInteractions.
Cole o código a seguir em um novo script usando a função configure para personalizar o comportamento do módulo.
LocalScriptlocal ReplicatedStorage = game:GetService("ReplicatedStorage")local SocialInteractions = require(ReplicatedStorage:WaitForChild("SocialInteractions"))-- Make waist rotation more pronounced and disable the chat animations featureSocialInteractions.configure({waistOrientationWeight = 0.75,useChatAnimations = false,})
Palavras de acionamento de animações no chat
A lista de "palavras de acionamento" que ativam cada animação de chat é configurável. Padrões de string em Lua são usados para aumentar o número de palavras reconhecidas. Por exemplo, um combinação usada pela animação de onda, Wave, é he+y+o*, enquanto hey, heyyy, heyo, heyyyyo, heeeeyyyyo e outras variações se qualificam para acionar a animação.
Note que as palavras de acionamento não diferenciam maiúsculas de minúsculas, então digitar hey é o mesmo que HEY, Hey e outras variações.
Animação | ID de animação | Padrões de palavras |
---|---|---|
Acenar | 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+ |
Aplauso | 5911729486 | ya+y+ h[ou]+r+a+y+ woo+t* woo+h+oo+ bravo+ congratulations+ congrats+ gg pog+ poggers+ |
Concordo | 4841397952 | ye+s* ye+a+h* y[eu]+p+ o+k+ o+k+a+y+ |
Discordo | 4841401869 | no+ no+pe+ yi+ke+s+ |
Dar de ombros | 3334392772 | not+%s+sure+ idk+ don't%s+know+ i%s+don't%s+know+ who+%s+knows+ |
Rir | 3337966527 | lo+l+ rof+l+ ha[ha]* he[he]+ |
Dormir | 4686925579 | zzz+ yawn+ |
A lista de palavras de acionamento que ativam cada animação é configurável. Além disso, animações adicionais podem ser adicionadas por meio da função setTriggerWordsForChatAnimation. Por exemplo, Class. LocalScript a seguir vincula a animação inclinação, Tilt, ao padrão de string de cra+zy para oferecer suporte a palavras como crazy e craaaaaazy. Também registra padrões adicionais de string para coo+l na animação de Aplauso, oferecendo suporte a palavras como cool e coooool.
LocalScript
Onda
Referência de API
Funções
configurar
configure(config:table):nil
Substitui as opções de configuração padrão por meio das chaves-valor na tabela config. Esta função só poder ser chamada de um Class. LocalScript.
Chave | Descrição | Padrão |
---|---|---|
useBodyOrientation | Ativa o recurso de orientação do corpo. | true |
waistOrientationWeight | A orientação do corpo usa uma mistura de rotação da cintura e do pescoço. Esse parâmetro determina qual dos dois é prevalente. O valor de 1 enfatiza completamente a cintura, enquanto 0 enfatiza o movimento do pescoço. | 0.5 |
useChatAnimations | Ativa o recurso de animações de chat. | true |
useDefaultTriggerWordsForChatEmotes | As animações de chat têm uma lista de padrão de palavras de acionamento. Defina este parâmetro para false se você quiser desligá-lo e fornecer o seu. | true |
LocalScript
Dar de ombros
setTriggerWordsForChatAnimation
setTriggerWordsForChatAnimation(animationId:string, triggerWords:table):nil
Registra uma nova animação no recurso de animações de chat. Digitar qualquer palavra que corresponda a um padrão de string incluindo na tabela de triggerWords ativa a animação cuja ID foi passada como o primeiro parâmetro.
Note que as palavras de acionamento diferenciam minúsculas de maiúsculas para jogadores, então o padrão de woah aceitará frases e tenham woah, WOAH, Woah e outras variações.
LocalScript
`ya+y+``h[ou]+r+a+y+``woo+t*``woo+h+oo+``bravo+``congratulations+``congrats+``gg``pog+``poggers+`
Eventos
onChatAnimationPlayed
onChatAnimationPlayed(animationId:string, triggerWord:string): RBXScriptSignal
Dispara quando uma animação de chat toca. A função conectada recebe um ID de animação e palavra que acionou a animação como argumentos. O evento só pode ser conectado a um Class. LocalScript.
Parâmetros | |
---|---|
animationId: string | O ID da animação que foi tocada. |
triggerWord: string | Palavra do chat que acionou a animação. |
LocalScript
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SocialInteractions = require(ReplicatedStorage:WaitForChild("SocialInteractions"))
SocialInteractions.onChatAnimationPlayed:Connect(function(animationId, triggerWord)
print(animationId, triggerWord)
end)