金豬腳本(原飛豬腳本)以按鍵精靈教學為主,涉及UiBot,Python,Lua等腳本編程語言,教學包括全自動辦公腳本,遊戲輔助腳本,引流腳本,網頁腳本,安卓腳本,IOS腳本,注冊腳本,點贊腳本,閱讀腳本以及網賺腳本等各個領域。想制作腳本和學習按鍵精靈的朋友可以添加按鍵精靈學習交流群:554127455 學習路上不再孤單,金豬腳本伴你一同成長.
選擇角色登錄
我們想要讓腳本一個角色執行完之後執行下一個角色,首先,要記錄角色的序号
1、把角色的序号寫到ini文件中
ini文件内容設置(角色序号默認設置為1,第一個角色):
[角色ID]
角色=1
2、每執行完一個角色之後,角色序号加一
3、判斷最後一個角色執行完成之後退出腳本
拿上面三個角色做例子。
我們第一次啟動,角色序号是一,選擇第一個賬号登錄。
1、鍵盤上的方向鍵可以選擇人物,小編設置每次選擇角色的時候,鼠标先點擊第一個人物,然後讀取當前該執行的角色序号,例如當前要執行的角色序号是2,那就按下一次右方向鍵,選擇第二個人物,如果是3則按下兩次方向鍵。
(方式有很多,例如,記錄第一個角色的中心坐标點來遍曆找到其它要執行的角色。哪種方便選哪種。
)
- w = CInt(Plugin.File.ReadINI("角色ID", "角色", "G:\test\DNF.ini")) //讀取角色序号
- If w > 3 Then
- MessageBox "所有角色都執行完畢。"
- ExitScript
- End If
- MoveTo 90, 120
- LeftClick 1 //點擊選擇第一個角色
- Delay 1000
- If w > 1 Then 判斷如果不是第一個角色就按方向鍵選擇其他角色
- For i = 1 To w - 1
- KeyPressS "Right", 1
- KeyPress 39,1//按下方向鍵右鍵進行選擇角色
- Delay 1000
- Next
- End If
複制代碼
角色登錄之後
角色登錄之後,開始執行任務。
1、建立一個線程,命名為主線程。主線程裡寫我們需要腳本執行的任務。
2、再建立一個新的線程,命名為時間監視。用來監控時間。
*第一重判斷,判斷當前時間是否是早晨六點
*是早晨六點的話,停止主線程,把ini裡的角色序号重置為1
*重新啟動主線程,從第一個角色開始執行
全部代碼:
- //在角色選擇界面啟動腳本
- Dim 總共角色數
- 總共角色數=3
- hwnd= Plugin.Window.Find("地下城與勇士", 0)
- Call Plugin.Window.Size(hwnd,800,600)
- Call Plugin.Window.move(hwnd, 0, 0)
- Call Plugin.Window.Active(hwnd)
- 線程ID = BeginThread(主線程)
- 線程ID2=BeginThread(時間監視)
- Sub 主線程()
- Do
- //點擊第一個角色
- w = CInt(Plugin.File.ReadINI("角色ID", "角色", "G:\test\DNF.ini"))
- If w > 3 Then
- MessageBox "所有角色都執行完畢。"
- ExitScript
- End If
- TracePrint w
- MoveTo 90, 120
- LeftClick 1 //點擊
- Delay 1000
- If w > 1 Then
- For i = 1 To w - 1
- KeyPressS "Right", 1
- KeyPress 39,1//按下方向鍵右鍵進行選擇角色
- Delay 1000
- Next
- End If
- Call Plugin.File.WriteINI("角色ID", "角色", w 1, "G:\test\DNF.ini")
- Moveto 395, 547
- LeftClick 1 //點擊開始遊戲
- Delay 8000
- KeyPress "Esc", 1 //調出遊戲菜單
- Moveto 390, 410
- LeftClick 1//點擊選擇角色
- Delay 3000
- Loop
- End Sub
- Sub 時間監視()
- Do
- s = Hour(Time)//獲取系統時間 小時
- m =minute(Time)//獲取系統時間 分鐘
- If s = 6 and m = 0 Then //如果是六點
- StopThread 線程ID //停止主線程
- Call Plugin.File.WriteINI("角色ID", "角色", 1, "G:\test\DNF.ini")
- KeyPress "Esc", 1 //調出遊戲菜單
- Moveto 390, 410
- LeftClick 1//點擊選擇角色
- Delay 3000
- End If
- Delay 6000
- Loop
- 線程ID= BeginThread(主線程)
- End Sub
複制代碼
注意:小編的代碼簡單說明了下思路,許多細節的地方,童鞋們在寫的過程中需要多加注意下。例如,當我們判斷到當前時間是六點的時候,如果我們的角色還在做副本怎麼辦?
拓展思路:
如果童鞋們希望在角色把當前的任務執行完之後再從第一個角色開始,我們可以這樣:
1、我們建立一個全局變量
2、時間監控線程判斷到當前時間是六點的時候,全局變量的值設置為1
3、判斷下當前角色的疲勞值,如果疲勞值還有,繼續做任務
(在主線程的末尾,角色任務執行完的時候,判斷下全局變量,如果為1,退到角色選擇界面,從第一個角色開始執行。)
4、如果疲勞值沒有了則退出到角色選擇界面
(注意:這裡需要做的是判斷當前角色是在什麼地方,然後該如何回到角色選擇界面,例如,如果在副本裡,就需要先退出副本然後再回到主界面)
, 更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!