Beispiel #1
0
        private static void Descent()
        {
            var ticker = new Ticker(6000);

            MoveHelper.Down(true);
            if (ObjectManager.MyPlayer.InVashjir)
            {
                //ugly vashjir method
                var      timerDiff = new Ticker(1000);
                float    diffSelf  = 3;
                Location oldPos    = ObjectManager.MyPlayer.Location;
                while (!ticker.IsReady && diffSelf > 0.3)
                {
                    if (timerDiff.IsReady)
                    {
                        diffSelf = MoveHelper.NegativeValue(oldPos.Z - ObjectManager.MyPlayer.Location.Z);
                        timerDiff.Reset();
                        oldPos = ObjectManager.MyPlayer.Location;
                    }
                    Thread.Sleep(10);
                }
            }
            else
            {
                while (ObjectManager.MyPlayer.IsFlying && !ticker.IsReady)
                {
                    Thread.Sleep(10);
                }
            }
            MoveHelper.Down(false);
        }
Beispiel #2
0
        private static void DescentToCorpse()
        {
            var      ticker    = new Ticker(28000);
            var      timerDiff = new Ticker(500);
            float    diffSelf  = 3;
            Location oldPos    = ObjectManager.MyPlayer.Location;

            MoveHelper.Down(true);
            while (!ticker.IsReady && diffSelf > 0.3)
            {
                if (timerDiff.IsReady)
                {
                    diffSelf = MoveHelper.NegativeValue(oldPos.Z - ObjectManager.MyPlayer.Location.Z);
                    timerDiff.Reset();
                    oldPos = ObjectManager.MyPlayer.Location;
                }
                Thread.Sleep(10);
            }
            MoveHelper.Down(false);
        }
Beispiel #3
0
        internal static void TryUnstuck(bool smallUnstuck)
        {
            Ticker face;

            Logging.Write(LogType.Warning, "Stuck");
            MoveRandom();
            Thread.Sleep(2000);
            MoveHelper.ReleaseKeys();
            if (!smallUnstuck)
            {
                int temp = new Random().Next(1, 3);
                if (temp != 2)
                {
                    MoveHelper.Jump(new Random().Next(2000, 4000));
                }
                else
                {
                    MoveHelper.Down(new Random().Next(1000, 2000));
                }
                MoveRandom();
                Thread.Sleep(1500);
                MoveHelper.ReleaseKeys();
                face = new Ticker(Convert.ToInt32(new Random().Next(50, 200) * Math.PI));
                MoveHelper.RotateRight(true);
                while (!face.IsReady)
                {
                    Thread.Sleep(10);
                }
                MoveHelper.RotateRight(false);
                MoveHelper.Forwards(true);
                Thread.Sleep(new Random().Next(2000, 4000));
                MoveHelper.Forwards(false);
            }
            MoveRandom();
            Thread.Sleep(2000);
            MoveHelper.ReleaseKeys();
            Logging.Write(LogType.Warning, "Done");
        }
Beispiel #4
0
        /// <summary>
        ///   Descents to node.
        /// </summary>
        internal static void DescentToNode(PGameObject nodeToHarvest)
        {
            var ticker = new Ticker(6000);

            if (ObjectManager.MyPlayer.InVashjir)
            {
                MoveHelper.Down(true);
                DescentToNodeVashir(nodeToHarvest);
                MoveHelper.Down(false);
            }
            else
            {
                if (!ObjectManager.MyPlayer.IsFlying) //To avoid sitting on the ground
                {
                    return;
                }
                MoveHelper.Down(true);
                while (ObjectManager.MyPlayer.IsFlying && !ticker.IsReady)
                {
                    Thread.Sleep(10);
                }
                MoveHelper.Down(false);
            }
        }