public static TCODColor GetAssociatedColour(this MobPackStrength strength) { switch (strength) { default: return(TCODColor.white); case MobPackStrength.Stronger: return(TCODColor.lightGreen); case MobPackStrength.Challenging: return(TCODColor.lighterBlue); case MobPackStrength.Elite: return(TCODColor.lightMagenta); case MobPackStrength.Boss: return(TCODColor.lightYellow); case MobPackStrength.EndBoss: return(TCODColor.lightRed); case MobPackStrength.TheEndOfAllThings: return(TCODColor.lightTurquoise); } }
private int GenerateEnemy(IMobPack pack, IRaceTemplate race, MobPackStrength strength) { var charFac = _model.CharacterFactory; var newEnemy = charFac.CreateRandomCharacter(1, race); switch (strength) { case MobPackStrength.Stronger: pack.AddEnemy(newEnemy, strength, 1.2d); return(40); case MobPackStrength.Challenging: pack.AddEnemy(newEnemy, strength, 1.5d); return(60); case MobPackStrength.Elite: pack.AddEnemy(newEnemy, strength, 2d); return(100); default: pack.AddEnemy(newEnemy, strength, 1.1d); return(25); } }
public void AddEnemy(ICharacter enemy, MobPackStrength strength = MobPackStrength.Stronger, double convertBonus = 1.2) { _enemies.Add(enemy); SetConvertBonus(enemy, convertBonus); SetStrength(enemy, strength); var coreCount = RHelper.RollPercentage(10) ? 2 : 1; if (RHelper.RollPercentage(20)) { IntactCoreCount += coreCount; } else { UnstableCoreCount += coreCount; } }
public void SetStrength(ICharacter enemy, MobPackStrength strength) { _strengths[enemy] = strength; _totalStrength += (int)strength; }
public void AssignCharacter(ICharacter character, MobPackStrength strength = MobPackStrength.Equal) { CurrentChar = character; Strength = strength; }