public ActorHitInfo(ActorHitInfo original) { Damage = original.Damage; DamagePierce = original.DamagePierce; DamageType = original.DamageType; DamageEffector = original.DamageEffector; HarmFriendly = original.HarmFriendly; HitLocation = original.HitLocation; HitMaterial = original.HitMaterial; Originator = original.Originator; OriginatorFaction = original.OriginatorFaction; HitPuff = original.HitPuff; HitCoords = original.HitCoords; HitFlags = original.HitFlags; ExtraHitFlags = original.ExtraHitFlags; if (original.ExtraData != null) { ExtraData = new Dictionary <string, object>(original.ExtraData); } else { ExtraData = null; } }
public ActorHitInfo(float damage, float damagePierce, int damageType, int damageEffector, bool harmFriendly, int hitlocation, int hitmaterial, BaseController originator, string originatorFaction, string hitPuff, Vector3?hitCoords, BuiltinHitFlags hitFlags) { Damage = damage; DamagePierce = damagePierce; DamageType = damageType; DamageEffector = damageEffector; HarmFriendly = harmFriendly; HitLocation = hitlocation; HitMaterial = hitmaterial; Originator = originator; OriginatorFaction = originatorFaction; HitPuff = hitPuff; HitCoords = hitCoords; HitFlags = hitFlags; ExtraHitFlags = 0; ExtraData = null; }
public BuiltinHitFlags GetHitFlags() { BuiltinHitFlags flags = BuiltinHitFlags.None; if (CheckFlag(ItemFlag.WeaponPierceConsiderShields)) { flags |= BuiltinHitFlags.PierceConsiderShields; } if (CheckFlag(ItemFlag.WeaponPierceConsiderArmor)) { flags |= BuiltinHitFlags.PierceConsiderArmor; } if (CheckFlag(ItemFlag.WeaponIgnoreShields)) { flags |= BuiltinHitFlags.IgnoreShields; } if (CheckFlag(ItemFlag.WeaponIgnoreArmor)) { flags |= BuiltinHitFlags.IgnoreArmor; } if (CheckFlag(ItemFlag.WeaponNeverAlert)) { flags |= BuiltinHitFlags.NeverAlert; } if (CheckFlag(ItemFlag.WeaponNeverBlockable)) { flags |= BuiltinHitFlags.NeverBlockable; } if (CheckFlag(ItemFlag.WeaponNoPain)) { flags |= BuiltinHitFlags.NoPain; } if (CheckFlag(ItemFlag.WeaponAlwaysPain)) { flags |= BuiltinHitFlags.AlwaysPain; } if (CheckFlag(ItemFlag.WeaponIgnoreHitLocation)) { flags |= BuiltinHitFlags.IgnoreHitLocation; } if (CheckFlag(ItemFlag.WeaponAlwaysExtremeDeath)) { flags |= BuiltinHitFlags.AlwaysExtremeDeath; } if (CheckFlag(ItemFlag.WeaponNeverExtremeDeath)) { flags |= BuiltinHitFlags.NeverExtremeDeath; } return(flags); }