示例#1
0
 /// <summary>
 /// Call to the Engine to Start the First Round
 /// </summary>
 // Start a round, clear lists
 public void StartRound()
 {
     BattleEngine.StartRound();
     FightingMonsters.Clear();
     foreach (var data in BattleEngine.MonsterList)
     {
         FightingMonsters.Add(new Monster(data));
     }
 }
示例#2
0
        // Command that Loads the Data
        private async Task ExecuteLoadDataCommand()
        {
            if (IsBusy)
            {
                return;
            }

            IsBusy = true;

            try
            {
                // SelectedCharacters, no need to change them.

                // Reload the Character List from the Character View Moel
                AvailableCharacters.Clear();
                var availableCharacters = CharactersViewModel.Instance.Dataset;
                foreach (var data in availableCharacters)
                {
                    AvailableCharacters.Add(data);
                }

                //for refreshing characters and monsters on battle main page
                SelectedCharacters.Clear();
                var selectedChars = BattleEngine.CharacterList;
                foreach (var data in selectedChars)
                {
                    SelectedCharacters.Add(data);
                }

                FightingMonsters.Clear();
                var fightingMonsters = BattleEngine.MonsterList;
                foreach (var data in fightingMonsters)
                {
                    FightingMonsters.Add(data);
                }
            }

            catch (Exception ex)
            {
                Debug.WriteLine(ex);
            }

            finally
            {
                IsBusy = false;
            }
        }
示例#3
0
        // Used to sync observables to actual
        public void SyncMonsterAndCharacterLists()
        {
            FightingMonsters.Clear();
            // Add monsters to battle
            foreach (var monster in BattleEngine.MonsterList)
            {
                FightingMonsters.Add(monster);
            }

            SelectedCharacters.Clear();
            // Add characters to battle
            foreach (var character in BattleEngine.CharacterList)
            {
                SelectedCharacters.Add(character);
            }
            return;
        }
示例#4
0
        public override void Action(Player player)
        {
            Console.Clear();
            Random random       = new Random();
            int    randomNumber = random.Next(1, 4);

            player.UpdatePlayerDamage();

            if (randomNumber == 1)
            {
                IFightMonster Giant = new FightingMonsters(2, 10, "Mr Giant");
                Giant.Fight(player);
            }
            else if (randomNumber == 2)
            {
                IFightMonster MonsterSnake = new FightingMonsters(5, 20, "Sir Snake");
                MonsterSnake.Fight(player);
                Console.WriteLine("When you killed Sir Snake he dropped a bronze sword\n" +
                                  "You pick up the sword");
                player.bronzeSword = true;
            }
            else if (randomNumber == 3)
            {
                IFightMonster MonsterCat = new FightingMonsters(10, 10, "Miss Cat");
                MonsterCat.Fight(player);
                Console.WriteLine("After killing Miss Cat you found a silver sword in the corner of the room\n" +
                                  "You pick up the sword");
                player.silverSword = true;
            }
            else if (randomNumber == 4)
            {
                IFightMonster MonsterDragon = new FightingMonsters(8, 15, "Monster Dragon");
                MonsterDragon.Fight(player);
            }
            Console.ReadKey(true);
        }