Ejemplo n.º 1
0
        /// <summary>
        /// 清理指定页背包
        /// </summary>
        /// <param name="role"></param>
        /// <param name="page">背包页(1-5)</param>
        /// <param name="begin">开始格数(1-30)</param>
        /// <param name="stop">结束格数(1-30)</param>
        public static void BagCleanup(this IRole role, int page, int begin, int stop)
        {
            DmPlugin dm   = role.Window.Dm;
            int      hwnd = role.Window.Hwnd;

            dm.MoveToClick(796 + 65 * (page - 1), 217);  //点击背包页
            dm.Delay(100);
            dm.MoveToClick(796 + 65 * (page - 1), 217);  //点击背包页
            dm.Delay(300);
            //5-28格
            for (int i = begin; i <= stop; i++)
            {
                dm.MoveTo(800 + 65 * ((i - 1) % 5), 274 + 65 * ((i - 1) / 5));
                dm.Delay(200);
                int num = dm.ReadInt(hwnd, "[16cbc90]+314", 0);
                Debug.WriteLine("格子数量为:" + num);
                if (num == 0)
                {
                    continue;
                }

                Debug.WriteLine(800 + 65 * ((i - 1) % 5) + "   " + (274 + 65 * ((i - 1) / 5)));
                Delegater.WaitTrue(() =>
                {
                    dm.MoveTo(573, 493);
                    dm.Delay(100);
                    string content = dm.ReadString(hwnd, "[16cbc90]+30", 1, 10);
                    //  Debug.WriteLine(content);
                    if (content.Contains("是"))
                    {
                        return(true);
                    }
                    else
                    {
                        return(false);
                    }
                },
                                   () =>
                {
                    dm.MoveToClick(800 + 65 * ((i - 1) % 5), 274 + 65 * ((i - 1) / 5)); //点击格子
                    dm.MoveToClick(748, 687);                                           //点击丢弃
                    dm.Delay(300);
                });
                dm.MoveToClick(574, 496);                   //点击确认
                dm.Delay(500);
            }
        }
Ejemplo n.º 2
0
        public bool aaa(IRole role)
        {
            bool     wusun = false;
            DmPlugin dm    = role.Window.Dm;
            bool     flag  = Delegater.WaitTrue(() => role.IsAlive,
                                                () =>
            {
                dm.MoveToClick(wusun ? 400 : 280, 270);
                dm.Delay(2000);
            },
                                                5);

            if (flag)
            {
                //   OverweightDialogClose(role);
            }
            return(flag);
        }