コード例 #1
0
        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);
            }
        }
コード例 #2
0
        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);
            }
        }
コード例 #3
0
        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;
            }
        }
コード例 #4
0
 public void SetStrength(ICharacter enemy, MobPackStrength strength)
 {
     _strengths[enemy] = strength;
     _totalStrength   += (int)strength;
 }
コード例 #5
0
 public void AssignCharacter(ICharacter character, MobPackStrength strength = MobPackStrength.Equal)
 {
     CurrentChar = character;
     Strength    = strength;
 }