UWSC_選択位置変化時クリック

概要

選択位置クリックとほぼ同様。
選択位置の色が変化したときにクリックする。
シンプルなもぐら叩きを自動化するためのもの。

ソース

// 宣言
Public RunMode = False;
Public PosCnt = 0;
Public PosMax = 32;
Public PosX[0];
Public PosY[0];
Public PosC[0];

// 初期化
Reset();

// メインループ
While True
    // ウェイト
    Sleep(0.01);

    // Zキーで選択位置のクリック開始
    Ifb GetKeyState(VK_Z) Then
        RunMode = True;
        Sleep(0.1);
    EndIf

    // Xキーで位置記憶
    Ifb GetKeyState(VK_X) Then
        PosCnt = PosCnt + 1;
        Ifb PosCnt > PosMax Then
            PosMax = PosMax * 2;
            Resize(PosX, PosMax);
            Resize(PosY, PosMax);
            Resize(PosC, PosMax);
        EndIf
        PosX[PosCnt] = G_MOUSE_X;
        PosY[PosCnt] = G_MOUSE_Y;
        PosC[PosCnt] = PeekColor(PosX[PosCnt], PosY[PosCnt]);
        Sleep(0.1);
    EndIf

    // Cキーで選択状態を初期化
    Ifb GetKeyState(VK_C) Then
        Reset();
        Sleep(0.1);
    EndIf

    // 実行時ループ
    While RunMode
        // ウェイト
        Sleep(0.01);

        // ESC または Z キーで処理中断
        Ifb GetKeyState(VK_ESC) Then
            RunMode = False;
            Sleep(0.1);
        EndIf
        Ifb GetKeyState(VK_Z) Then
            RunMode = False;
            Sleep(0.1);
        EndIf

        // 選択箇所を順番にクリックする
        For i = 1 To PosCnt
            Ifb PeekColor(PosX[i], PosY[i]) <> PosC[i] Then
                Btn(LEFT, CLICK, PosX[i], PosY[i]);
            EndIf
        Next
  Wend
Wend

// 選択位置初期化
Procedure Reset()
    PosCnt = 0;
    PosMax = 32;
    Resize(PosX, PosMax);
    Resize(PosY, PosMax);
    Resize(PosC, PosMax);
Fend

  • 最終更新:2014-02-17 23:08:55

このWIKIを編集するにはパスワード入力が必要です

認証パスワード