#class paths kill #class paths open #NOP ############################################################################################ #NOP ### Portals variable, used by the speedwalking aliases (afind, rfind, vfind) #NOP ############################################################################################ #var {portals} { {1} { {lvl}{1} {zone}{sendhian} {name}{922303584} {vnum}{20286} {cmd}{get 922303584 from $$portalbag;hold 922303584;enter;hold $$portal;put 922303584 in $$portalbag} } {2} { {lvl}{5} {zone}{aylor} {name}{garbage} {vnum}{32418} {cmd}{get garbage from $$portalbag;hold garbage;enter;hold $$portal;put garbage in $$portalbag} } {3} { {lvl}{10} {zone}{petstore} {name}{collar} {vnum}{995} {cmd}{get collar from $$portalbag;hold collar;enter;hold $$portal;put collar in $$portalbag} } {4} { {lvl}{25} {zone}{amusement} {name}{amulet} {vnum}{29364} {cmd}{get amulet from $$portalbag;hold amulet;enter;hold $$portal;put amulet in $$portalbag}} } #NOP ########################################################################### #NOP ### Adding/Clearing Portal List #NOP ########################################################################### #alias addportals { #foreach {$portals[]} {x} { #map dig {$portals[$x][cmd]} {$portals[$x][vnum]} } } #alias clearportals { #foreach {$portals[]} {y} { #map unlink {$portals[$y][cmd]} } } #alias lvladdportals { #foreach {$portals[]} {x} { #IF {$tier_level>=$portals[$x][lvl]} { #map dig {$portals[$x][cmd]} {$portals[$x][vnum]} } } } #alias lvlclearportals { #foreach {$portals[]} {y} { #IF {$tier_level>=$portals[$y][lvl]} { #map unlink {$portals[$y][cmd]} } } } #NOP ########################################################################### #NOP ### Advanced speedwalking aliases afind, rfind, vfind (area, room, vnum) #NOP ########################################################################### #ALIAS {afind} { #IF "%0"=="" { #show <169>Syntax:<099> af }; #else { #unvar path; #if {"$GMCP[ROOM][INFO][zone]"=="%1"} {#show <169>Already at <099>%1.}; #else { #show <169>Area Find:<099> %1; #var checkportal {}; #map get roomnote checkportal; #if {"$checkportal"!="noportal"} { #var portalsused 1; lvladdportals; #map find {} {} {} {%1}; }; #ELSE { #map find {} {} {} {%1} }; #if {$portalsused} { #var portalsused 0; lvlclearportals }; #path run; } } } #ALIAS {vfind} { #IF "%0"=="" { #show <169>Syntax:<099> vf }; #else { #unvar path; #if {"$GMCP[ROOM][INFO][num]"=="%1"} {#show <169>Already at <099>%1.}; #else { #show <169>Vnum Find:<099> %1; #var checkportal {}; #map get roomnote checkportal; #if {"$checkportal"!="noportal"} { #var portalsused 1; lvladdportals; #map find {%1} }; #else { #map find {%1} }; #if {$portalsused} { #var portalsused 0; lvlclearportals }; #path run; } } } #ALIAS {rfind} { #IF "%0"=="" { #show <169>Syntax:<099> rf }; #else { #show <169>Room Find:<099> %0; #var checkportal {}; #map get roomnote checkportal; #if {"$checkportal"!="noportal"} { #var portalsused 1; lvladdportals; #map find {%0} }; #else { #map find {%0} }; #if {$portalsused} { #var portalsused 0; lvlclearportals; }; #path run; } } #NOP ########################################################################### #NOP ### Mfind alias, will only find the path and show it to you, not run it #NOP ########################################################################### #ALIAS mfind { lvladdportals; #map find %0; #path show; lvlclearportals } #NOP ########################################################################### #NOP ### Hfind alias #NOP ### This let's you use a very loose string to find a path to the closest #NOP ### matching room in the current area. #NOP ########################################################################### #ALIAS hfind {#map find {%i%*%0%*} {} {} {$GMCP[ROOM][INFO][zone]};#path run} #NOP ########################################################################### #NOP ### Advanced runto alias "go" #NOP ########################################################################### #ALIAS {go} { #if {$GMCP[ROOM][INFO][num]==32418} { #if "%0"=="" { #show Already at Recall }; #else { rt %0 } }; #elseif {$GMCP[ROOM][INFO][num]==26151} { #if "%0"=="" { d }; #else { d; rt %0 } }; #elseif {$GMCP[ROOM][INFO][num]==26152} { #if "%0"=="" { #send {enter elevator}; d }; #else { #send {enter elevator}; d; rt %0 } }; #elseif {"$GMCP[ROOM][INFO][zone]"=="aylor"} { #if "%0"=="" { rt recall }; #else { rt recall; rt %0 } }; #else { #if "%0"=="" { vf 32418 }; #else { vf 32418; rt %0 } } } #NOP ########################################################################### #NOP ### Abbreviated aliases for afind, hfind, mfind, rfind, vfind #NOP ########################################################################### #ALIAS af {afind} #ALIAS hf {hfind} #ALIAS mf {mfind} #ALIAS rf {rfind} #ALIAS vf {vfind} #class paths close