protected override void CalculateTurnEffects(AbstractBlobEntity blob) { blob.AttackModifiedDamage -= 5; if (blob.AttackModifiedDamage < blob.BaseDamage) { blob.AttackModifiedDamage = blob.BaseDamage; } }
public void Activate(AbstractBlobEntity blob) { if (this.activeTurnsCount > -1) { throw new Exception("Behavior already Active"); } this.activeTurnsCount = 0; this.InitializeParameters(blob); }
public virtual void ApplyTurnEffects(AbstractBlobEntity blob) { if (this.activeTurnsCount>0) { CalculateTurnEffects(blob); } if (this.activeTurnsCount > -1) { this.activeTurnsCount++; } }
public void ApplyEffects(AbstractBlobEntity blob) { if (this.activeTurnsCount >-1) { CalculateAttackEffects(blob); } else { blob.BehavoirModifiedDamage = blob.AttackModifiedDamage; blob.AttackModifiedDamage = blob.BaseDamage; } }
protected override void InitializeParameters(AbstractBlobEntity blob) { this.behaviorDamageBonus = blob.AttackModifiedDamage; this.baseDamage = blob.BaseDamage; }
protected override void CalculateAttackEffects(AbstractBlobEntity blob) { blob.BehavoirModifiedDamage = blob.AttackModifiedDamage + this.behaviorDamageBonus; }
protected virtual void InitializeParameters(AbstractBlobEntity blob) { }
protected abstract void CalculateTurnEffects(AbstractBlobEntity blob);
protected abstract void CalculateAttackEffects(AbstractBlobEntity blob);
public abstract void ApplyEffects(AbstractBlobEntity blob);
public override void ApplyEffects(AbstractBlobEntity blob) { blob.AttackModifiedDamage = blob.BaseDamage; }
protected override void InitializeParameters(AbstractBlobEntity blob) { blob.Health +=50; }
protected override void CalculateTurnEffects(AbstractBlobEntity blob) { blob.Health -=10; }
protected override void CalculateAttackEffects(AbstractBlobEntity blob) { blob.BehavoirModifiedDamage = blob.AttackModifiedDamage; blob.AttackModifiedDamage = blob.BaseDamage; }