之前介紹過用AutoHotKey寫出腳本
讓Tsum Tsum能以模擬器自動收心的MyAutoClick
MyAutoClick的基本運作:
1.將滑鼠點擊的位置以及順序記錄在文字檔中
2.從該文字檔依序讀取滑鼠點擊的位置
3.移動滑鼠至該位置並執行點擊的動作
4. 重複動作2.到3.,直到程式被終止或是重新讀入腳本的命令發生
此篇就接續著來介紹腳本內容是如何編寫的。
AutoHotKey是一種能依照簡單的語法寫出的動作腳本
在電腦上自動執行的軟體工具
首先可以從AutoHotKey的官網中取得主程式
之後若沒有特殊改動,則預設的腳本位置在
C:\Users\user\Documents\AutoHotkey.ahk
我們初期就先用這個AutoHotkey.ahk來編輯
第一個測試,將以下的綠色文字貼到AutoHotkey.ahk中:
執行AutoHotKey之後
我們按住滑鼠左鍵加上鍵盤的字母'm'
就會出現如下的對話框:
如果您也看到!恭喜!您已經學會使用AutoHotKey啦!
簡單解說一下:
分號 ';' 是註解的意思,也就是在分號之後輸入的同列文字都不會被當作腳本來執行
~LButton: 指的是按住滑鼠左鍵的意思
& m : 表示接連前面的組成複合按鍵以觸動以下的腳本動作
Msgbox: 顯示一個(基本)提示對話視窗
return: 表示此段動作結束
所以最基本的AutoHotKey腳本的組成:
1. 觸發的按鍵組合::
2. 動作腳本
3. 動作結束 (return)
接著我們改動內容如下:
儲存之後,我們要更新腳本,讓AutoHotKey重新讀入
從右下角的常駐圖示-->右鍵-->選擇"Reload This Script"
如此就能使AutoHotKey重新讀入腳本
看到對話視窗的內容改變了!
對於正在編寫腳本測試,要一直重複此動作,是否很不方便(懶...)?
因此第一個宅犬編寫AutoHotKey最常用的功能就是:
;●●● 重新載入Autohotkey的腳本ahk Mouse(L)+r
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
看懂了嗎?就是:
1. 按住滑鼠左鍵加上'r'後
2. 執行重新讀入腳本(reload)
3. 腳本結束(return)
有了這個動作腳本之後,我們就能修改完成
就住滑鼠左鍵+'r' 來重新讀入腳本
此外,reload的命令還有個額外的附加作用
能夠立刻中止目前正在執行的腳本
這是很重要的指令!
當編寫過程測試時,萬一動作失控
可以立刻執行此一動作來中止世界的毀滅呀!
歡迎加入懶人的世界!!
好了正式來介紹MyAutoClick的腳本吧!
1. 重設記錄檔(Clear)
當對應的滑鼠順序位置改變時,需要重新定位
就得將原來的紀錄檔C:\MyAutoClick.txt清除
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
觸動按鍵組合: 按住滑鼠左鍵+'c' (clear)
2. 紀錄滑鼠座標(Get)
取得滑鼠座標,並記錄在檔案C:\MyAutoClick.txt中
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
觸動按鍵組合: 按住滑鼠左鍵+'g' (get)
3. 從檔案中讀取座標,並自動(Auto)依序點擊
這裡是MyAutoClick最核心的部分
將X,Y座標依序從C:\MyAutoClick.txt讀出
並移動滑鼠至該位置並執行點擊的動作
mousemove, %nowX%,%newY%,50, ;;;移動滑鼠到該位置
Sleep,500 ;;;給予作用對象程式的反應時間
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
在C:\MyAutoClick.txt 中紀錄的數值將如下:
因此必須讀取的是
X:1172 <第1組
所以座標一共將有XArrayCount除以2組
即: XArrayCount/= 2
而讀取時必須跳Y的位置以讀取下一組的X座標開始
即: nowIndx += 2
觸動按鍵組合: 按住滑鼠左鍵+'a' (Auto)
雖然看起來落落長
但理解後其實也是很簡單的!不是嗎?
啊?還是不太會?
好啦!將整個MyAutoClick.ahk放上來
讓大家可以直接下載
無論直接使用或研究修改都歡迎!
夠佛心來著了吧?
留言列表