Simba Code:
program New;
{$DEFINE SMART}
{$i srl/srl.simba}
{$i sps/sps.simba}
procedure DeclarePlayers;
begin
HowManyPlayers := 1;
NumberOfPlayers(HowManyPlayers);
CurrentPlayer := 0;
Players[0].Name :='';
Players[0].Pass :='';
Players[0].Nick :='';
Players[0].Active:=True;
end;
// Your path is a TPointArray.
// The function is asking which path(Array) do you want to use.
// Example of using it: SPS_Path(WhichPath('ToBank'));
function WhichPath(Which:String): TPointArray;
begin
if (not LoggedIn) then
Exit;
FindNormalRandoms;
case Lowercase(Which) of
'ToTrees' : Result := [Point(243, 58), Point(243, 58), Point(258, 86), Point(258, 86),
Point(307, 99), Point(307, 99), Point(357, 111), Point(357, 111),
Point(367, 93), Point(367, 93), Point(399, 82), Point(399, 82)];
'ToBank' : Result := [Point(3000, 3000), Point(3000, 3000), Point(3000, 3000), Point(3000, 3000), Point(3000, 3000)];
end;
end;
procedure AntiBan;
begin
if(not(LoggedIn))then
Exit;
FindNormalRandoms;
case Random(8) of
0:
begin
HoverSkill('Woodcutting', false);
wait(2453+Random(432));
end;
1: PickUpMouse;
2:
begin
MakeCompass('N');
wait(100+random(133));
MakeCompass('S');
wait(50+random(133));
MakeCompass('N');
FindNormalRandoms;
end;
end;
end;
// Similar to before but its a procedure which does not return anything.
// This is what you will call in your main loop to say where you want to walk to.
// Example: WalkTo('Bank');
procedure WalkTo(Where:String);
begin
if (not LoggedIn) then
Exit;
case Lowercase(Where) of
'trees' :
begin
SPS_WalkPath(WhichPath('ToTrees'));
end;
'bank' :
begin
SPS_WalkPath(WhichPath('ToBank'));
end;
end;
end;
procedure ChopTree;
var x, y: integer;
begin
repeat
FindNormalRandoms;
if FindObj(x, y, 'hop', 4150111, 35) then
begin
Mouse(x, y, 0, 0, false);
ChooseOption('Tree');
end;
repeat
wait(400+random(250));
AntiBan;
until not IsUpText('ew') or (InvFull);
until(InvFull);
end;
procedure TheMainLoop;
begin
if (not LoggedIn) then
Exit;
begin
WalkTo('Trees');
ChopTree;
end;
end;
begin
Cleardebug;
Smart_Server := 11;
Smart_Members := false;
Smart_Signed := false;
Smart_SuperDetail := false;
SetupSRL;
DeclarePlayers;
LoginPlayer;
// SPS_Areas := ['10_9','0_0','1_0'] You don't need this
SPS_Setup(RUNESCAPE_SURFACE, ['10_9','0_0','1_0']); // Put it here instead
MouseSpeed := RandomRange(17, 22);
ActivateClient;
DeclarePlayers;
LoginPlayer;
MakeCompass('N');
SetAngle(0);
TheMainLoop;
TerminateScript;
end.