UWSC_連続クリック

概要

スクリプトを実行すると待機状態で始まる。
Z を押下すると連続クリックを開始する。
X を押下すると連続クリック位置を固定する。
連続クリック位置固定は予期せぬマウス誤動作の確率を下げるためのもの。長時間放置するときに使う。

ソース

// 初期化
Dim ClickFlag = False;
Dim AnchorFlag = False;

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

    // Zキーで連打開始
    Ifb GetKeyState(VK_Z) Then
        ClickFlag = !ClickFlag;
        AnchorFlag = ClickFlag And AnchorFlag;
        Sleep(0.2);
    EndIf

    // Xキーで位置固定
    Ifb GetKeyState(VK_X) Then
        AnchorFlag = !AnchorFlag;
        AnchorX = G_MOUSE_X;
        AnchorY = G_MOUSE_Y;
        Sleep(0.2);
    EndIf

    // 連打処理
    Ifb ClickFlag Then
        Ifb AnchorFlag Then
            MMV(AnchorX, AnchorY, 5);
            Btn(LEFT, CLICK, AnchorX, AnchorY, 5);
            Btn(LEFT, CLICK, AnchorX, AnchorY, 5);
            Btn(LEFT, CLICK, AnchorX, AnchorY, 5);
            Btn(LEFT, CLICK, AnchorX, AnchorY, 5);
            Btn(LEFT, CLICK, AnchorX, AnchorY, 5);
        Else
            Btn(LEFT, CLICK, G_MOUSE_X, G_MOUSE_Y, 5);
            Btn(LEFT, CLICK, G_MOUSE_X, G_MOUSE_Y, 5);
            Btn(LEFT, CLICK, G_MOUSE_X, G_MOUSE_Y, 5);
            Btn(LEFT, CLICK, G_MOUSE_X, G_MOUSE_Y, 5);
            Btn(LEFT, CLICK, G_MOUSE_X, G_MOUSE_Y, 5);
        EndIf
    EndIf
Wend

修正履歴

2014/07/10

コードの冗長性を減らした。可読性は落ちたかもしれない。

    Ifb ClickFlag Then
        ClickFlag = False;
        AnchorFlag = False;
        Sleep(0.2);
    Else
        ClickFlag = True;
        Sleep(0.2);
    EndIf

↑みたいな部分を↓みたいにした

    ClickFlag = !ClickFlag;
    AnchorFlag = ClickFlag And AnchorFlag;
    Sleep(0.2);

2014/06/23

クリック位置の固定が甘かったので修正


  • 最終更新:2014-07-10 17:31:57

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

認証パスワード