|
@@ -277,8 +277,11 @@ if (!::IsWindow(m_hGameWnd)) return;\
|
|
|
|
|
|
//// 单击寻路窗口;
|
|
|
MouseClick(ptMap); SRAND(300, 600);
|
|
|
- //// 退出世界地址;
|
|
|
- GameAssist::SendKey(VK_TAB); SRAND(200, 300);
|
|
|
+
|
|
|
+ while (ImgAssist::GetImgMatchtemplate(m_hGameWnd, GAssist::g_strAppdir + _T("img\\世界地图.bmp"), rc)) {
|
|
|
+ // 退出世界地址;
|
|
|
+ GameAssist::SendKey(VK_TAB); SRAND(200, 300);
|
|
|
+ }
|
|
|
|
|
|
IsWalkStop();
|
|
|
}
|
|
@@ -306,6 +309,7 @@ if (!::IsWindow(m_hGameWnd)) return;\
|
|
|
SRAND(50, 80);
|
|
|
// 再找目标;
|
|
|
rc = FindMatchIcon(lpszTemplateImage);
|
|
|
+ SRAND(50, 80);
|
|
|
// 单击目标;
|
|
|
MouseClick(CPoint((rc.right + rc.left) / 2, (rc.top + rc.bottom) / 2 + rand() % 3));
|
|
|
// 单击后,系统切图可能要的时间会比较长;
|
|
@@ -335,8 +339,10 @@ if (!::IsWindow(m_hGameWnd)) return;\
|
|
|
MouseMove(CPoint((rc.right + rc.left) / 2 + 5 + rand() % 2, (rc.top + rc.bottom) / 2 + 60 + rand() % 2)); SRAND(200, 300);
|
|
|
//// 寻路窗口往下50就是目标;
|
|
|
MouseDbClick(CPoint((rc.right + rc.left) / 2 + 5 + rand() % 2, (rc.top + rc.bottom) / 2 + 60 + rand() % 2)); SRAND(200, 300);
|
|
|
- //// 退出世界地址;
|
|
|
- SendKey(VK_TAB); SRAND(200, 300);
|
|
|
+ while (ImgAssist::GetImgMatchtemplate(m_hGameWnd, GAssist::g_strAppdir + _T("img\\世界地图.bmp"), rc)) {
|
|
|
+ // 退出世界地址;
|
|
|
+ GameAssist::SendKey(VK_TAB); SRAND(200, 300);
|
|
|
+ }
|
|
|
|
|
|
// 直到停止走动为止;
|
|
|
IsWalkStop();
|
|
@@ -383,7 +389,7 @@ if (!::IsWindow(m_hGameWnd)) return;\
|
|
|
MouseMove(CPoint(rc.left, rc.top));
|
|
|
// 单击:我要挑战他们;
|
|
|
MouseClick({ (rc.right + rc.left) / 2, (rc.top + rc.bottom) / 2 });
|
|
|
- SRAND(900, 1300);// 等对话框出现;
|
|
|
+ SRAND(500, 1300);// 等对话框出现;
|
|
|
// 移动鼠标:不要停留在人物身上;
|
|
|
MouseMove({ rc.left - rand() % 10, rc.top - rand() % 10 });
|
|
|
|
|
@@ -453,8 +459,9 @@ if (!::IsWindow(m_hGameWnd)) return;\
|
|
|
void CAction::BattleJY(BOOL bHasSummoner, int nZJType, BOOL bAggressiveSkill)
|
|
|
{
|
|
|
BOOL bFirstAttack = TRUE;
|
|
|
- while (IsBattle()) { // 是否在战斗中;
|
|
|
- // 是否我方攻击;
|
|
|
+ // 1.是否在战斗中;
|
|
|
+ while (IsBattle()) {
|
|
|
+ // 2.是否我方攻击;
|
|
|
while (IsWattingAttack(0)) { // Bug:如果被镜妖打死了,无法中断;
|
|
|
DebugLog(_T("BattleJY:我方攻击……"));
|
|
|
if (bFirstAttack)
|
|
@@ -562,12 +569,14 @@ if (!::IsWindow(m_hGameWnd)) return;\
|
|
|
SendKey(VK_TAB); SRAND(200, 300);
|
|
|
// 选择坐标点;
|
|
|
MouseClick(spt[i % 4]);
|
|
|
- // 退出世界地图;
|
|
|
- SendKey(VK_TAB); SRAND(500, 900);
|
|
|
+ while (ImgAssist::GetImgMatchtemplate(m_hGameWnd, GAssist::g_strAppdir + _T("img\\世界地图.bmp"), rc)) {
|
|
|
+ // 退出世界地址;
|
|
|
+ GameAssist::SendKey(VK_TAB); SRAND(500, 900);
|
|
|
+ }
|
|
|
// 等待跑完成;
|
|
|
- //SRAND(600, 800);
|
|
|
IsWalkStop();
|
|
|
-
|
|
|
+ // 移动下鼠标;
|
|
|
+ MouseMove(spt[(i+1)%4]);
|
|
|
if (i > 10) {
|
|
|
DebugLog(_T("未找到镜妖+10"));
|
|
|
break;
|