--- title: "Astra.Components.Projectile" version: snapshot-2026-10-28 engineGeneration: astra-current language: C# status: semantic-reference reviewedAt: 2026-10-28 appRelease: "0.4.0-preview.20261028" runtimeVerified: false platformEvidence: [] url: https://astraengine.com.br/pt-br/snapshot-2026-10-28/api/astra-components-projectile/ --- # Astra.Components.Projectile Projétil: Anda pela frente; no primeiro acerto cria o impacto, solta os rastros e some. Família Efeitos · Comportamentos. **Namespace:** `Astra.Components` · **Assembly:** `Astra.Scripting` · **Tipo:** Struct :::note[Sobre esta referência] Assinaturas extraídas semanticamente com Roslyn/MSBuild. Isso confirma a superfície do código deste snapshot; não comprova execução no Android. As descrições vêm dos comentários da API. Membros sem explicação ainda exigem revisão editorial. ::: ## Declaração ```csharp readonly struct Astra.Components.Projectile ``` Projétil: Anda pela frente; no primeiro acerto cria o impacto, solta os rastros e some. Família Efeitos · Comportamentos. Referência estudada: https://docs.unity3d.com/6000.0/Documentation/ScriptReference/Collider.OnCollisionEnter.html **Interfaces:** `Astra.Components.IComponentFacade`. ## Onde acessar este tipo Hierarquia → selecione o objeto → Inspector → Adicionar componente → **Efeitos** / **Comportamentos** → **Projétil**. No Behavior em Play, obtenha a fachada com `Object.GetComponent()`; trate null antes de usar. Para outro objeto, resolva uma ObjectReference e consulte nesse objeto. Criar `new Projectile(component)` envolve um componente existente; não adiciona um componente à cena. ## Roadmap e uso [Objetos, Behaviors e composição](/pt-br/snapshot-2026-10-06/roadmap/objetos-e-scripts/): o membro presente nesta referência pertence ao contrato atual. O roadmap registra a família; não há promessa/data individual de evolução para cada membro. Membros ainda sem explicação especializada são indicados como revisão editorial pendente. Para ler os campos e recursos pelo caminho do editor, use [mapa de acesso](/pt-br/snapshot-2026-10-06/editor/mapa-de-acesso/). Consulte também [Projétil](/pt-br/snapshot-2026-10-28/componentes/astra-effects-projectile/) para propriedades, valores iniciais, requisitos e edição em Play. ## Membros | Membro | Categoria | |---|---| | [.ctor](#member-14db1c309ecc53e0) | Method | | [GetImpact](#member-598c41a832f89975) | Method | | [GetMuzzle](#member-0d8fbcd53bc1a18e) | Method | | [Remove](#member-75d938d0e9283b20) | Method | | [SetImpact](#member-3a820965a80aa801) | Method | | [SetMuzzle](#member-317634bed4fc4af6) | Method | | [Wrap](#member-d2cfc8ae1625cdb0) | Method | | [Component](#member-493000564b875120) | Property | | [Detach0](#member-21ac1c76b6e93f65) | Property | | [Detach1](#member-91a67badf9579058) | Property | | [Detach2](#member-2349f74f2c173dd5) | Property | | [Detach3](#member-3b33f64746e8bdbb) | Property | | [Enabled](#member-983a7759f495e3f7) | Property | | [FaceShooter](#member-f5bb338470f4e812) | Property | | [ForwardAxis](#member-d07d38e4971f5f9c) | Property | | [HitOffset](#member-beece580a87d7f78) | Property | | [InstanceId](#member-df5f0e56e382802e) | Property | | [IsAlive](#member-63762699ce880c72) | Property | | [Lifetime](#member-6e636e45d75e227c) | Property | | [Object](#member-8ff39e061bd4b18a) | Property | | [Radius](#member-c3d424fff6152fff) | Property | | [RotationOffset](#member-6a1eabe8a9a6639e) | Property | | [Speed](#member-f6bc92cd8f461f11) | Property | | [TypeId](#member-fd3177f9558aa9c3) | Property |

.ctor

```csharp public Projectile(Astra.Component component) ``` **Caminho:** Inspector → Projétil; ou fachada C# em um Behavior. **Uso:** Constrói o tipo pela assinatura declarada. Um construtor de fachada envolve um componente existente; um record de configuração só tem efeito quando atribuído ao consumidor. **Roadmap deste membro:** [Objetos, Behaviors e composição](/pt-br/snapshot-2026-10-06/roadmap/objetos-e-scripts/). Contrato existente neste snapshot; sem tarefa individual/datada registrada nesta referência. | Parâmetro | Tipo | Contrato | |---|---|---| | `component` | `Astra.Component` | |

