Ferramentas de In-Experience

*Este conteúdo é traduzido por IA (Beta) e pode conter erros. Para ver a página em inglês, clique aqui.

In-experience Tools são ferramentas interativas que os usuários podem equipar em sessões, como espadas, lançadores de foguetes e varinhas mágicas. Você pode criar ferramentas personalizadas na experiência, colocá-las na sua hierarquia de experiência e escrever scripts para implementá-las para seus usuários.

Criando uma Ferramenta In-Experience

Para o primeiro passo de criar qualquer ferramenta na experiência, você precisa criar um objeto de ferramenta para conter todos os elementos que compõem a ferramenta. Você pode então adicionar outros instâncias ao objeto de ferramenta incluindo peças e malhas, efeitos sonoros e scripts que fornecem funcionalidades. Você também

Criando o Objeto de Ferramenta

Você pode criar um novo objeto de ferramenta com as seguintes etapas:

  1. Na janela Explorer , passe o mouse sobre Espaço de Trabalho e clique no botão para mostrar a lista de objetos.

  2. Selecione Ferramenta abaixo da categoria Interação .

Adicionando Peças ou Malhas

Depois de criar o Objetode ferramenta, você precisa adicionar Parts ou MeshParts ao modelo de ferramenta ou criar a ferramenta como um item de inventário sem peças e malhas sem peças e malhas. Como outros modelos, f

Se você quiser criar uma ferramenta sem adicionar peças ou malhas, você pode criá-la como um item de inventário .

Configurando o Cabo da Ferramenta

Para habilitar os usuários a carregar ferramentas ao redor, você precisa definir um Part e nomeá-lo Handle para ser conectado à mão do usuário. O seguinte exemplo mostra uma varinha mágica com três partes: uma dica brilhante, o corpo principal e uma Manipulador / alçavermelha. Quando um usuário

Certifique-se de ter apenas um Part chamado Handle . Se você nomear vários Parts como 1> Handle1> , a ferramenta escolhe aleatoriamente um deles como ponto de anexo de mão que pode causar problemas, como usuários segurando espadas de espadas em vez de alças.

Ajustando a Orientação do Empunhadura da Ferramenta

Se a orientação do cabo de sua ferramenta estiver errada, como arrastar no chão ou olhar para trás, você pode corrigi-lo ajustando Grip propriedades sob a categoria Aparência na janela Propriedades .

Como a orientação ideal para cada ferramenta é diferente, você precisa experimentar com a mudança de valores ao lado da GripForward, GripRight e GripUp propriedades até que sua ferramenta fique correta. O seguinte exemplo mostra possíveis garras inválidas e corretas para uma varinha mágica:

Ferramenta arrastando no chão
Ferramenta voltada para trás
Ferramenta orientada corretamente.

Você também pode habilitar personagens de usuário para desviar ferramentas de sua mão com a propriedade GripPos . Isso pode ser útil ao fazer uma ferramenta que deve aparecer em seu ombro.

Deslocamento padrão (0,0,0)
Deslocamento da ferramenta para o ombro

Personalizando o ícone de ferramentas

As ferramentas que um usuário possui são armazenadas em seu Backpack. Os usuários podem visualizar o ícone de cada ferramenta em seus sacos nas barras de ação em uma barra de ação:

Na janela Propriedades da ferramenta, use as propriedades a seguir para personalizar a aparência da ferramenta na barra de ação:

  • TextureID — O ícone de ferramentas. Defina o ID da imagem para esta propriedade da mesma maneira que decalques e botões de imagem.
  • ToolTip — O nome da dica de ferramentas.

Habilitando e Desabilitando Usuários para Soltar Ferramentas

Por padrão, um usuário pode derrubar uma ferramenta pressionando a tecla Backspace no Windows ou delete no Mac. Você pode desativar essa opção configurando a propriedade CanBeDropped da ferramenta para 2>

Criando Ferramentas Como Itens de Inventário

Você também pode fazer uma ferramenta de in-experience sem peças ou malhas como um item de inventário que aguarda a entrada do usuário, como um feitiço mágico que os personagens do usuário podem clicar em outros ou tocar a tela para invocá-lo. As ferramentas de inventário não requerem alças, então você precisa desmarcar a propriedade RequiresHandle na janela de propriedades da ferramenta.

Adicionando Ferramentas à sua Experiência

Uma vez que você terminar de configurar sua ferramenta na experiência, você precisa colocá-la na área correspondente da hierarquia de objetos da experiência. Onde você coloca a ferramenta dentro da hierarquia de objetos da experiência depende de seu uso pretendido.

Ferramenta de Inicialização Padrão

Se você quiser que todos os usuários comecem com uma ferramenta em seu inventário, coloque-a dentro da pasta StarterPack . Quando qualquer usuário gerar, o sistema copia a ferramenta para sua mochila.

Ferramenta Colecionável

