Exemple #1
0
        /// <summary>
        /// 練功狀態下的Update
        /// </summary>
        private void AttactBehavior()
        {
            if (IsFighting() && mSurvivalPoints.Count > 0)
            {
                foreach (Point point in mSurvivalPoints)
                {
                    Bitmap bmp = ScreenLib.GetScreen(point, AttackTargeSize);
                    if (!ScreenLib.Scan(bmp, TargetColor))
                    {
                        mSurvivalPoints.Remove(point);
                    }
                }

                MouseSimulator.Position = mSurvivalPoints[0];
                Thread.Sleep(100);
                KeyboardSimulator.KeyPress(PrimaryKey);
                Thread.Sleep(100);
                MouseSimulator.Click(MouseButton.Left);
            }
            else
            {
                mSurvivalPoints.Clear();
                CurrentBehavior = NormalBehavior;
            }
        }
Exemple #2
0
        //private bool PostMessage(IntPtr hWnd,uint Msg, int wParam, int lParam);
        /// <summary>
        /// 鍵盤事件
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void KeyboardHook_KeyDown(object sender, KeyEventArgs e)
        {
            switch (e.KeyCode)
            {
            case Keys.F10:
                MouserTimer.Enabled = true;
                break;

            case Keys.F12:
                MouserTimer.Enabled = false;
                break;

            case Keys.B:
            {
                //KeyboardSimulator.SendKey("{F11}");
                //KeyboardSimulator.KeyDown(Keys.F11);
                //Thread.Sleep(1000);
                //KeyboardSimulator.KeyUp(Keys.F11);
            }
            break;
            }

            if (e.Alt)
            {
                switch (e.KeyCode)
                {
                case Keys.D1:
                    HpColor    = ScreenLib.GetScreenColor(MouseSimulator.Position);
                    hpTxt.Text = HpColor.ToArgb().ToString("X");
                    break;

                case Keys.D2:
                    MpColor    = ScreenLib.GetScreenColor(MouseSimulator.Position);
                    mpTxt.Text = MpColor.ToArgb().ToString("X");
                    break;

                case Keys.D3:
                    TimeColor    = ScreenLib.GetScreenColor(MouseSimulator.Position);
                    timeTxt.Text = TimeColor.ToArgb().ToString("X");
                    break;

                case Keys.D5:
                    SpecifyColor    = ScreenLib.GetScreenColor(MouseSimulator.Position);
                    specifyTxt.Text = SpecifyColor.ToArgb().ToString("X");
                    break;

                case Keys.D4:
                    TargetColor    = ScreenLib.GetScreenColor(MouseSimulator.Position);
                    targetTxt.Text = TargetColor.ToArgb().ToString("X");
                    break;
                }
            }

            if (e.Control)
            {
            }
        }
Exemple #3
0
        /// <summary>
        /// 目標座標
        /// </summary>
        /// <returns></returns>
        private void AttackPoint()
        {
            if (mSurvivalPoints.Count > 0)
            {
                return;
            }

            foreach (Point point in mFixPoints)
            {
                if (ScreenLib.Scan(ScreenLib.GetScreen(point, AttackTargeSize), TargetColor))
                {
                    mSurvivalPoints.Add(point);
                }
            }
        }
Exemple #4
0
 /// <summary>
 /// 放大鏡更新用的timer tick
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="e"></param>
 private void Timer_Tick(object sender, EventArgs e)
 {
     Position.Text   = Cursor.Position.ToString();
     ColorLabel.Text = ScreenLib.GetScreenColor(Cursor.Position).ToArgb().ToString("X");
     Magnifier.Image = ScreenLib.GetScreen(mMagnifierPosition, new Size(mMagnifierSize, mMagnifierSize));
 }
Exemple #5
0
        /// <summary>
        /// 非戰鬥Mp是否足夠
        /// </summary>
        /// <returns></returns>
        private bool IsEnoughMp()
        {
            Bitmap mpBmp = ScreenLib.GetScreen(MpPoint, FixSize);

            return(ScreenLib.Scan(mpBmp, MpColor));
        }
Exemple #6
0
        /// <summary>
        /// 是否戰鬥中
        /// </summary>
        /// <returns></returns>
        private bool IsFighting()
        {
            Bitmap fightbmp = ScreenLib.GetScreen(SpecifyPoint, SpecifySize);

            return(ScreenLib.Scan(fightbmp, SpecifyColor));
        }