/// <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; } }
/// <summary> /// 攻城的update /// </summary> private void SiegeBehavior() { if (IsFighting()) { } else { CurrentBehavior = NormalBehavior; } }
/// <summary> /// 無戰鬥狀態下的Update /// </summary> private void NormalBehavior() { if (!IsEnoughMp()) { mSurvivalPoints.Clear(); //喝水 KeyboardSimulator.KeyPress(AddedKey); } if (IsInSiege()) { AttackPoint(); CurrentBehavior = SiegeBehavior; } else if (IsInAttack()) { AttackPoint(); CurrentBehavior = AttactBehavior; } }