#class paths kill #class paths open #NOP ############################################################################################ #NOP ### Portals variable, used by the speedwalking aliases (afind, rfind, vfind) #NOP ############################################################################################ #var {portals} { {1}{{zone}{aylor}{name}{garbage}{vnum}{32418}{cmd}{get garbage from $portalbag;hold garbage;enter;hold wad;put garbage in $portalbag}} {2}{{zone}{petstore}{name}{collar}{vnum}{995}{cmd}{get collar from $portalbag;hold collar;enter;hold wad;put collar in $portalbag}} {3}{{zone}{amusement}{name}{amulet}{vnum}{29364}{cmd}{get amulet from $portalbag;hold amulet;enter;hold wad;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