void OnCollided(NodeCollisionStartEventArgs args)
{
var bulletNode = args.OtherNode;
if (IsAlive && bulletNode.Name != null && bulletNode.Name.StartsWith(nameof(Weapon)) && args.Body.Node == Node)
{
var weapon = bulletNode.GetComponent<WeaponReferenceComponent>().Weapon;
Health -= weapon.Damage;
var killed = Health <= 0;
if (killed)
{
Explode();
}
else if (weapon.Damage > 0)
{
Hit();
}
weapon.OnHit(target: this, killed: killed, bulletNode: bulletNode);
}
}