Пример #1
0
        public int GetDamage(Unit9 unit, float manaCost)
        {
            var damage  = manaCost * this.manaMultiplierData.GetValue(this.Level);
            var amplify = unit.GetDamageAmplification(this.Owner, this.DamageType, false);
            var block   = unit.GetDamageBlock(this.DamageType);

            return((int)((damage - block) * amplify));
        }
Пример #2
0
        // Token: 0x060009B8 RID: 2488 RVA: 0x000236AC File Offset: 0x000218AC
        public int GetDamage(Unit9 unit, float manaCost)
        {
            float num = manaCost * this.manaMultiplierData.GetValue(this.Level);
            float damageAmplification = unit.GetDamageAmplification(base.Owner, this.DamageType, false);
            float damageBlock         = unit.GetDamageBlock(this.DamageType);

            return((int)((num - damageBlock) * damageAmplification));
        }
        // Token: 0x06000A86 RID: 2694 RVA: 0x00024170 File Offset: 0x00022370
        public override int GetDamage(Unit9 unit)
        {
            float num  = unit.HealthRegeneration * base.Duration;
            float num2 = this.DamageData.GetValue(this.Level) - num;
            float damageAmplification = unit.GetDamageAmplification(base.Owner, this.DamageType, true);
            float damageBlock         = unit.GetDamageBlock(this.DamageType);

            return((int)((num2 - damageBlock) * damageAmplification));
        }
Пример #4
0
        public override int GetDamage(Unit9 unit)
        {
            var healthRegen = unit.HealthRegeneration * this.Duration;
            var damage      = this.DamageData.GetValue(this.Level) - healthRegen;
            var amplify     = unit.GetDamageAmplification(this.Owner, this.DamageType, true);
            var block       = unit.GetDamageBlock(this.DamageType);

            return((int)((damage - block) * amplify));
        }
Пример #5
0
        // Token: 0x060010E5 RID: 4325 RVA: 0x00029514 File Offset: 0x00027714
        public virtual int GetDamage(Unit9 unit)
        {
            float num = 0f;

            foreach (KeyValuePair <DamageType, float> keyValuePair in this.GetRawDamage(unit, null))
            {
                float damageAmplification = unit.GetDamageAmplification(base.Owner, keyValuePair.Key, this.IntelligenceAmplify);
                float damageBlock         = unit.GetDamageBlock(keyValuePair.Key);
                num += (keyValuePair.Value - damageBlock) * damageAmplification;
            }
            return((int)num);
        }
Пример #6
0
        // Token: 0x060007E7 RID: 2023 RVA: 0x00021F28 File Offset: 0x00020128
        public override int GetDamage(Unit9 unit)
        {
            float  damageAmplification = unit.GetDamageAmplification(base.Owner, this.DamageType, true);
            float  damageBlock         = unit.GetDamageBlock(this.DamageType);
            Damage rawDamage           = this.GetRawDamage(unit, null);
            float  num = 1f;

            if (!unit.HasModifier(this.AmplifierModifierName))
            {
                num += this.AmplifierValue(base.Owner, unit);
            }
            return((int)((rawDamage[this.DamageType] - damageBlock) * damageAmplification * num));
        }
Пример #7
0
        public virtual int GetDamage(Unit9 unit)
        {
            var damage = 0f;

            foreach (var raw in this.GetRawDamage(unit))
            {
                var amplify = unit.GetDamageAmplification(this.Owner, raw.Key, this.IntelligenceAmplify);
                var block   = unit.GetDamageBlock(raw.Key);

                damage += (raw.Value - block) * amplify;
            }

            return((int)damage);
        }
        // Token: 0x06001032 RID: 4146 RVA: 0x00028A94 File Offset: 0x00026C94
        public override int GetDamage(Unit9 unit)
        {
            float value = this.killThresholdData.GetValue(this.Level);
            float num   = unit.HealthRegeneration * this.GetCastDelay(unit) * 1.5f;

            if (unit.Health + num < value)
            {
                return((int)unit.MaximumHealth);
            }
            float value2 = this.DamageData.GetValue(this.Level);
            float damageAmplification = unit.GetDamageAmplification(base.Owner, this.DamageType, true);
            float damageBlock         = unit.GetDamageBlock(this.DamageType);

            return((int)((value2 - damageBlock) * damageAmplification));
        }
Пример #9
0
        public override int GetDamage(Unit9 unit)
        {
            var amplify = unit.GetDamageAmplification(this.Owner, this.DamageType, true);
            var block   = unit.GetDamageBlock(this.DamageType);
            var damage  = this.GetRawDamage(unit);

            var bonusAmplifier = 1f;

            if (!unit.HasModifier(this.AmplifierModifierNames))
            {
                bonusAmplifier += this.AmplifierValue(this.Owner, unit);
            }

            return((int)((damage[this.DamageType] - block) * amplify * bonusAmplifier));
        }
Пример #10
0
        public override int GetDamage(Unit9 unit)
        {
            var threshold   = this.killThresholdData.GetValue(this.Level);
            var healthRegen = unit.HealthRegeneration * this.GetCastDelay(unit) * 1.5f;

            if (unit.Health + healthRegen < threshold)
            {
                //todo should ignore amplifiers ?
                return((int)unit.MaximumHealth);
            }

            var damage  = this.DamageData.GetValue(this.Level);
            var amplify = unit.GetDamageAmplification(this.Owner, this.DamageType, true);
            var block   = unit.GetDamageBlock(this.DamageType);

            return((int)((damage - block) * amplify));
        }