using Content.Shared.FixedPoint;
using Content.Shared.Physics;
using Robust.Shared.GameStates;
namespace Content.Shared.Projectiles;
[RegisterComponent, NetworkedComponent]
public sealed partial class CanPenetrateComponent : Component
{
///
/// Should the projectile keep the ability to deal damage after colliding.
///
[DataField]
public bool DamageAfterCollide = true;
///
/// The CollisionLayer, up to and including the one set, the projectile is allowed to penetrate.
///
///
/// Can penetrate everything if this value is not set.
///
[DataField]
public CollisionGroup? PenetrationLayer;
///
/// How many times the projectile is allowed to deal damage.
///
///
/// Can deal damage on every collision if this value is not set.
///
[DataField]
public float? PenetrationPower;
///
/// Modifies the damage of a projectile after it has penetrated an entity.
///
///
/// Won't modify the projectile's damage if this value is not set.
///
[DataField]
public FixedPoint2? DamageModifier;
}