protected override void InitializeCharacterStats(CharacterBaseStats characterBaseStats) { base.InitializeCharacterStats(characterBaseStats); Resource = new Resource(characterBaseStats.BaseResource, characterBaseStats.ResourcePerLevel); ResourceRegeneration = new ResourceRegeneration(characterBaseStats.BaseResourceRegeneration, characterBaseStats.ResourceRegenerationPerLevel); }
private void UpdateResource() { if (Resource.GetTotal() > Resource.GetCurrentValue()) { Resource.Restore(ResourceRegeneration.GetTotal() * regenerationPercentPerTick); } }
protected virtual void InitializUnitStats(BaseStats baseStats) { Health = new Health(baseStats.BaseHealth); AttackDamage = new AttackDamage(baseStats.BaseAttackDamage); AbilityPower = new AbilityPower(); Armor = new Resistance(baseStats.BaseArmor); MagicResistance = new Resistance(baseStats.BaseMagicResistance); AttackSpeed = new AttackSpeed(baseStats.BaseAttackSpeed); CooldownReduction = new CooldownReduction(); CriticalStrikeChance = new CriticalStrikeChance(); MovementSpeed = new MovementSpeed(baseStats.BaseMovementSpeed); HealthRegeneration = new ResourceRegeneration(); Lethality = new Lethality(); ArmorPenetrationPercent = new ResistancePenetrationPercent(); MagicPenetrationFlat = new ResistancePenetrationFlat(); MagicPenetrationPercent = new ResistancePenetrationPercent(); LifeSteal = new PercentBonusOnlyStat(); SpellVamp = new PercentBonusOnlyStat(); AttackRange = new AttackRange(baseStats.BaseAttackRange); Tenacity = new Tenacity(); CriticalStrikeDamage = new CriticalStrikeDamage(); CriticalStrikeDamageReduction = new PercentBonusOnlyStat(); PhysicalDamageModifier = new DamageModifier(); MagicDamageModifier = new DamageModifier(); PhysicalDamageReceivedModifier = new DamageModifier(); MagicDamageReceivedModifier = new DamageModifier(); HealAndShieldPower = new PercentBonusOnlyStat(); SlowResistance = new SlowResistance(); GrievousWounds = new GrievousWounds(); ExtraAdjustments(); }