GetImpact

```csharp public Astra.AssetGuid GetImpact(uint slot = 0) ``` Impacto. Recurso do projeto por slot **Caminho:** Inspector → Projétil; ou fachada C# em um Behavior. **Uso:** Impacto. Recurso do projeto por slot **Roadmap deste membro:** [Objetos, Behaviors e composição](/pt-br/snapshot-2026-10-06/roadmap/objetos-e-scripts/). Contrato existente neste snapshot; sem tarefa individual/datada registrada nesta referência. | Parâmetro | Tipo | Contrato | |---|---|---| | `slot` | `uint` | · Opcional: `0` |

GetMuzzle

```csharp public Astra.AssetGuid GetMuzzle(uint slot = 0) ``` Disparo. Recurso do projeto por slot **Caminho:** Inspector → Projétil; ou fachada C# em um Behavior. **Uso:** Disparo. Recurso do projeto por slot **Roadmap deste membro:** [Objetos, Behaviors e composição](/pt-br/snapshot-2026-10-06/roadmap/objetos-e-scripts/). Contrato existente neste snapshot; sem tarefa individual/datada registrada nesta referência. | Parâmetro | Tipo | Contrato | |---|---|---| | `slot` | `uint` | · Opcional: `0` |

Remove

```csharp public void Remove() ``` Remove a instância pelo ciclo nativo; dependências e ownership podem recusar. **Caminho:** Inspector → Projétil; ou fachada C# em um Behavior. **Uso:** Solicita remoção pelo lifecycle nativo; dependências e regras de Play podem recusar. **Roadmap deste membro:** [Objetos, Behaviors e composição](/pt-br/snapshot-2026-10-06/roadmap/objetos-e-scripts/). Contrato existente neste snapshot; sem tarefa individual/datada registrada nesta referência.

SetImpact

```csharp public void SetImpact(Astra.AssetGuid value, uint slot = 0) ``` **Caminho:** Inspector → Projétil; ou fachada C# em um Behavior. **Uso:** Chame pelo acesso deste tipo indicado acima, com argumentos da assinatura. O efeito especializado deste membro ainda precisa de revisão editorial individual; não deduza equivalência com Unity/Godot pelo nome. **Roadmap deste membro:** [Objetos, Behaviors e composição](/pt-br/snapshot-2026-10-06/roadmap/objetos-e-scripts/). Contrato existente neste snapshot; sem tarefa individual/datada registrada nesta referência. | Parâmetro | Tipo | Contrato | |---|---|---| | `value` | `Astra.AssetGuid` | | | `slot` | `uint` | · Opcional: `0` |

SetMuzzle

```csharp public void SetMuzzle(Astra.AssetGuid value, uint slot = 0) ``` **Caminho:** Inspector → Projétil; ou fachada C# em um Behavior. **Uso:** Chame pelo acesso deste tipo indicado acima, com argumentos da assinatura. O efeito especializado deste membro ainda precisa de revisão editorial individual; não deduza equivalência com Unity/Godot pelo nome. **Roadmap deste membro:** [Objetos, Behaviors e composição](/pt-br/snapshot-2026-10-06/roadmap/objetos-e-scripts/). Contrato existente neste snapshot; sem tarefa individual/datada registrada nesta referência. | Parâmetro | Tipo | Contrato | |---|---|---| | `value` | `Astra.AssetGuid` | | | `slot` | `uint` | · Opcional: `0` |

Wrap

```csharp public static Astra.Components.Projectile Wrap(Astra.Component component) ``` **Caminho:** Inspector → Projétil; ou fachada C# em um Behavior. **Uso:** Envolve um Component existente após conferir TypeId; não cria componente. **Roadmap deste membro:** [Objetos, Behaviors e composição](/pt-br/snapshot-2026-10-06/roadmap/objetos-e-scripts/). Contrato existente neste snapshot; sem tarefa individual/datada registrada nesta referência. | Parâmetro | Tipo | Contrato | |---|---|---| | `component` | `Astra.Component` | |

Component

```csharp public Astra.Component Component { get; } ``` **Caminho:** Inspector → Projétil; ou fachada C# em um Behavior. **Uso:** Handle genérico da instância, usado para operações de reflexão e recursos. **Roadmap deste membro:** [Objetos, Behaviors e composição](/pt-br/snapshot-2026-10-06/roadmap/objetos-e-scripts/). Contrato existente neste snapshot; sem tarefa individual/datada registrada nesta referência.

