AutoHotKeyでマイクラのブロック置換キーを作った

Xキーを押すと左キーのあとに即座に右キーか押されてほぼブロック置き換えになります

#Requires AutoHotkey v2.0

#HotIf WinActive("Minecraft")
x::
{
    ; IMEがONなら何もしない
    if IME_IsOn()
        return

    ; 処理中は物理マウス操作を一時停止
    BlockInput "MouseMove"
    BlockInput "On"

    try {
        Click "Left"
        Sleep 5
        Click "Right"
    }
    finally {
        BlockInput "Off"
        BlockInput "MouseMoveOff"
    }
}
#HotIf

IME_IsOn() {
    hwnd := WinExist("A")

    hIMC := DllCall(
        "imm32\ImmGetContext",
        "Ptr", hwnd,
        "Ptr"
    )

    if !hIMC
        return false

    try {
        return DllCall(
            "imm32\ImmGetOpenStatus",
            "Ptr", hIMC,
            "Int"
        )
    }
    finally {
        DllCall(
            "imm32\ImmReleaseContext",
            "Ptr", hwnd,
            "Ptr", hIMC
        )
    }
}

こちらでございます

左右クリック同時にやれば…置換…

同時押しのやつはまあでもむずいんよな
追記:実際にやってみたらそんなむずくない

基本的に同時より左を先に押したほうが成功率は高い気がする

それだと置換じゃないような

ちなみに0msにしたけどなぜか置換になりませんでした
対応してないのかなー
あとでガチ目に置換mod作ろうかな