예제 #1
0
        public static async Task GetToLavenderWindow()
        {
            await Navigation.GetTo(148, new Vector3(199.5991f, -32.04532f, 324.2699f));

            uint FerryNpc = 1005656;

            var unit = GameObjectManager.GetObjectByNPCId(FerryNpc);

            if (!unit.IsWithinInteractRange)
            {
                var target = unit.Location;
                Navigator.PlayerMover.MoveTowards(target);
                while (!unit.IsWithinInteractRange)
                {
                    Navigator.PlayerMover.MoveTowards(target);
                    await Coroutine.Sleep(100);
                }

                Navigator.PlayerMover.MoveStop();
            }

            unit.Target();
            unit.Interact();

            await Coroutine.Wait(5000, () => SelectIconString.IsOpen);



            if (SelectIconString.IsOpen)
            {
                if (Translator.Language == Language.Chn)
                {
                    SelectIconString.ClickLineContains("薰衣草苗圃");
                }
                else
                {
                    SelectIconString.ClickLineContains("Lavender Beds");
                }

                await Coroutine.Wait(5000, () => DialogOpen || SelectString.IsOpen);
            }

            if (DialogOpen)
            {
                Next();
            }

            await Coroutine.Wait(3000, () => SelectString.IsOpen);
        }