Entrada do jogador (PlayerInput)
Transforme as ações do mapa de entrada em eventos: sem código pela Conexão de evento ou em C# com Performed e Canceled.
Validado no aparelho · APK 0.4.0 · Mirar segurada e solta pelo toque no POCO F7 em C# e em Flow (26/10)
O componente Entrada do jogador faz o papel do Player Input da Unity em modo Invoke Unity Events: cada ação do mapa de entrada vira um evento executada (apertou) e cancelada (soltou) neste objeto.
1. A ação no mapa
Seção intitulada “1. A ação no mapa”☰ › Configurações do projeto › Entrada › + Ação: nome Mirar, Fonte Botão touch. No Play aparece o botão Mirar na tela.
2. O componente
Seção intitulada “2. O componente”No objeto do jogador: Adicionar componente › Entrada do jogador (ou + › Gameplay). Em Ações, marque as ações que este objeto observa.
3a. Sem código
Seção intitulada “3a. Sem código”Conexão de evento no mesmo objeto:
| Campo | Valor |
|---|---|
| Evento | Entrada: ação executada |
| Ação (filtro) | Mirar |
| Ação | Chamar método |
| Método | Volume: definir peso |
| Valor | 1 |
| Receptor | o Volume de mira |
Uma segunda conexão com Entrada: ação cancelada e Valor 0 devolve o peso.
3b. Em C#
Seção intitulada “3b. Em C#”using Astra;using Astra.Components;
[ComponentId("meujogo.ouve-mirar")]public sealed class OuveMirar : Behavior{ [PropertyId("indice_mirar")] public int IndiceMirar = 4; // posição da ação no mapa, a partir de 1
public override void Start() { if (Object.GetComponent<PlayerInput>() is not { } entrada) return; entrada.Performed(this, acao => { if (acao == IndiceMirar) Scene.Log(ObjectId, "Mirando"); }); entrada.Canceled(this, acao => { if (acao == IndiceMirar) Scene.Log(ObjectId, "Mira solta"); }); }}O evento entrega o índice da ação no mapa (a partir de 1), só no quadro em que ela é apertada ou solta. Para saber se está segurada a cada quadro, continue usando Input.Pressed("Mirar").
Limites
Seção intitulada “Limites”Até 32 ações observadas; o índice depende da ordem no mapa; troca de esquema de controle e vários jogadores locais não existem.