lockandkey: add portal summon queue, peace/magic combat states, 15min service check, add ah_recall nav
All checks were successful
/ test (push) Successful in 31s
All checks were successful
/ test (push) Successful in 31s
This commit is contained in:
parent
ac998c3872
commit
346409c284
4 changed files with 366 additions and 10 deletions
32
af/ah_recall.af
Normal file
32
af/ah_recall.af
Normal file
|
|
@ -0,0 +1,32 @@
|
||||||
|
~~ {
|
||||||
|
~~ FOR AUTO-COMPLETION ASSISTANCE: testvar getvar setvar touchvar clearallvars clearvar getcharintprop getchardoubleprop getcharquadprop getcharboolprop getcharstringprop getisspellknown getcancastspell_hunt getcancastspell_buff getcharvital_base getcharvital_current getcharvital_buffedmax getcharskill_traininglevel getcharskill_base getcharskill_buffed getplayerlandcell getplayercoordinates coordinategetns coordinategetwe coordinategetz coordinatetostring coordinateparse coordinatedistancewithz coordinatedistanceflat wobjectgetphysicscoordinates wobjectgetname wobjectgetobjectclass wobjectgettemplatetype wobjectgetisdooropen wobjectfindnearestmonster wobjectfindnearestdoor wobjectfindnearestbyobjectclass wobjectfindininventorybytemplatetype wobjectfindininventorybyname wobjectfindininventorybynamerx wobjectgetselection wobjectgetplayer wobjectfindnearestbynameandobjectclass actiontryselect actiontryuseitem actiontryapplyitem actiontrygiveitem actiontryequipanywand actiontrycastbyid actiontrycastbyidontarget chatbox chatboxpaste statushud statushudcolored uigetcontrol uisetlabel isfalse istrue iif randint cstr strlen getobjectinternaltype cstrf stopwatchcreate stopwatchstart stopwatchstop stopwatchelapsedseconds cnumber floor ceiling round abs getworldname getitemcountininventorybyname getheading getitemcountininventorybynamerx getheadingto actiontrygiveprofile vitae getfellowshipstatus getfellowshipname getfellowshipisopen getfellowshipisleader getfellowshipleaderid getfellowshipcanrecruit getfellowid getfellowshipcount getfellowshiplocked getfellowname getfellowshipisfull sin cos tan sqrt asin acos atan atan2 sinh cosh tanh vtsetmetastate getregexmatch echo chr ord wobjectgetid wobjectgethealth wobjectfindbyid wobjectgetintprop wobjectfindnearestbytemplatetype wobjectgetopencontainer testquestflag getquestktprogress isrefreshingquests getquestktrequired getqueststatus getisday getgamehour getgamehourname getisnight getgameday getgameticks getminutesuntilday getgamemonth getgamemonthname getminutesuntilnight getgameyear uisetvisible uiviewvisible uiviewexists getgvar touchgvar getpvar touchpvar setgvar cleargvar setpvar clearpvar testgvar clearallgvars testpvar clearallpvars dictgetitem dictcreate dicthaskey dictadditem dictkeys dictremovekey dictvalues dictclear dictsize dictcopy listgetitem listpop listcreate listcontains listremove listadd listindexof listremoveat listinsert listlastindexof listclear listcopy listcount listreverse
|
||||||
|
|
||||||
|
~~
|
||||||
|
~~ File auto-generated by metaf, a program created by Eskarina of Morningthaw/Coldeve.
|
||||||
|
~~ Get metaf here: https://github.com/JJEII/metaf/
|
||||||
|
~~
|
||||||
|
~~ All recognized structural designators in a NAV-ONLY file:
|
||||||
|
~~ NAV:
|
||||||
|
~~
|
||||||
|
~~ All recognized NAV types:
|
||||||
|
~~ circular follow
|
||||||
|
~~ linear once
|
||||||
|
~~
|
||||||
|
~~ All recognized NAV NODE types:
|
||||||
|
~~ flw vnd
|
||||||
|
~~ pnt ptl
|
||||||
|
~~ rcl tlk
|
||||||
|
~~ pau chk
|
||||||
|
~~ cht jmp
|
||||||
|
~~ prt (deprecated in VTank)
|
||||||
|
~~
|
||||||
|
|
||||||
|
~~
|
||||||
|
~~ REMEMBER THAT NAV-ONLY FILES MUST CONTAIN EXACTLY ONE NAV!
|
||||||
|
~~ }
|
||||||
|
|
||||||
|
NAV: nav0 once ~~ {
|
||||||
|
pau 56.7788082122803 33.6335268974304 0.175020837783813 5000
|
||||||
|
cht 56.7788082122803 33.6335268974304 0.175020837783813 {/ah}
|
||||||
|
pau 56.7788082122803 33.6335268974304 0.175020837783813 20000
|
||||||
|
~~ }
|
||||||
|
|
@ -33,7 +33,7 @@ STATE: {Default}
|
||||||
IF: Not Expr {testvar[disableBellaServices]}
|
IF: Not Expr {testvar[disableBellaServices]}
|
||||||
DO: DoExpr {setvar[disableBellaServices, 0]}
|
DO: DoExpr {setvar[disableBellaServices, 0]}
|
||||||
IF: Not Expr {testvar[serviceCheckInterval]}
|
IF: Not Expr {testvar[serviceCheckInterval]}
|
||||||
DO: DoExpr {setvar[serviceCheckInterval, 43200]}
|
DO: DoExpr {setvar[serviceCheckInterval, 900]}
|
||||||
IF: Not Expr {testvar[serviceClock]}
|
IF: Not Expr {testvar[serviceClock]}
|
||||||
DO: DoAll
|
DO: DoAll
|
||||||
DoExpr {setvar[serviceClock,stopwatchcreate[]]}
|
DoExpr {setvar[serviceClock,stopwatchcreate[]]}
|
||||||
|
|
@ -53,7 +53,11 @@ STATE: {idle}
|
||||||
IF: Death
|
IF: Death
|
||||||
DO: SetState {death}
|
DO: SetState {death}
|
||||||
IF: Always
|
IF: Always
|
||||||
DO: Chat {/vt opt set enablebuffing false}
|
DO: DoAll
|
||||||
|
Chat {/vt opt set enablebuffing false}
|
||||||
|
DoExpr {setcombatstate[`peace`]}
|
||||||
|
DoExpr {clearvar[queuePrimary]}
|
||||||
|
DoExpr {clearvar[queueSecondary]}
|
||||||
~~ Listen for tells containing "primary"
|
~~ Listen for tells containing "primary"
|
||||||
IF: ChatCapture {(^(\[[A-z]+?\] |)You|.*\<Tell:IIDString:.+:(?<who>[^\<]*)\>.+\<\\Tell\>) .*, ".*primary.*"$} {}
|
IF: ChatCapture {(^(\[[A-z]+?\] |)You|.*\<Tell:IIDString:.+:(?<who>[^\<]*)\>.+\<\\Tell\>) .*, ".*primary.*"$} {}
|
||||||
DO: SetState {summon_primary}
|
DO: SetState {summon_primary}
|
||||||
|
|
@ -76,7 +80,9 @@ STATE: {summon_primary}
|
||||||
DO: DoAll
|
DO: DoAll
|
||||||
Chat {/vt opt set enablecombat false}
|
Chat {/vt opt set enablecombat false}
|
||||||
Chat {/ub face 180}
|
Chat {/ub face 180}
|
||||||
|
DoExpr {setcombatstate[`magic`]}
|
||||||
DoExpr {actiontryequipanywand[]}
|
DoExpr {actiontryequipanywand[]}
|
||||||
|
DoExpr {clearvar[queuePrimary]}
|
||||||
IF: SecsInStateGE 4
|
IF: SecsInStateGE 4
|
||||||
DO: DoExpr {actiontrycastbyid[157]}
|
DO: DoExpr {actiontrycastbyid[157]}
|
||||||
~~ Fizzle: retry cast
|
~~ Fizzle: retry cast
|
||||||
|
|
@ -84,8 +90,13 @@ STATE: {summon_primary}
|
||||||
DO: DoAll
|
DO: DoAll
|
||||||
DoExpr {actiontrycastbyid[157]}
|
DoExpr {actiontrycastbyid[157]}
|
||||||
SetState {summon_primary}
|
SetState {summon_primary}
|
||||||
|
~~ Queue incoming tells while casting
|
||||||
|
IF: ChatCapture {(^(\[[A-z]+?\] |)You|.*\<Tell:IIDString:.+:(?<who>[^\<]*)\>.+\<\\Tell\>) .*, ".*primary.*"$} {}
|
||||||
|
DO: DoExpr {setvar[queuePrimary, 1]}
|
||||||
|
IF: ChatCapture {(^(\[[A-z]+?\] |)You|.*\<Tell:IIDString:.+:(?<who>[^\<]*)\>.+\<\\Tell\>) .*, ".*secondary.*"$} {}
|
||||||
|
DO: DoExpr {setvar[queueSecondary, 1]}
|
||||||
IF: SecsInStateGE 17
|
IF: SecsInStateGE 17
|
||||||
DO: SetState {idle}
|
DO: SetState {summon_done}
|
||||||
|
|
||||||
STATE: {summon_secondary}
|
STATE: {summon_secondary}
|
||||||
~~ Face 90, equip wand, cast Summon Secondary Portal I (2648), retry on fizzle
|
~~ Face 90, equip wand, cast Summon Secondary Portal I (2648), retry on fizzle
|
||||||
|
|
@ -95,7 +106,9 @@ STATE: {summon_secondary}
|
||||||
DO: DoAll
|
DO: DoAll
|
||||||
Chat {/vt opt set enablecombat false}
|
Chat {/vt opt set enablecombat false}
|
||||||
Chat {/ub face 90}
|
Chat {/ub face 90}
|
||||||
|
DoExpr {setcombatstate[`magic`]}
|
||||||
DoExpr {actiontryequipanywand[]}
|
DoExpr {actiontryequipanywand[]}
|
||||||
|
DoExpr {clearvar[queueSecondary]}
|
||||||
IF: SecsInStateGE 4
|
IF: SecsInStateGE 4
|
||||||
DO: DoExpr {actiontrycastbyid[2648]}
|
DO: DoExpr {actiontrycastbyid[2648]}
|
||||||
~~ Fizzle: retry cast
|
~~ Fizzle: retry cast
|
||||||
|
|
@ -103,7 +116,21 @@ STATE: {summon_secondary}
|
||||||
DO: DoAll
|
DO: DoAll
|
||||||
DoExpr {actiontrycastbyid[2648]}
|
DoExpr {actiontrycastbyid[2648]}
|
||||||
SetState {summon_secondary}
|
SetState {summon_secondary}
|
||||||
|
~~ Queue incoming tells while casting
|
||||||
|
IF: ChatCapture {(^(\[[A-z]+?\] |)You|.*\<Tell:IIDString:.+:(?<who>[^\<]*)\>.+\<\\Tell\>) .*, ".*primary.*"$} {}
|
||||||
|
DO: DoExpr {setvar[queuePrimary, 1]}
|
||||||
|
IF: ChatCapture {(^(\[[A-z]+?\] |)You|.*\<Tell:IIDString:.+:(?<who>[^\<]*)\>.+\<\\Tell\>) .*, ".*secondary.*"$} {}
|
||||||
|
DO: DoExpr {setvar[queueSecondary, 1]}
|
||||||
IF: SecsInStateGE 17
|
IF: SecsInStateGE 17
|
||||||
|
DO: SetState {summon_done}
|
||||||
|
|
||||||
|
STATE: {summon_done}
|
||||||
|
~~ Check queue: process next summon request or return to idle
|
||||||
|
IF: Expr {testvar[queuePrimary]}
|
||||||
|
DO: SetState {summon_primary}
|
||||||
|
IF: Expr {testvar[queueSecondary]}
|
||||||
|
DO: SetState {summon_secondary}
|
||||||
|
IF: Always
|
||||||
DO: SetState {idle}
|
DO: SetState {idle}
|
||||||
|
|
||||||
STATE: {service_quest_refresh}
|
STATE: {service_quest_refresh}
|
||||||
|
|
|
||||||
|
|
@ -11,7 +11,7 @@ n
|
||||||
n
|
n
|
||||||
n
|
n
|
||||||
n
|
n
|
||||||
88
|
95
|
||||||
i
|
i
|
||||||
21
|
21
|
||||||
i
|
i
|
||||||
|
|
@ -305,7 +305,7 @@ n
|
||||||
s
|
s
|
||||||
e
|
e
|
||||||
s
|
s
|
||||||
setvar[serviceCheckInterval, 43200]
|
setvar[serviceCheckInterval, 900]
|
||||||
s
|
s
|
||||||
Default
|
Default
|
||||||
i
|
i
|
||||||
|
|
@ -419,11 +419,59 @@ idle
|
||||||
i
|
i
|
||||||
1
|
1
|
||||||
i
|
i
|
||||||
2
|
3
|
||||||
i
|
i
|
||||||
0
|
0
|
||||||
|
TABLE
|
||||||
|
2
|
||||||
|
K
|
||||||
|
V
|
||||||
|
n
|
||||||
|
n
|
||||||
|
4
|
||||||
|
i
|
||||||
|
2
|
||||||
s
|
s
|
||||||
/vt opt set enablebuffing false
|
/vt opt set enablebuffing false
|
||||||
|
i
|
||||||
|
7
|
||||||
|
TABLE
|
||||||
|
2
|
||||||
|
k
|
||||||
|
v
|
||||||
|
n
|
||||||
|
n
|
||||||
|
1
|
||||||
|
s
|
||||||
|
e
|
||||||
|
s
|
||||||
|
setcombatstate[`peace`]
|
||||||
|
i
|
||||||
|
7
|
||||||
|
TABLE
|
||||||
|
2
|
||||||
|
k
|
||||||
|
v
|
||||||
|
n
|
||||||
|
n
|
||||||
|
1
|
||||||
|
s
|
||||||
|
e
|
||||||
|
s
|
||||||
|
clearvar[queuePrimary]
|
||||||
|
i
|
||||||
|
7
|
||||||
|
TABLE
|
||||||
|
2
|
||||||
|
k
|
||||||
|
v
|
||||||
|
n
|
||||||
|
n
|
||||||
|
1
|
||||||
|
s
|
||||||
|
e
|
||||||
|
s
|
||||||
|
clearvar[queueSecondary]
|
||||||
s
|
s
|
||||||
idle
|
idle
|
||||||
i
|
i
|
||||||
|
|
@ -545,7 +593,7 @@ K
|
||||||
V
|
V
|
||||||
n
|
n
|
||||||
n
|
n
|
||||||
3
|
5
|
||||||
i
|
i
|
||||||
2
|
2
|
||||||
s
|
s
|
||||||
|
|
@ -566,7 +614,33 @@ n
|
||||||
s
|
s
|
||||||
e
|
e
|
||||||
s
|
s
|
||||||
|
setcombatstate[`magic`]
|
||||||
|
i
|
||||||
|
7
|
||||||
|
TABLE
|
||||||
|
2
|
||||||
|
k
|
||||||
|
v
|
||||||
|
n
|
||||||
|
n
|
||||||
|
1
|
||||||
|
s
|
||||||
|
e
|
||||||
|
s
|
||||||
actiontryequipanywand[]
|
actiontryequipanywand[]
|
||||||
|
i
|
||||||
|
7
|
||||||
|
TABLE
|
||||||
|
2
|
||||||
|
k
|
||||||
|
v
|
||||||
|
n
|
||||||
|
n
|
||||||
|
1
|
||||||
|
s
|
||||||
|
e
|
||||||
|
s
|
||||||
|
clearvar[queuePrimary]
|
||||||
s
|
s
|
||||||
summon_primary
|
summon_primary
|
||||||
i
|
i
|
||||||
|
|
@ -621,13 +695,77 @@ summon_primary
|
||||||
s
|
s
|
||||||
summon_primary
|
summon_primary
|
||||||
i
|
i
|
||||||
|
28
|
||||||
|
i
|
||||||
|
7
|
||||||
|
TABLE
|
||||||
|
2
|
||||||
|
k
|
||||||
|
v
|
||||||
|
n
|
||||||
|
n
|
||||||
|
2
|
||||||
|
s
|
||||||
|
p
|
||||||
|
s
|
||||||
|
(^(\[[A-z]+?\] |)You|.*\<Tell:IIDString:.+:(?<who>[^\<]*)\>.+\<\\Tell\>) .*, ".*primary.*"$
|
||||||
|
s
|
||||||
|
c
|
||||||
|
s
|
||||||
|
|
||||||
|
TABLE
|
||||||
|
2
|
||||||
|
k
|
||||||
|
v
|
||||||
|
n
|
||||||
|
n
|
||||||
|
1
|
||||||
|
s
|
||||||
|
e
|
||||||
|
s
|
||||||
|
setvar[queuePrimary, 1]
|
||||||
|
s
|
||||||
|
summon_primary
|
||||||
|
i
|
||||||
|
28
|
||||||
|
i
|
||||||
|
7
|
||||||
|
TABLE
|
||||||
|
2
|
||||||
|
k
|
||||||
|
v
|
||||||
|
n
|
||||||
|
n
|
||||||
|
2
|
||||||
|
s
|
||||||
|
p
|
||||||
|
s
|
||||||
|
(^(\[[A-z]+?\] |)You|.*\<Tell:IIDString:.+:(?<who>[^\<]*)\>.+\<\\Tell\>) .*, ".*secondary.*"$
|
||||||
|
s
|
||||||
|
c
|
||||||
|
s
|
||||||
|
|
||||||
|
TABLE
|
||||||
|
2
|
||||||
|
k
|
||||||
|
v
|
||||||
|
n
|
||||||
|
n
|
||||||
|
1
|
||||||
|
s
|
||||||
|
e
|
||||||
|
s
|
||||||
|
setvar[queueSecondary, 1]
|
||||||
|
s
|
||||||
|
summon_primary
|
||||||
|
i
|
||||||
6
|
6
|
||||||
i
|
i
|
||||||
1
|
1
|
||||||
i
|
i
|
||||||
17
|
17
|
||||||
s
|
s
|
||||||
idle
|
summon_done
|
||||||
s
|
s
|
||||||
summon_primary
|
summon_primary
|
||||||
i
|
i
|
||||||
|
|
@ -652,7 +790,7 @@ K
|
||||||
V
|
V
|
||||||
n
|
n
|
||||||
n
|
n
|
||||||
3
|
5
|
||||||
i
|
i
|
||||||
2
|
2
|
||||||
s
|
s
|
||||||
|
|
@ -673,7 +811,33 @@ n
|
||||||
s
|
s
|
||||||
e
|
e
|
||||||
s
|
s
|
||||||
|
setcombatstate[`magic`]
|
||||||
|
i
|
||||||
|
7
|
||||||
|
TABLE
|
||||||
|
2
|
||||||
|
k
|
||||||
|
v
|
||||||
|
n
|
||||||
|
n
|
||||||
|
1
|
||||||
|
s
|
||||||
|
e
|
||||||
|
s
|
||||||
actiontryequipanywand[]
|
actiontryequipanywand[]
|
||||||
|
i
|
||||||
|
7
|
||||||
|
TABLE
|
||||||
|
2
|
||||||
|
k
|
||||||
|
v
|
||||||
|
n
|
||||||
|
n
|
||||||
|
1
|
||||||
|
s
|
||||||
|
e
|
||||||
|
s
|
||||||
|
clearvar[queueSecondary]
|
||||||
s
|
s
|
||||||
summon_secondary
|
summon_secondary
|
||||||
i
|
i
|
||||||
|
|
@ -728,16 +892,128 @@ summon_secondary
|
||||||
s
|
s
|
||||||
summon_secondary
|
summon_secondary
|
||||||
i
|
i
|
||||||
|
28
|
||||||
|
i
|
||||||
|
7
|
||||||
|
TABLE
|
||||||
|
2
|
||||||
|
k
|
||||||
|
v
|
||||||
|
n
|
||||||
|
n
|
||||||
|
2
|
||||||
|
s
|
||||||
|
p
|
||||||
|
s
|
||||||
|
(^(\[[A-z]+?\] |)You|.*\<Tell:IIDString:.+:(?<who>[^\<]*)\>.+\<\\Tell\>) .*, ".*primary.*"$
|
||||||
|
s
|
||||||
|
c
|
||||||
|
s
|
||||||
|
|
||||||
|
TABLE
|
||||||
|
2
|
||||||
|
k
|
||||||
|
v
|
||||||
|
n
|
||||||
|
n
|
||||||
|
1
|
||||||
|
s
|
||||||
|
e
|
||||||
|
s
|
||||||
|
setvar[queuePrimary, 1]
|
||||||
|
s
|
||||||
|
summon_secondary
|
||||||
|
i
|
||||||
|
28
|
||||||
|
i
|
||||||
|
7
|
||||||
|
TABLE
|
||||||
|
2
|
||||||
|
k
|
||||||
|
v
|
||||||
|
n
|
||||||
|
n
|
||||||
|
2
|
||||||
|
s
|
||||||
|
p
|
||||||
|
s
|
||||||
|
(^(\[[A-z]+?\] |)You|.*\<Tell:IIDString:.+:(?<who>[^\<]*)\>.+\<\\Tell\>) .*, ".*secondary.*"$
|
||||||
|
s
|
||||||
|
c
|
||||||
|
s
|
||||||
|
|
||||||
|
TABLE
|
||||||
|
2
|
||||||
|
k
|
||||||
|
v
|
||||||
|
n
|
||||||
|
n
|
||||||
|
1
|
||||||
|
s
|
||||||
|
e
|
||||||
|
s
|
||||||
|
setvar[queueSecondary, 1]
|
||||||
|
s
|
||||||
|
summon_secondary
|
||||||
|
i
|
||||||
6
|
6
|
||||||
i
|
i
|
||||||
1
|
1
|
||||||
i
|
i
|
||||||
17
|
17
|
||||||
s
|
s
|
||||||
idle
|
summon_done
|
||||||
s
|
s
|
||||||
summon_secondary
|
summon_secondary
|
||||||
i
|
i
|
||||||
|
26
|
||||||
|
i
|
||||||
|
1
|
||||||
|
TABLE
|
||||||
|
2
|
||||||
|
k
|
||||||
|
v
|
||||||
|
n
|
||||||
|
n
|
||||||
|
1
|
||||||
|
s
|
||||||
|
e
|
||||||
|
s
|
||||||
|
testvar[queuePrimary]
|
||||||
|
s
|
||||||
|
summon_primary
|
||||||
|
s
|
||||||
|
summon_done
|
||||||
|
i
|
||||||
|
26
|
||||||
|
i
|
||||||
|
1
|
||||||
|
TABLE
|
||||||
|
2
|
||||||
|
k
|
||||||
|
v
|
||||||
|
n
|
||||||
|
n
|
||||||
|
1
|
||||||
|
s
|
||||||
|
e
|
||||||
|
s
|
||||||
|
testvar[queueSecondary]
|
||||||
|
s
|
||||||
|
summon_secondary
|
||||||
|
s
|
||||||
|
summon_done
|
||||||
|
i
|
||||||
|
1
|
||||||
|
i
|
||||||
|
1
|
||||||
|
i
|
||||||
|
0
|
||||||
|
s
|
||||||
|
idle
|
||||||
|
s
|
||||||
|
summon_done
|
||||||
|
i
|
||||||
8
|
8
|
||||||
i
|
i
|
||||||
1
|
1
|
||||||
|
|
|
||||||
21
nav/ah_recall.nav
Normal file
21
nav/ah_recall.nav
Normal file
|
|
@ -0,0 +1,21 @@
|
||||||
|
uTank2 NAV 1.2
|
||||||
|
4
|
||||||
|
3
|
||||||
|
3
|
||||||
|
56.7788082122803
|
||||||
|
33.6335268974304
|
||||||
|
0.175020837783813
|
||||||
|
0
|
||||||
|
5000
|
||||||
|
4
|
||||||
|
56.7788082122803
|
||||||
|
33.6335268974304
|
||||||
|
0.175020837783813
|
||||||
|
0
|
||||||
|
/ah
|
||||||
|
3
|
||||||
|
56.7788082122803
|
||||||
|
33.6335268974304
|
||||||
|
0.175020837783813
|
||||||
|
0
|
||||||
|
20000
|
||||||
Loading…
Add table
Add a link
Reference in a new issue