Detach0

```csharp public Astra.ObjectReference Detach0 { get; set; } ``` Soltar 1. Filho que fica na cena quando o projétil some (rastro, fumaça) **Caminho:** Inspector → Projétil → Ao acertar; ou fachada C# em um Behavior. **Uso:** **Soltar 1:** Filho que fica na cena quando o projétil some (rastro, fumaça) **Roadmap deste membro:** [Objetos, Behaviors e composição](/pt-br/snapshot-2026-10-06/roadmap/objetos-e-scripts/). Contrato existente neste snapshot; sem tarefa individual/datada registrada nesta referência.

Detach1

```csharp public Astra.ObjectReference Detach1 { get; set; } ``` Soltar 2. Filho que fica na cena quando o projétil some (rastro, fumaça) **Caminho:** Inspector → Projétil → Ao acertar; ou fachada C# em um Behavior. **Uso:** **Soltar 2:** Filho que fica na cena quando o projétil some (rastro, fumaça) **Roadmap deste membro:** [Objetos, Behaviors e composição](/pt-br/snapshot-2026-10-06/roadmap/objetos-e-scripts/). Contrato existente neste snapshot; sem tarefa individual/datada registrada nesta referência.

Detach2

```csharp public Astra.ObjectReference Detach2 { get; set; } ``` Soltar 3. Filho que fica na cena quando o projétil some (rastro, fumaça) **Caminho:** Inspector → Projétil → Ao acertar; ou fachada C# em um Behavior. **Uso:** **Soltar 3:** Filho que fica na cena quando o projétil some (rastro, fumaça) **Roadmap deste membro:** [Objetos, Behaviors e composição](/pt-br/snapshot-2026-10-06/roadmap/objetos-e-scripts/). Contrato existente neste snapshot; sem tarefa individual/datada registrada nesta referência.

Detach3

```csharp public Astra.ObjectReference Detach3 { get; set; } ``` Soltar 4. Filho que fica na cena quando o projétil some (rastro, fumaça) **Caminho:** Inspector → Projétil → Ao acertar; ou fachada C# em um Behavior. **Uso:** **Soltar 4:** Filho que fica na cena quando o projétil some (rastro, fumaça) **Roadmap deste membro:** [Objetos, Behaviors e composição](/pt-br/snapshot-2026-10-06/roadmap/objetos-e-scripts/). Contrato existente neste snapshot; sem tarefa individual/datada registrada nesta referência.

Enabled

```csharp public bool Enabled { get; set; } ``` Ativo. Desligado, o projétil para onde está **Caminho:** Inspector → Projétil → Projétil; ou fachada C# em um Behavior. **Uso:** **Ativo:** Desligado, o projétil para onde está **Roadmap deste membro:** [Objetos, Behaviors e composição](/pt-br/snapshot-2026-10-06/roadmap/objetos-e-scripts/). Contrato existente neste snapshot; sem tarefa individual/datada registrada nesta referência.

FaceShooter

```csharp public bool FaceShooter { get; set; } ``` Impacto virado para o atirador. O impacto gira com o projétil (meia-volta); desligado, encara a superfície **Caminho:** Inspector → Projétil → Impacto; ou fachada C# em um Behavior. **Uso:** **Impacto virado para o atirador:** O impacto gira com o projétil (meia-volta); desligado, encara a superfície **Roadmap deste membro:** [Objetos, Behaviors e composição](/pt-br/snapshot-2026-10-06/roadmap/objetos-e-scripts/). Contrato existente neste snapshot; sem tarefa individual/datada registrada nesta referência.

ForwardAxis

```csharp public Astra.Components.Projectile.ForwardAxisOption ForwardAxis { get; set; } ``` Frente. +Z é a frente da Astra; −Z é a frente de um efeito importado da Unity **Caminho:** Inspector → Projétil → Projétil; ou fachada C# em um Behavior. **Uso:** **Frente:** +Z é a frente da Astra; −Z é a frente de um efeito importado da Unity **Roadmap deste membro:** [Objetos, Behaviors e composição](/pt-br/snapshot-2026-10-06/roadmap/objetos-e-scripts/). Contrato existente neste snapshot; sem tarefa individual/datada registrada nesta referência.

HitOffset

```csharp public float HitOffset { get; set; } ``` Afastamento do impacto (m). O impacto nasce esta distância para fora da superfície Faixa válida: -10 a 10. **Caminho:** Inspector → Projétil → Impacto; ou fachada C# em um Behavior. **Uso:** **Afastamento do impacto:** O impacto nasce esta distância para fora da superfície **Roadmap deste membro:** [Objetos, Behaviors e composição](/pt-br/snapshot-2026-10-06/roadmap/objetos-e-scripts/). Contrato existente neste snapshot; sem tarefa individual/datada registrada nesta referência.

