Esempio n. 1
0
        public void Serialize(INetPacketStream packet)
        {
            packet.Write <short>((short)State); // state
            packet.Write <short>(0);            // time limit
            packet.Write((short)QuestId);

            packet.Write <short>(Monsters?.ElementAtOrDefault(0).Value ?? 0); // monster 1 killed
            packet.Write <short>(Monsters?.ElementAtOrDefault(1).Value ?? 0); // monster 2 killed
            packet.Write <byte>(Convert.ToByte(IsPatrolDone));                // patrol done
            packet.Write <byte>(0);                                           // dialog done
        }
Esempio n. 2
0
        public void MonsterMenu()
        {
            Console.WriteLine("Please choose an option by entering a number.");
            Console.WriteLine("0. Show me all monsters!");
            Console.WriteLine("1. Fight last monster");
            Console.WriteLine("2. Fight second monster");
            Console.WriteLine("3. Fight first monster with less than 20 hit points");
            Console.WriteLine("4. Fight first monster with a strength of at least 11");
            Console.WriteLine("5. Fight random monster");
            var input = Console.ReadLine();

            if (!Monsters.Any()) //if list is empty return to main menu
            {
                Console.WriteLine();
                Console.WriteLine("No monster to fight");
                Console.WriteLine();
                game.Main();
            }
            else
            {
                if (input == "0")
                {
                    ShowMonsterList();
                }
                if (input == "1")
                {
                    this.Start(Monsters.LastOrDefault());
                }
                else if (input == "2")
                {
                    this.Start(Monsters.ElementAtOrDefault(1));
                }
                else if (input == "3")
                {
                    this.Start(Monsters.Where(p => p.OriginalHP < 20).ToList().FirstOrDefault());
                }
                else if (input == "4")
                {
                    this.Start(Monsters.Where(p => p.Strength >= 11).ToList().FirstOrDefault());
                }
                else if (input == "5")
                {
                    var randmonNumber = new Random();

                    this.Start(Monsters[randmonNumber.Next(Monsters.Count)]);
                }
                else
                {
                    return;
                }
            }
        }