After all these years, I finally was able to develop an auto-remort script. If you hit level 101, it will automatically remort you, put appropriate amounts of SP into the appropriate skills, switch your weapon, begin auto-firing your weapon, and then transport you to your desired location. Only useful for those who are at such a high RL that they can afford to do all of that at lvl 1. Nevertheless, it's an important step on a much larger project I've been thinking about.
echo("");
echo("Type startautoremort(); to activate.");
echo("Type stopautoremort(); to deactivate.");
echo("");
function startautoremort() {
$yesremort = true;
echo("");
echo("Auto remorting at level 101");
echo("");
}
function stopautoremort() {
$yesremort = false;
echo("");
echo("No longer auto remorting");
echo("");
}
event::Attach(eventClientMessage, lvlCatch);
function lvlCatch(%client, %msg) {
%level100 = Match::String(%msg, "Welcome to level 100");
%level101 = Match::String(%msg, "Welcome to level 101");
if(%level100 && $yesremort) {
$DeusRPG::AutoCasting = 0; //Stop Deus autocasting at lvl 100 so it doesn't get in the way of remorting at lvl 101
}
if(%level101 && $yesremort) {
Schedule("say(0, \"#cast remort\");", 0);
Schedule("autoskills();", 5);
}
}
function autoskills() {
%i = 0.5;
schedule("remoteeval(2048, ScoresOn);", %i);
schedule("ClientMenuSelect(sp);", %i++);
// ClientMenuselect("page 1"); //Pages 1-4
// ClientMenuSelect("2 1"); //First number is skill 1-23, second number is the page to show after.
schedule("say(1,\"19\");",%i++); //19 into Slashing
schedule("ClientMenuSelect(\"1 1\");",%i++);
schedule("say(1,\"10\");",%i++); //10 into Weght Capacity
schedule("ClientMenuSelect(\"5 1\");",%i++);
schedule("say(1,\"17\");",%i++); //17 into Offensive Casting
schedule("ClientMenuSelect(\"10 2\");",%i++);
schedule("say(1,\"20\");",%i++); //20 into Endurance
schedule("ClientMenuSelect(\"15 3\");",%i++);
schedule("say(1,\"20\");",%i++); //20 into Energy
schedule("ClientMenuSelect(\"20 4\");",%i++);
schedule("say(1,\"10\");",%i++); //10 into Neutral Casting
schedule("ClientMenuSelect(\"22 4\");",%i++);
schedule("remoteeval(2048, ScoresOff);", %i++);
schedule("say(0,\"#cast transport uber\");", %i++);
schedule("use(\"Anchet's Sword\");", %i++);
schedule("DeusRPGPack::func14();", %i++);
schedule("DeusRPGPack::func14();", %i++);
}