InstanceId

```csharp public ulong InstanceId { get; } ``` **Caminho:** Inspector → Projétil; ou fachada C# em um Behavior. **Uso:** Distingue a instância no mesmo objeto; importante para componentes múltiplos. **Roadmap deste membro:** [Objetos, Behaviors e composição](/pt-br/snapshot-2026-10-06/roadmap/objetos-e-scripts/). Contrato existente neste snapshot; sem tarefa individual/datada registrada nesta referência.

IsAlive

```csharp public bool IsAlive { get; } ``` **Caminho:** Inspector → Projétil; ou fachada C# em um Behavior. **Uso:** Validade do handle no mundo/geração atuais. Remoção e novo Play invalidam a referência. **Roadmap deste membro:** [Objetos, Behaviors e composição](/pt-br/snapshot-2026-10-06/roadmap/objetos-e-scripts/). Contrato existente neste snapshot; sem tarefa individual/datada registrada nesta referência.

Lifetime

```csharp public float Lifetime { get; set; } ``` Vida (s). Destruído depois deste tempo mesmo sem acertar nada Faixa válida: 0.05 a 3600. **Caminho:** Inspector → Projétil → Projétil; ou fachada C# em um Behavior. **Uso:** **Vida:** Destruído depois deste tempo mesmo sem acertar nada **Roadmap deste membro:** [Objetos, Behaviors e composição](/pt-br/snapshot-2026-10-06/roadmap/objetos-e-scripts/). Contrato existente neste snapshot; sem tarefa individual/datada registrada nesta referência.

Object

```csharp public Astra.GameObject Object { get; } ``` **Caminho:** Inspector → Projétil; ou fachada C# em um Behavior. **Uso:** Objeto dono deste componente; use para resolver composição. **Roadmap deste membro:** [Objetos, Behaviors e composição](/pt-br/snapshot-2026-10-06/roadmap/objetos-e-scripts/). Contrato existente neste snapshot; sem tarefa individual/datada registrada nesta referência.

Radius

```csharp public float Radius { get; set; } ``` Raio (m). Raio da esfera que testa o acerto contra os colisores da cena Faixa válida: 0 a 100. **Caminho:** Inspector → Projétil → Projétil; ou fachada C# em um Behavior. **Uso:** **Raio:** Raio da esfera que testa o acerto contra os colisores da cena **Roadmap deste membro:** [Objetos, Behaviors e composição](/pt-br/snapshot-2026-10-06/roadmap/objetos-e-scripts/). Contrato existente neste snapshot; sem tarefa individual/datada registrada nesta referência.

RotationOffset

```csharp public System.Numerics.Vector3 RotationOffset { get; set; } ``` Giro do impacto **Caminho:** Inspector → Projétil → Impacto; ou fachada C# em um Behavior. **Uso:** **Giro do impacto X:** Diferente de zero, o impacto usa este giro fixo **Giro do impacto Y:** Diferente de zero, o impacto usa este giro fixo **Giro do impacto Z:** Diferente de zero, o impacto usa este giro fixo **Roadmap deste membro:** [Objetos, Behaviors e composição](/pt-br/snapshot-2026-10-06/roadmap/objetos-e-scripts/). Contrato existente neste snapshot; sem tarefa individual/datada registrada nesta referência.

Speed

```csharp public float Speed { get; set; } ``` Velocidade (m/s). Avança pela frente do objeto em Play Faixa válida: 0 a 10000. **Caminho:** Inspector → Projétil → Projétil; ou fachada C# em um Behavior. **Uso:** **Velocidade:** Avança pela frente do objeto em Play **Roadmap deste membro:** [Objetos, Behaviors e composição](/pt-br/snapshot-2026-10-06/roadmap/objetos-e-scripts/). Contrato existente neste snapshot; sem tarefa individual/datada registrada nesta referência.

TypeId

```csharp public static string TypeId { get; } ``` **Caminho:** Inspector → Projétil; ou fachada C# em um Behavior. **Uso:** Identificador nativo usado em AddComponent/GetComponent. **Roadmap deste membro:** [Objetos, Behaviors e composição](/pt-br/snapshot-2026-10-06/roadmap/objetos-e-scripts/). Contrato existente neste snapshot; sem tarefa individual/datada registrada nesta referência.