public void DoDamage(float damage, Common.ObjectBuilders.Definitions.MyDamageType damageType, bool sync, MyHitInfo?hitInfo, long attackerId) { if (Sync.IsServer) { MyDamageInformation info = new MyDamageInformation(false, damage, damageType, attackerId); if (UseDamageSystem) { MyDamageSystem.Static.RaiseBeforeDamageApplied(this, ref info); } m_hitPoints -= info.Amount; if (UseDamageSystem) { MyDamageSystem.Static.RaiseAfterDamageApplied(this, info); } if (m_hitPoints <= 0) { MyFracturedPiecesManager.Static.RemoveFracturePiece(this, 2); if (UseDamageSystem) { MyDamageSystem.Static.RaiseDestroyed(this, info); } } } }
public void DoDamage(float damage, Common.ObjectBuilders.Definitions.MyDamageType damageType, bool sync) { if (Sync.IsServer) { m_hitPoints -= damage; if (m_hitPoints <= 0) { MyFracturedPiecesManager.Static.RemoveFracturePiece(this, 2); } } }