Ejemplo n.º 1
0
        public static BattleEnemy CreateEnemy(EnemyDifficult difficult, EnemyBehaviorType behavior)
        {
            var enemy = new BattleEnemy();

            var doc = new XmlDocument();

            doc.LoadXml(Data.Enemies);
            var d     = difficult.GetDescription();
            var nodes = doc.SelectNodes($"//enemy[difficult=\'{difficult.GetDescription()}\' and behavior=\'{behavior.GetDescription()}\' ]");
            var node  = nodes[Random.Next(nodes.Count)];

            enemy.Data.SetShip(ShipParser.GetShip(node["ship"].InnerText));
            for (var i = 0; i < node["guns"].ChildNodes.Count; i++)
            {
                var gun = node["guns"].ChildNodes[i];
                enemy.Data.SetGun(GunParser.GetGun(gun.InnerText), i);
            }

            enemy.behavior = (EnemyBehaviorType)Enum.Parse(typeof(EnemyBehaviorType),
                                                           node["behavior"].InnerText.Replace(" ", ""),
                                                           true);

            //TODO: Create chips
            return(enemy);
        }
Ejemplo n.º 2
0
 public BattleGameManager(MapEnemy enemy, GameMap map, Player player)
 {
     difficulty      = enemy.Difficult;
     this.map        = map;
     enemiesToCreate = leftToCreate = enemy.EnemiesCount;
     this.player     = player;
     aliveEnemies    = 0;
 }
Ejemplo n.º 3
0
 public MapEnemy(Vector2D position, PhysicalGameObject target, int enemiesCount, EnemyDifficult difficult)
 {
     Data         = new ShipData(this);
     EnemiesCount = enemiesCount;
     Difficult    = difficult;
     Position     = position;
     this.target  = target;
     Data.SetShip(ShipParser.GetShip("Base enemy ship"));
 }
Ejemplo n.º 4
0
 public Quest(string name,
              int reward,
              EnemyCount count,
              EnemyDifficult difficult,
              Func <Ship> beginQuest)
 {
     Name       = name;
     Reward     = reward;
     Count      = count;
     Difficult  = difficult;
     Status     = QuestStatus.NotStarted;
     BeginQuest = beginQuest;
 }