返回列表 發帖
var1=0x006B9E44
var2=0x006B9E48
ExtVar[51]=0
ExtVar[52]=0
ExtVar[1]= ReadMemory[var1,1]
ExtVar[2]= ( ...
skyblue0622 發表於 2013-8-7 21:29


在程式頭加上一個自己定義的標記, 然後程式結束之後回到這個標記
我習慣用Star, 和fan62用rerun是一樣的
隨便一個名稱後面加個冒號就是標記了
在第二次執行之前加上一個小時的延遲

============================
Star:
        //你的腳本程式放這邊
        //PART1
        //PART2
Delay(3600000)
Jump Star
============================

如果PART1和PART2沒有什麼相衝突的問題的話這樣就可以了
當然也要注意PART1和PART2之間的銜接問題
多試試就可以了
1

評分人數

  • fan62

TOP

回復 5# skyblue0622

PART1的指令,是要傳送另外一個地圖,點擊NPC後再傳送回來原地圖,需要每小時重複一次
而PART2的指令,是在同一地圖內不斷的點擊4支NPC
會自行判斷如果NPC死亡自動跳下一支,不斷的環繞
我需要的是part1執行後接著執行prat2
然後一小時後再接著執行part1再接part2這樣子


每小時傳送一次地圖, 然後不斷的判斷4個NPC是否有死亡並自動切換點擊, 一個小時後再傳送一次
是這樣嗎

我這裡有些假設
如果PART1是單純重送地圖
然後PART2是單純判斷NPC
那可以這樣試試

============================
Delay(2000)
ExtVar[99] = Timer
Call PART1
Star:
                If Timer - ExtVar[99] >= 36000000
                        ExtVar[99] = Timer
                        Call PART1
                End if

                Call PART2
Jump Star

PART1:
        Delay(2000)
        //PART1 程式放這裡
        Return
       
PART2:
        Delay(2000)
        //PART2 程式放這裡
        Return
============================

Call 會跳到一個自己定義的子程式, 然後要有相應的Return才能跳回原來Call的地方
Timer可以取得程式執行了多久的時間, 單位是千分之一秒
PART1和PART2裡面的Delay(2000)是動作延遲, 自己拿捏, 比如傳送地圖會不會有時間差

程式開始會停個兩秒, 方便自己準備而已, 然後先傳送一次地圖
先用ExtVar[99]取得目前執行了多久時間
然後用現在的Timer減去剛剛取得的ExtVar[99]算出時間差, 看有沒有到一小時
有的話重設一次ExtVar[99], 再去跑PART1, 沒有的話則是繼續重複PART2

TOP

返回列表