You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
300 lines
6.6 KiB
300 lines
6.6 KiB
#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 <zone>
|
|
};
|
|
#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 <vnum>
|
|
};
|
|
#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 <roomname>
|
|
};
|
|
#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
|