Se você quiser permitir que os usuários coletem ferramentas enquanto se movimento, você pode colocar as ferramentas no Workspace na Explorer hierarquia. Por exemplo, você pode querer colocar um lançador de super rockets em uma área difícil de alcançar do seu mundo de experiência.

Ferramenta Comprada e Ganha

Se você quiser definir uma ferramenta como uma recompensa quando um usuário fizer algo especial ou oferecê-lo para venda em uma loja de in-experience, coloque a ferramenta dentro de Armazenamento do Servidor na hierarquia Explorer, que pode clonar a ferramenta para o usuário na mochila no momento certo.

Adicionando Efeitos de Ferramentas

Depois de adicionar suas ferramentas à sua experiência, você pode adicionar scripts para permitir que os usuários usem ferramentas para fazer efeitos especiais.

Eventos Específicos de Ferramentas

Você pode usar as quatro condições específicas de ferramentas para indicar o estado da ferramenta e a entrada do usuário com ela em seu script de ferramentas:

  • Tool:Equipped() : Ocorre quando o usuário seleciona a ferramenta da mochila.

  • Tool:Unequipped() : Ocorre quando o usuário deixa cair a ferramenta ou troca de ferramentas.

  • Tool:Activated() : Ocorre quando o usuário começa a ativar a ferramenta (cliques, toques ou pressiona A em um controle / controle de jogo).

  • Tool:Deactivated() : Ocorre quando o usuário para a inativação de ativação (libera o botão ou toque).

Embora você pode não precisar de todas as quatro condições ao projetar uma ferramenta, você pode usar o seguinte script de código como um modelo de script de ferramenta básico:


local tool = script.Parent
local function onEquip()
print("The tool is now equipped.")
end
local function onUnequip()
print("The tool is now unequipped.")
end
local function onActivate()
print("The tool is now activated.")
end
local function onDeactivate()
print("The tool is now deactivated.")
end
tool.Equipped:Connect(onEquip)
tool.Unequipped:Connect(onUnequip)
tool.Activated:Connect(onActivate)
tool.Deactivated:Connect(onDeactivate)

Este código de exemplo pressupõe que o script é um filho de nível inicial dentro do Objetode ferramentas. Se o script estiver em outro lugar, ajuste o caminho na linha 1 (o valor de tool ) para apontar para o Objetode ferramenta central.

Adicionando um Script Básico

O seguinte exemplo mostra etapas para adicionar um Script no servidor que permite que os usuários equipem uma varinha mágica que pode alternar o dia e a noite clicando na tela:

  1. Na janela Explorer, hover over the tool object and click the button to insert a Script .

  2. Copie o seguinte código e cole-o em seu Script .


    local Lighting = game:GetService("Lighting")
    local tool = script.Parent
    local function onActivate()
    if Lighting.ClockTime >= 8 and Lighting.ClockTime < 16 then
    Lighting.ClockTime = 20
    else
    Lighting.ClockTime = 8
    end
    end
    tool.Activated:Connect(onActivate)
  3. Teste sua experiência pegando a ferramenta e clicando em qualquer lugar na tela de sua experiência para mudar entre o dia e a noite:

Diferentes Tipos de Scripts para Implantação de Ferramentas

Algumas ferramentas só precisam de um Script no servidor para implementar, como o exemplo anterior, mas a maioria das ferramentas requer um Script no servidor e um LocalScript no cliente, onde cada uma cuida de alguns aspectos do comportamento da ferramenta.

Antes de adicionar seus scripts, certifique-se de entender a diferença central entre cada digitarde script:

  • Script gerencia alterações dentro do mundo de experiência geral visível para todos os usuários, como desbloquear uma porta e atirar uma seta.
  • LocalScript gerencia coisas que acontecem apenas no dispositivo do usuário, como detectar a localização de onde eles tocam ou clicam na tela.

Aqui estão alguns exemplos de ferramentas e seus comportamentos gerenciados por um script local ou um script do servidor:

HerramientaScript localScript del servidor
Varita del CreadorDetecta dónde toca o hace clic el jugador en la pantalla.Crea una nueva parte en el lugar dentro del mundo del juego donde el jugador tocó o hizo clic.
Capa de invisibilidadHace que el jugador sea invisible para todos los demás usuarios, mientras que el capa está equipada.
Mega-BowDetecta la duración de la activación / desactivado del jugador.Dispara una flecha mágica con más o menos poder, dependiendo del tiempo de activación detectado.

Para mais informações sobre os diferentes tipos de script, see Scripts .

Dicas de solução de problemas

Uma ferramenta pode funcionar bem no Studio, mas não em uma experiência ao vivo do Roblox. Se isso ocorrer, use as seguintes dicas para solucionar problemas:

  • LocalScripts e Scripts não podem ouvir um ao outro diretamente, então você precisa adicionar um RemoteEvent para enviar mensagens entre os dois scripts.
  • Certifique-se de que cada Script e LocalScript só se preocupa exatamente com o que é suposto fazer.

Para mais informações sobre RemoteEvents, veja Eventos Remotos e Chamadas de Retorno.