Beispiel #1
0
        public async Task ExecuteMapChange()
        {
            try
            {
                await MapChanger.ChangeMap(TheEvent.MapID, TheEvent.TargetEntryPoint);
            }
            catch (Exception e)
            {
                System.Diagnostics.Debug.WriteLine(e.Message);

                SoundMan.PlaySound(LotaSound.Bad);

                await TextArea.Print("Failed to load ", XleColor.White);

                await TextArea.Print(GetMapName(), XleColor.Red);

                await TextArea.Print(".", XleColor.White);

                await TextArea.PrintLine();

                await TextArea.PrintLine();

                await GameControl.WaitAsync(1500);
            }
        }
Beispiel #2
0
        public override async Task RunExhibit()
        {
            await base.RunExhibit();

            await TextArea.PrintLine("Would you like to go");

            await TextArea.PrintLine("to the pirate's lair?");

            await TextArea.PrintLine();

            if (await QuickMenu.QuickMenu(new MenuItemList("Yes", "no"), 3) == 0)
            {
                await ReadRawText(ExhibitInfo.Text[2]);

                for (int i = 0; i < 8; i++)
                {
                    await GameControl.WaitAsync(50);

                    TextArea.SetCharacterColor(2, 12 + i, XleColor.Cyan);
                }

                await GameControl.WaitForKey();

                await MapChanger.ChangeMap(2, 0);
            }
        }
Beispiel #3
0
        public override async Task RunExhibit()
        {
            await base.RunExhibit();

            await TextArea.PrintLine("Would you like to go");

            await TextArea.PrintLine("to Marthbane tunnels?");

            await TextArea.PrintLine();

            if (0 == await QuickMenu.QuickMenuYesNo())
            {
                await MapChanger.ChangeMap(4, 0);
            }
        }
Beispiel #4
0
        public override async Task RunExhibit()
        {
            await ReadRawText(RawText);

            int       map    = Player.MapID;
            int       x      = Player.X;
            int       y      = Player.Y;
            Direction facing = Player.FaceDirection;

            await MapChanger.ChangeMap(72, 0);

            Player.SetReturnLocation(map, x, y, facing);

            MarkAsVisited();
        }
Beispiel #5
0
        public override async Task RunExhibit()
        {
            await base.RunExhibit();

            await TextArea.PrintLine("Would you like to go");

            await TextArea.PrintLine("to the island caverns now?");

            await TextArea.PrintLine();

            if (await QuickMenu.QuickMenuYesNo() == 0)
            {
                await MapChanger.ChangeMap(1, 1);
            }
        }
Beispiel #6
0
        public override async Task RunExhibit()
        {
            if (await CheckOfferReread())
            {
                await ReadRawText(ExhibitInfo.Text[1]);
            }

            await TextArea.PrintLine("Would you like to go");

            await TextArea.PrintLine("to thornberry?");

            await TextArea.PrintLine();

            if (await QuickMenu.QuickMenu(new MenuItemList("Yes", "no"), 3) == 0)
            {
                await ReadRawText(ExhibitInfo.Text[2]);

                int amount = 100;

                if (HasBeenVisited || ExhibitHasBeenVisited(ExhibitIdentifier.Fountain))
                {
                    amount += 200;
                }

                Player.Gold += amount;

                await TextArea.PrintLine();

                await TextArea.PrintLine("             GOLD:  + " + amount.ToString(), XleColor.Yellow);

                SoundMan.PlaySound(LotaSound.VeryGood);
                await GameControl.FlashHPWhileSound(XleColor.Yellow);

                await GameControl.WaitForKey();

                await MapChanger.ChangeMap(11, 0);

                Player.SetReturnLocation(1, 18, 56);
            }

            MarkAsVisited();
        }
Beispiel #7
0
        public override async Task RunExhibit()
        {
            await base.RunExhibit();

            await TextArea.PrintLine();

            await TextArea.PrintLine("Do you want to climb on?");

            await TextArea.PrintLine();

            if (0 == await QuickMenu.QuickMenuYesNo())
            {
                if (Player.Food < 150)
                {
                    Player.Food = 150;
                }

                await MapChanger.ChangeMap(3, 0);
            }
        }
Beispiel #8
0
        private async Task CastSeekSpell()
        {
            await TextArea.PrintLine();

            await TextArea.PrintLine("Cast seek spell.");

            if (Player.IsOnRaft)
            {
                await TextArea.PrintLine("The water mutes the spell.");
            }
            else if (TheMap.MapID != 1)
            {
                await TextArea.PrintLine("You're too far away.");
            }
            else
            {
                Player.FaceDirection = Direction.West;
                await GameControl.PlaySoundSync(LotaSound.VeryGood);

                await MapChanger.ChangeMap(1, 0);

                OutsideEncounters.CancelEncounter();
            }
        }
Beispiel #9
0
        public override async Task RunExhibit()
        {
            await base.RunExhibit();

            await TextArea.PrintLine("Would you like to go");

            await TextArea.PrintLine("to the four jewel dungeon?");

            await TextArea.PrintLine();

            if (await QuickMenu.QuickMenuYesNo() == 0)
            {
                int       map    = Player.MapID;
                int       x      = Player.X;
                int       y      = Player.Y;
                Direction facing = Player.FaceDirection;

                Player.DungeonLevel = 0;

                await MapChanger.ChangeMap(73, 0);

                Player.SetReturnLocation(map, x, y, facing);
            }
        }
Beispiel #10
0
 protected virtual async Task LoadOutsideMap()
 {
     await MapChanger.ChangeMap(1, -1);
 }