1、案例演示
文末有軟體下載地址,以某遊戲巡山為例,
2、工具介紹
2.1、應用場景
- 點選型別的遊戲輔助
- 其它重複性滑鼠鍵盤操作
- 少兒程式設計
2.2、介面介紹
2.3、指令碼操作介紹
新增指令碼後,選擇指令碼後,滑鼠右鍵出來一個選單,有如下幾種操作
3、指令碼操作
3.1、選擇區域
3.1.1、簡介
- 選擇區域操作是全域性的,一般在指令碼最上面使用,選擇區域後,該指令碼的所有滑鼠操作都是在這個區域裡面進行的。選擇區域操作可以提升效能,不用每次在整個圖片範圍內搜尋圖片,當然針對現在個人電腦普遍配置過剩的情況下,其實也無所謂。
- 如果指令碼里不使用選擇區域,則所有滑鼠操作是在整個螢幕內進行
3.1.2、使用起始圖片確定範圍
- 使用左上角和右下角兩張圖片確定一個範圍
- 一般用於區域不絕對固定的情況下,也就是操作的區域會移動,比如:使用模擬器執行遊戲,使用者可能指不定把模擬器拖動螢幕的哪個位置
- 向左偏移表示相對於左上角的圖片的左上那個點的位置,向左為正,向右為負,向左偏移後區域的右下同樣會向右增大2倍的偏移量
- 向右偏移表示相對於左上角的圖片的左上那個點的位置,向上為正,向下為負,向上偏移後區域的右下同樣會向下增大2倍的偏移量
- 向左向右偏移一般用在,找不到合適的左上和右下的標誌性的圖片,則使用附近的圖片加上偏移來確定範圍
3.1.3、直接框選確定範圍
直接框選常常用於操作的區域位置固定的情況下
3.2、滑鼠操作
3.2.1、簡介
滑鼠操作有如下幾種
- 單擊滑鼠左鍵
- 雙擊滑鼠左鍵
- 單擊滑鼠右鍵
- 移動滑鼠
- 滑鼠滾輪滾動
所有滑鼠操作都可以基於圖片定位滑鼠操作的位置,也可以直接基於絕對座標定位位置
- 如果有選擇圖片,則向右偏移、向下偏移都是針對圖片中心點的偏移
- 如果沒有選擇圖片,則向右偏移、向下偏移都是針對螢幕左上角的原點進行的偏移
注意:每個操作新增後,右側的配置詳情介面都有一個儲存,配置後一定要記得儲存,不然不生效
3.2.2、單擊滑鼠左鍵
3.2.3、雙擊滑鼠左鍵
3.2.4、單擊滑鼠右鍵
3.2.5、滑鼠移動
3.2.6、滑鼠滾動
3.3、鍵盤操作
3.3.1、簡介
鍵盤操作分為快捷鍵和文字輸入兩個操作
3.3.2、快捷鍵操作
快捷鍵就是平時使用的那些快捷鍵,比如ctrl + c、ctrl + v表示複製貼上,多個按鍵使用英文逗號分隔就行了,如下win + r開啟執行視窗
3.3.3、輸入文字
輸入文字,還可以用後面會介紹的變數
3.3.4、案例:開啟記事本寫"hello廣州"
3.4、時間等待
3.4.1、簡介
時間等待分為三種型別
- 等待目標出現
- 等待目標消失
- 等待幾秒
3.4.2、等待目標出現
3.4.3、等待目標消失
3.4.4、等待幾秒
3.5、變數操作
3.5.1、簡介
變數就是可以改變的資料,變數操作有兩種,設定變數和修改變數,為了簡單,目前變數的型別只有數字型別
3.5.2、設定變數
3.5.3、修改變數
3.5.4、變數作用域
說人話:一個變數設定之後在哪些範圍內可以使用到
結論:變數作用範圍為:設定操作之後的(同級操作節點和同級節點的子孫節點)
3.6、日誌輸出
可以使用英文大括號來使用變數,如{n}表示顯示n的值
注意:有一個代表當前時間的內建變數curr_date,使用如下
3.7、條件判斷
3.7.1、簡介
條件判斷就是判斷某個或者某些條件滿足之後才執行條件判斷節點裡面的操作,需要注意的是之前學到的所有操作都是從上到下按順序執行下來的,在程式中屬於順序執行,這裡的條件判斷只有滿足條件才執行條件節點的子孫節點,在程式中屬於條件分支執行,也就是可以有很多條件判斷,滿足不同的條件執行不同的操作。
條件判斷操作的條件有兩種方式
- 圖片存在或者不存在
- 變數是否滿足某個值
兩種方式的條件可以單獨使用也可以結合一起使用,如果要實現更多條件的組合判斷可以直接在條件操作裡面繼續加條件操作。條件判斷操作裡面可以放除了選擇區域之外的所有操作,當然也可以放條件判斷自己(條件巢狀)
3.7.2、案例:判斷當前輸入法是中文就點選切換成英文
3.8、迴圈執行
3.8.1、簡介
迴圈執行見名知意,將同一個或者多個操作重複執行,比如一段操作:點選A、點選B、點選C,加上迴圈執行10次後,就會一直按順序點選A、B、C重複十次,就像我們每天起床、刷牙、吃早餐、工作、下班、吃晚飯、睡覺、每天都重複這些動作直到生命結束。
迴圈操作操作裡面可以放除了選擇區域之外的所有操作,當然也可以放迴圈操作自己(巢狀迴圈)
迴圈操作有兩種:
- 迴圈執行
- 跳出迴圈
3.8.2、案例:按順序點選三個圖示,重複三次
3.8.3、案例:按順序點選三個圖示,重複三次,第二次跳出迴圈
3.9、呼叫指令碼
3.9.1、簡介
有時候我們需要在新指令碼里的某個地方直接呼叫現有的指令碼,被呼叫的指令碼可以直接共享使用當前指令碼的變數
3.9.2、呼叫指令碼
先準備一個被呼叫的指令碼
再配置一個呼叫指令碼
4、其它功能
匯入、匯出、註冊、關於
5、綜合案例
6、遷移學習(可選)
知識點 |
小D助手 |
Java |
Python |
變數 |
變數操作/設定變數 |
int n = 0 |
n = 0 |
變數作用域 |
節點之後的同級節點和同級節點的子孫節點 |
變數宣告所在的{}之內 |
函式、類裡面 |
方法/函式 |
指令碼/新增指令碼 |
public int add(int x,int y) { return x + y } |
def add(x,y): return x + y |
方法函式呼叫 |
呼叫指令碼操作 |
add(1,2) |
add(1,2) |
方法函式呼叫傳參 |
呼叫指令碼操作直接共享當前指令碼的所有作用範圍內的變數 |
add(1,2) |
add(1,2) |
順序執行 |
同級節點按順序執行 |
不同行的程式碼按順序執行 |
不同行的程式碼按順序執行 |
條件分支 |
條件判斷操作 |
if(n == 2) { doThings(); } |
if n == 2 do_things();
|
條件巢狀 |
條件判斷操作 條件判斷操作 |
if(n == 2) { if(m == 2){ doThings(); } } |
if n == 2 if m == 2 do_things(); |
迴圈語句 |
迴圈執行操作 |
int n = 0 while(n < 10) { doThings(); n++; } |
n = 0 while n< 10: do_things() n += 1 |
跳出迴圈 |
跳出迴圈操作 |
int n = 0 while(n < 10) { if(n == 5) { break; } doThings(); n++; } |
n = 0 while n< 10: if n== 5: break do_things() n += 1 |
迴圈巢狀 |
迴圈執行操作 迴圈執行操作 |
int n = 0 int m = 0 while(n < 10) { while(m < 10) { doThings(); m++; } n++; } |
n = 0 m = 0 while n< 10: while m< 10: do_things() m += 1 n += 1 |
時間等待 |
時間等待操作 |
Thread.sleep(1000) |
time.sleep(1) |
附錄:
軟體下載地址:https://pan.baidu.com/s/1KN_c0CTWLUpjRmZYTORAow
提取碼:nxwh
影片教程:https://www.bilibili.com/video/BV18M4m1k7ZL/?vd_source=8526cb3355f5037d987fad7587b480f7