import Ġworld . greg s . void ps . bot .* Ċ import Ġworld . greg s . void ps . bot . bank . withdraw All Ċ import Ġworld . greg s . void ps . bot . navigation . await Ċ import Ġworld . greg s . void ps . bot . navigation . goTo Area Ċ import Ġworld . greg s . void ps . bot . skill . com bat . set Attack Style Ċ import Ġworld . greg s . void ps . bot . skill . com bat . setAuto Cast Ċ import Ġworld . greg s . void ps . engine . action . Action Started Ċ import Ġworld . greg s . void ps . engine . action . ActionType Ċ import Ġworld . greg s . void ps . engine . client . ui . event . Interface Opened Ċ import Ġworld . greg s . void ps . engine . client . variable . clear Var Ċ import Ġworld . greg s . void ps . engine . entity . World Ċ import Ġworld . greg s . void ps . engine . entity . character . contain . inventory Ċ import Ġworld . greg s . void ps . engine . entity . character . move . walk Ċ import Ġworld . greg s . void ps . engine . entity . character . npc . NPC Ċ import Ġworld . greg s . void ps . engine . entity . character . player . Bot Ċ import Ġworld . greg s . void ps . engine . entity . character . player . Player Ċ import Ġworld . greg s . void ps . engine . entity . character . player . skill . Skill Ċ import Ġworld . greg s . void ps . engine . entity . has Effect Ċ import Ġworld . greg s . void ps . engine . entity . item . Equip Slot Ċ import Ġworld . greg s . void ps . engine . entity . item . equ ipped Ċ import Ġworld . greg s . void ps . engine . entity . obj . GameObject Ċ import Ġworld . greg s . void ps . engine . entity . obj . Object Click Ċ import Ġworld . greg s . void ps . engine . event . on Ċ import Ġworld . greg s . void ps . engine . map . area . Areas Ċ import Ġworld . greg s . void ps . engine . map . area . Map Area Ċ import Ġworld . greg s . void ps . engine . tick . Startup Ċ import Ġworld . greg s . void ps . engine . utility . inject Ċ import Ġworld . greg s . void ps . world . activity . bank . has Ċ import Ġworld . greg s . void ps . world . interact . entity . com bat . attack ers Ċ import Ġworld . greg s . void ps . world . interact . entity . com bat . spell Book Ċ Ċ val Ġareas : ĠAre as Ġby Ġinject () Ċ val Ġtasks : ĠTask Manager Ġby Ġinject () Ċ Ċ on < World , ĠStartup > Ġ{ ĊĠĠĠ Ġval Ġarea Ġ= Ġareas [" lum bridge _ com bat _ t utors "] Ġ?: Ġreturn @ on ĊĠĠĠ Ġval Ġrange Ġ= Ġ 1 .. 5 ĊĠĠĠ Ġval Ġskills Ġ= ĠlistOf ( Skill . Attack , ĠSkill . Magic , ĠSkill . Range ) ĊĠĠĠ Ġval Ġme le es Ġ= ĠlistOf ( Skill . Attack , ĠSkill . Strength , ĠSkill . Def ence ) ĊĠĠĠ Ġfor Ġ( skill Ġin Ġskills ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġme lee Ġ= Ġskill Ġ== ĠSkill . Attack ĊĠĠĠĠĠĠĠ Ġval Ġtask Ġ= ĠTask ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġname Ġ= Ġ" train Ġ${ if Ġ( me lee ) Ġ" me lee " Ġelse Ġskill . name . toLowerCase ()} Ġat Ġ${ area . name }". replace ("_ ", Ġ" Ġ"), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġblock Ġ= Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtrain ( area , Ġif Ġ( me lee ) Ġme le es . filter Ġ{ Ġplayer . levels . getMax ( it ) Ġin Ġrange Ġ}. random () Ġelse Ġskill , Ġrange ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ}, ĊĠĠĠĠĠĠĠĠĠĠĠ Ġarea Ġ= Ġarea . area , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġspaces Ġ= Ġif Ġ( me lee ) Ġ 3 Ġelse Ġ 1 , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġrequirements Ġ= ĠlistOf ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ{ Ġif Ġ( me lee ) Ġme le es . any Ġ{ Ġplayer . levels . getMax ( it ) Ġin Ġrange Ġ} Ġelse Ġplayer . levels . getMax ( skill ) Ġin Ġrange Ġ}, ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ{ Ġcan Get Gear And Ammo ( skill ) Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġtasks . register ( task ) ĊĠĠĠ Ġ} Ċ } Ċ Ċ suspend Ġfun ĠBot . train ( map : ĠMap Area , Ġskill : ĠSkill , Ġrange : ĠInt Range ) Ġ{ ĊĠĠĠ Ġsetup Gear ( map , Ġskill ) ĊĠĠĠ Ġif Ġ( skill Ġ== ĠSkill . Magic ) Ġ{ ĊĠĠĠĠĠĠĠ Ġset Auto Cast (" wind _ strike ") ĊĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠ Ġplayer . clear Var (" autoc ast ") ĊĠĠĠĠĠĠĠ Ġset Attack Style ( skill ) ĊĠĠĠ Ġ} ĊĠĠĠ Ġvar Ġtarget : ĠAny ? Ġ= Ġnull ĊĠĠĠ Ġwhile Ġ( target Ġ== Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠ Ġawait (" tick ") ĊĠĠĠĠĠĠĠ Ġtarget Ġ= Ġif Ġ( skill Ġ== ĠSkill . Range ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġplayer . viewport . objects ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. filter Ġ{ Ġit . id Ġ== Ġ" arch ery _ target " Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. random OrNull () ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġplayer . viewport . np cs . current ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. filter Ġ{ Ġis Available Target ( map , Ġit , Ġskill ) Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. random OrNull () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĠĠĠ Ġif Ġ( target Ġis ĠN PC ) Ġ{ ĊĠĠĠĠĠĠĠ Ġplayer . walk ( target . tile ) ĊĠĠĠ Ġ} ĊĠĠĠ Ġwhile Ġ( player . levels . getMax ( skill ) Ġ< Ġrange . last Ġ+ Ġ 1 Ġ&& Ġhas Ammo ( skill )) Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( target Ġis ĠGameObject ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġobject Option ( target , Ġ" Shoot - at ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġawait < Player , ĠObject Click >() ĊĠĠĠĠĠĠĠĠĠĠĠ Ġawait (" tick ") ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġif Ġ( target Ġis ĠN PC ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġnpc Option ( target , Ġ" Attack ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġawait < Player , ĠAction Started >({ Ġtype Ġ== ĠAction Type . Combat Ġ}) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġawait (" tick ") ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } ĊĊ Ċ suspend Ġfun ĠBot . setup Gear ( area : ĠMap Area , Ġskill : ĠSkill ) Ġ{ ĊĠĠĠ Ġwhen Ġ( skill ) Ġ{ ĊĠĠĠĠĠĠĠ ĠSkill . Magic Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġwithdraw All (" air _ rune ", Ġ" mind _ rune ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġgo To Area ( area ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ(! player . inventory . contains (" air _ rune ") Ġ|| Ġ! player . inventory . contains (" mind _ rune ")) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġclaim (" mik asi ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ ĠSkill . Range Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġwithdraw All (" training _ bow ", Ġ" training _ arrows ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġgo To Area ( area ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ(! player . inventory . contains (" training _ bow ") Ġ|| Ġ! player . inventory . contains (" training _ arrows ")) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġclaim (" nem art i ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġequip (" training _ bow ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġequip (" training _ arrows ") ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġelse Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġwithdraw All (" training _ s word ", Ġ" training _ shield ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġgo To Area ( area ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ(! player . inventory . contains (" training _ s word ")) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġt utor Ġ= Ġplayer . viewport . np cs . current . first Ġ{ Ġit . id Ġ== Ġ" har lan " Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġnpc Option ( t utor , Ġ" Talk - to ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġawait < Player , ĠInterface Opened >({ Ġid . startsWith (" dialog ue _ ") Ġ}) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġawait (" tick ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdialogue Option (" continue ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdialogue Option (" line 4 ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdialogue Option (" continue ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdialogue Option (" continue ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdialogue Option (" continue ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġequip (" training _ s word ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġequip (" training _ shield ") ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ Ċ suspend Ġfun ĠBot . claim ( npc : ĠString ) Ġ{ ĊĠĠĠ Ġval Ġt utor Ġ= Ġplayer . viewport . np cs . current . first Ġ{ Ġit . id Ġ== Ġnpc Ġ} ĊĠĠĠ Ġnpc Option ( t utor , Ġ" Talk - to ") ĊĠĠĠ Ġawait < Player , ĠInterface Opened >({ Ġid . startsWith (" dialog ue _ ") Ġ}) ĊĠĠĠ Ġawait (" tick ") ĊĠĠĠ Ġdialogue Option (" continue ") ĊĠĠĠ Ġdialogue Option (" line 3 ") ĊĠĠĠ Ġdialogue Option (" continue ") ĊĠĠĠ Ġdialogue Option (" continue ") Ċ } Ċ Ċ fun ĠBot . is Available Target ( map : ĠMap Area , Ġnpc : ĠN PC , Ġskill : ĠSkill ): ĠBoolean Ġ{ ĊĠĠĠ Ġif Ġ( npc . has Effect (" in _ com bat ") Ġ&& Ġ! npc . attack ers . contains ( player )) Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġfalse ĊĠĠĠ Ġ} ĊĠĠĠ Ġif Ġ(! npc . def . options . contains (" Attack ")) Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġfalse ĊĠĠĠ Ġ} ĊĠĠĠ Ġif Ġ(! map . area . contains ( npc . tile )) Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġfalse ĊĠĠĠ Ġ} ĊĠĠĠ Ġreturn Ġnpc . id Ġ== Ġif Ġ( skill Ġ== ĠSkill . Magic ) Ġ" magic _ dummy " Ġelse Ġ" me lee _ dummy " Ċ } ĊĊ Ċ fun ĠBot . can Get Gear And Ammo ( skill : ĠSkill ): ĠBoolean Ġ{ ĊĠĠĠ Ġreturn Ġwhen Ġ( skill ) Ġ{ ĊĠĠĠĠĠĠĠ ĠSkill . Magic Ġ-> Ġ( player . has (" air _ rune ", Ġtrue ) Ġ&& Ġplayer . has (" mind _ rune ", Ġtrue )) Ġ|| Ġ! player . has Effect (" claimed _ t utor _ consum ables ") Ġ&& Ġplayer . spell Book Ġ== Ġ" modern _ spell book " ĊĠĠĠĠĠĠĠ ĠSkill . Range Ġ-> Ġ( player . has (" training _ bow ", Ġtrue ) Ġ&& Ġ( player . has (" training _ arrows ", Ġtrue )) Ġ|| Ġ! player . has Effect (" claimed _ t utor _ consum ables ")) ĊĠĠĠĠĠĠĠ Ġelse Ġ-> Ġtrue ĊĠĠĠ Ġ} Ċ } Ċ Ċ fun ĠBot . has Ammo ( skill : ĠSkill ): ĠBoolean Ġ= Ġwhen Ġ( skill ) Ġ{ ĊĠĠĠ ĠSkill . Range Ġ-> Ġplayer . equ ipped ( Equip Slot . Ammo ). isNotEmpty () ĊĠĠĠ ĠSkill . Magic Ġ-> Ġplayer . inventory . contains (" air _ rune ") Ġ&& Ġplayer . inventory . contains (" mind _ rune ") ĊĠĠĠ Ġelse Ġ-> Ġtrue Ċ } Ċ