Beispiel #1
0
        protected override void PrepareDamageDescription(
            out double damageValue,
            out double armorPiercingCoef,
            out double finalDamageMultiplier,
            out double rangeMax,
            DamageDistribution damageDistribution)
        {
            damageValue           = 15;
            armorPiercingCoef     = 0;
            finalDamageMultiplier = 2.5;
            rangeMax = 7;

            damageDistribution.Set(DamageType.Kinetic, 0.7);
            damageDistribution.Set(DamageType.Impact, 0.3);
        }
        protected override void PrepareDamageDescription(
            out double damageValue,
            out double armorPiercingCoef,
            out double finalDamageMultiplier,
            out double rangeMax,
            DamageDistribution damageDistribution)
        {
            damageValue           = 20;
            armorPiercingCoef     = 0.2;
            finalDamageMultiplier = 1.5;
            rangeMax = 10;

            damageDistribution.Set(DamageType.Kinetic, 0.6);
            damageDistribution.Set(DamageType.Heat, 0.4);
        }
Beispiel #3
0
        protected override void PrepareDamageDescription(
            out double damageValue,
            out double armorPiercingCoef,
            out double finalDamageMultiplier,
            out double rangeMax,
            DamageDistribution damageDistribution)
        {
            damageValue           = 12;
            armorPiercingCoef     = 0;
            finalDamageMultiplier = 2;
            rangeMax = 9;

            damageDistribution.Set(DamageType.Kinetic, 0.4);
            damageDistribution.Set(DamageType.Chemical, 0.6);
        }
        protected override void PrepareProtoWeapon(
            out IEnumerable <IProtoItemAmmo> compatibleAmmoProtos,
            ref DamageDescription overrideDamageDescription)
        {
            // no ammo used
            compatibleAmmoProtos = null;

            var damageDistribution = new DamageDistribution();

            damageDistribution.Set(DamageType.Impact, 0.5);
            damageDistribution.Set(DamageType.Chemical, 0.5); // uses poison or something :)

            overrideDamageDescription = new DamageDescription(
                damageValue: 18,
                armorPiercingCoef: 0,
                finalDamageMultiplier: 1.25,
                rangeMax: 1.5,
                damageDistribution: damageDistribution);
        }
Beispiel #5
0
 protected override void PrepareDamageDescriptionCharacters(
     out double damageValue,
     out double armorPiercingCoef,
     out double finalDamageMultiplier,
     DamageDistribution damageDistribution)
 {
     damageValue           = 120;
     armorPiercingCoef     = 0;
     finalDamageMultiplier = 1;
     damageDistribution.Set(DamageType.Kinetic, 1);
 }
 protected override void PrepareDamageDescriptionCharacters(
     out double damageValue,
     out double armorPiercingCoef,
     out double finalDamageMultiplier,
     DamageDistribution damageDistribution)
 {
     // nobody can survive this explosion
     damageValue           = 10_000;
     armorPiercingCoef     = 1;
     finalDamageMultiplier = 1;
     damageDistribution.Set(DamageType.Kinetic, 1);
 }
        protected override void PrepareDamageDescriptionCharacters(
            out double damageValue,
            out double armorPiercingCoef,
            out double finalDamageMultiplier,
            DamageDistribution damageDistribution)
        {
            damageValue           = 60; // lower damage than other grenades due to higher radius and higher final multiplier
            armorPiercingCoef     = 0;
            finalDamageMultiplier = 1.25;

            damageDistribution.Set(DamageType.Explosion, 1.0);
        }
Beispiel #8
0
 protected override void PrepareDamageDescription(
     out double damageValue,
     out double armorPiercingCoef,
     out double finalDamageMultiplier,
     out double rangeMax,
     DamageDistribution damageDistribution)
 {
     damageValue           = 19;
     armorPiercingCoef     = 0;
     finalDamageMultiplier = 1.4;
     rangeMax = 6;
     damageDistribution.Set(DamageType.Impact, 1);
 }
        protected override void PrepareDamageDescriptionCharacters(
            out double damageValue,
            out double armorPiercingCoef,
            out double finalDamageMultiplier,
            DamageDistribution damageDistribution)
        {
            damageValue           = 90;
            armorPiercingCoef     = 0.2;
            finalDamageMultiplier = 1;

            damageDistribution.Set(DamageType.Explosion, 0.6)
            .Set(DamageType.Cold, 0.4);
        }
        protected override void PrepareDamageDescription(
            out double damageValue,
            out double armorPiercingCoef,
            out double finalDamageMultiplier,
            out double rangeMax,
            DamageDistribution damageDistribution)
        {
            damageValue           = 45;
            armorPiercingCoef     = 0.75;
            finalDamageMultiplier = 1;
            rangeMax = 11;

            damageDistribution.Set(DamageType.Kinetic, 1);
        }
 protected override void PrepareDamageDescription(
     out double damageValue,
     out double armorPiercingCoef,
     out double finalDamageMultiplier,
     out double rangeMax,
     DamageDistribution damageDistribution)
 {
     damageValue           = 12; // actual damage won't be too big, due to pellets spread
     armorPiercingCoef     = 0;
     finalDamageMultiplier = 5;
     rangeMax = 7;
     damageDistribution.Set(DamageType.Kinetic, 0.8)
     .Set(DamageType.Impact, 0.2);
 }