private static int CalculateAttackStrength(GameObjectBase attacker, IRandomization random) { // Actors can attack anywhere from 100% - 150% their base strength return((int)Math.Round(attacker.EffectiveStrength * (decimal)random.GetDouble(1, 1.5))); }
private static int CalculateDamageResistance(GameObjectBase gameObject, DamageType damageType, IRandomization random) { if (damageType != DamageType.Normal) { return(0); } return(gameObject is Actor actor?CalculateDefenseStrength(actor, random) : 0); }
private static int CalculateDefenseStrength(GameObjectBase defender, IRandomization random) { // Actors can defend anywhere from 100% - 250% their base strength return((int)Math.Round(defender.EffectiveDefense * (decimal)random.GetDouble(1, 2.5))); }
public CPCrossover() : base(2, 2) { IsOrdered = true; m_rnd = RandomizationProvider.Current; }