예제 #1
0
        public override Boolean Execute(Profile ExecuteFrom)
        {
            int    startResumeCount = 0;
            Random random           = new Random();

            ExecuteFrom.D3Cmd(IPlugin.COMMANDS.D3_Update);

            if (ExecuteFrom.D3Mail.D3Info.InGame == 1)
            {
                ExecuteFrom.D3Cmd(IPlugin.COMMANDS.D3_LeaveWorld);
            }
            do
            {
                if (ExecuteFrom.Paused)
                {
                    return(false);
                }
                Thread.Sleep(1000);
                ExecuteFrom.D3Cmd(IPlugin.COMMANDS.D3_Update);
            }while (!ExecuteFrom.D3Mail.D3Info.ReadyToStartQuest);
            Thread.Sleep(random.Next(1500, 2500));

            do
            {
                if (startResumeCount % 3 == 0)
                {
                    ExecuteFrom.D3Cmd(((this.StartResume == 0) ? IPlugin.COMMANDS.D3_SelectQuestStart : IPlugin.COMMANDS.D3_SelectQuestResume), this.Act, this.QuestID, this.SubQuestID, this.Difficulty, this.MonsterLevel);
                }
                Thread.Sleep(random.Next(2500, 3500));
                ExecuteFrom.D3Cmd(IPlugin.COMMANDS.D3_Update);
                ++startResumeCount;
            } while (ExecuteFrom.D3Mail.D3Info.InGame != 1);
            return(true);
        }
예제 #2
0
 public override Boolean Execute(Profile ExecuteFrom)
 {
     if (ExecuteFrom.InteractBySNO(0x192A) || ExecuteFrom.InteractBySNO(0x2EEA4) || ExecuteFrom.InteractBySNO(0x36A0D))
     {
         ExecuteFrom.D3Cmd(IPlugin.COMMANDS.D3_UseWaypoint, this.Index);
         Thread.Sleep(1500);
     }
     else
     {
         ExecuteFrom.Message("Waypoint not found. (" + ExecuteFrom.Name + ")");
     }
     return(true);
 }
예제 #3
0
 public override Boolean Execute(Profile ExecuteFrom)
 {
     do
     {
         if (!ExecuteFrom.MoveTo(ExecuteFrom.D3Mail.D3Info.X, ExecuteFrom.D3Mail.D3Info.Y))
         {
             return(false);
         }
         ExecuteFrom.D3Cmd(IPlugin.COMMANDS.D3_Update);
         if (ExecuteFrom.Paused)
         {
             return(false);
         }
     } while (this.QuestStep != ExecuteFrom.D3Mail.D3Info.QuestStep);
     return(true);
 }
예제 #4
0
 public override Boolean Execute(Profile ExecuteFrom)
 {
     if (ExecuteFrom.InteractBySNO(0x192A) || ExecuteFrom.InteractBySNO(0x2EEA4) || ExecuteFrom.InteractBySNO(0x36A0D))
     {
         ExecuteFrom.D3Cmd(IPlugin.COMMANDS.D3_UseWaypoint, this.Index);
         Thread.Sleep(1500);
     }
     else
     {
         ExecuteFrom.Message("Waypoint not found. (" + ExecuteFrom.Name + ")");
     }
     return true;
 }
예제 #5
0
 public override Boolean Execute(Profile ExecuteFrom)
 {
     do
     {
         if (!ExecuteFrom.MoveTo(ExecuteFrom.D3Mail.D3Info.X, ExecuteFrom.D3Mail.D3Info.Y))
             return false;
         ExecuteFrom.D3Cmd(IPlugin.COMMANDS.D3_Update);
         if (ExecuteFrom.Paused) return false;
     } while (this.QuestStep != ExecuteFrom.D3Mail.D3Info.QuestStep);
     return true;
 }
예제 #6
0
        public override Boolean Execute(Profile ExecuteFrom)
        {
            int startResumeCount = 0;
            Random random = new Random();
            ExecuteFrom.D3Cmd(IPlugin.COMMANDS.D3_Update);

            if (ExecuteFrom.D3Mail.D3Info.InGame == 1)
                ExecuteFrom.D3Cmd(IPlugin.COMMANDS.D3_LeaveWorld);
            do{
                if (ExecuteFrom.Paused) return false;
                Thread.Sleep(1000);
                ExecuteFrom.D3Cmd(IPlugin.COMMANDS.D3_Update);
            }while (!ExecuteFrom.D3Mail.D3Info.ReadyToStartQuest);
            Thread.Sleep(random.Next(1500, 2500));

            do
            {
                if (startResumeCount % 3 == 0) ExecuteFrom.D3Cmd(((this.StartResume == 0) ? IPlugin.COMMANDS.D3_SelectQuestStart : IPlugin.COMMANDS.D3_SelectQuestResume), this.Act, this.QuestID, this.SubQuestID, this.Difficulty, this.MonsterLevel);
                Thread.Sleep(random.Next(2500,3500));
                ExecuteFrom.D3Cmd(IPlugin.COMMANDS.D3_Update);
                ++startResumeCount;
            } while (ExecuteFrom.D3Mail.D3Info.InGame != 1);
            return true;
        }