Simba Code:
program PythiusF2pTeleTrainer;
{$DEFINE SRL_USE_REMOTEINPUT} //{$DEFINE SRL_DISABLE_REMOTEINPUT}
{$I SRL/osr.Simba}
{** Reworked Joulaha's teleporter script into my own simple script **}
const
LOGIN_NAME = '';
LOGIN_PASS = '';
IS_MEMBER = False;
teleLoc = 1; { 1:Lumby | 2:Varrock | 3:Falador }
teleTimes = 2000; { Amount of Law Runes }
var
xpFromSkill: integer;
tLoc: string;
F2PWorlds: TIntegerArray = [301, 308, 316, 335, 337, 379, 380, 382, 383, 384, 394, 397, 398, 399, 417, 418, 426, 430, 431, 433, 434, 435, 436, 437, 451, 452, 453, 454, 455, 456, 470, 471, 472, 473, 475, 476, 483, 497, 498, 499, 500, 501, 536, 537, 542, 543, 544, 545, 546, 547, 552, 553, 554, 555, 556, 557, 562, 563, 564, 565, 566, 567, 571, 573, 574, 575, 576];
P2PWorlds: TIntegerArray = [302, 303, 304, 305, 306, 307, 309, 310, 311, 312, 313, 314, 315, 317, 320, 321, 322, 323, 324, 325, 327, 328, 329, 330, 331, 332, 333, 334, 336, 337, 338, 339, 340, 341, 343, 344, 346, 347, 348, 350, 351, 352, 354, 355, 356, 367, 358, 359, 360, 362, 367, 368, 369, 370, 374, 375, 376, 377, 378, 386, 387, 388, 389, 395, 421, 422, 424, 443, 44, 445, 463, 464, 465, 466, 477, 478, 479, 480, 481, 482, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 505, 506, 4507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 531, 532, 534, 535];
{** From Lazy's Script **}
procedure declarePlayers();
begin
WriteLn([(Time)], 'SCRIPT: Checking if DeclarePlayers() procedure needs to run');
if (login.IsOpen = False) then
exit;
WriteLn([(Time)], 'SCRIPT: Starting DeclarePlayers() procedure');
Login.AddPlayer(LOGIN_NAME, LOGIN_PASS, '', []);
if Login.Players[0].Password <> '' then
begin
WriteLn([(Time)], 'SCRIPT: Checking if player is a member');
WriteLn([(Time)], 'SCRIPT: Switching to a user defined world');
if IS_MEMBER = False then
Login.SwitchToWorld(F2PWorlds[Random(0, High(F2PWorlds))])
else
Login.SwitchToWorld(P2PWorlds[Random(0, High(P2PWorlds))]);
WriteLn([(Time)], 'SCRIPT: Logging player in');
Login.LoginPlayer;
WriteLn([(Time)], 'SCRIPT: DeclarePlayers() procedure has finished');
end
else
begin
WriteLn([(Time)], 'SCRIPT: No player details found');
TerminateScript;
end;
end;
{** Random basic excuse of an antiban **}
procedure doAB();
begin
case random(100) of
0..5: antiban.HoverSkill(ERSSkill.MAGIC, 2000, true);
6..10: antiban.SmallRandomMouse();
11..15: antiban.LoseFocus();
16..20: antiban.RandomMouse();
21..25: begin
antiban.RandomMouse();
wait(3000, 5000);
end;
end;
end;
procedure castTele();
var
tele: integer;
MS: Int32;
begin
{** Tried to put mouse speed randomization
but I don't even know if it even works **}
MS := Mouse.Speed;
Mouse.Speed := 30;
Mouse.Speed := MS;
if RSClient.IsLoggedIn then
repeat
case random(50) of
0..20: begin
Mouse.Speed := Random(24, 50);
Mouse.Speed := MS;
end;
end;
antiban.DismissRandom();
case teleLoc of
1: begin
xpFromSkill := 41;
magic.CastSpell(ERSSpell.LUMBRIDGE_TELEPORT);
end;
2: begin
xpFromSkill := 35;
magic.CastSpell(ERSSpell.VARROCK_TELEPORT);
end;
3: begin
xpFromSkill := 48;
magic.CastSpell(ERSSpell.FALADOR_TELEPORT);
end;
end;
wait(50, 250);
antiban.SmallRandomMouse();
doAB();
wait(3000, 3500);
inc(tele);
clearDebug();
WriteLn('Teleport times (' + IntToStr(tele) + ')');
WriteLn('XP gained (' + IntToStr(tele*xpFromSkill) + ')');
until (tele = teleTimes)
else login.LoginPlayer();
end;
begin
clearDebug();
declarePlayers();
castTele();
end.