SCAR Code:
// BY WHATSTHAT
// THIS IS MEH FIRST SCRIPT
// THANK YOU FOR TRYING IT FOR ME :D
program New;
{.include SRL/SRL.scar}
var Loads: Integer;
const
LoadsPerPlayer = 25; //This is how many loads each character will do.
TreeColor = 0; //Use the color picker to fill in a tree color.
WaitPerTree = 5000;
AxeEquiped = False; //<----- needed a ; after false...
procedure DeclarePlayers;
begin
NumberOfPlayers(4);
CurrentPlayer := 0;
Players[0].Name := ''; //Your character's name.
Players[0].Pass := ''; //Your character's password.
Players[0].Nick := ''; //Your character's nickname, should be 2-3 letters.
Players[0].Active := True; //Is this characting going to be active?
Players[1].Name := '';
Players[1].Pass := '';
Players[1].Nick := '';
Players[1].Active := False;
Players[2].Name := '';
Players[2].Pass := '';
Players[2].Nick := '';
Players[2].Active := False;
Players[2].Name := '';
Players[2].Pass := '';
Players[2].Nick := '';
Players[2].Active := False;
end;
procedure ChopTree;
var
x, y, MyMark : integer;
begin
if not Loggedin then Exit;
MarkTime(MyMark);
repeat
if FindObj(x, y, 'hop', TreeColor, 30) then
begin
Mouse(x, y, 0, 0, False);
if ChooseOption('hop') then
begin
Exit;
end;
end;
if TimeFromMark(MyMark) > (2 * 60 * 100) then
begin
Logout;
Exit;
end;
until false
end;
function FindFastRandoms: Boolean; // WT-Fakawi
var
i: Integer;
begin
for i:=1 to 10 do
begin
case I of
1: if FindDead then
Result := True;
2: if FindMod then
Result := True;
3: if FindMime then
Result := True;
4: if FindMaze then
Result := True;
5: if FindQuiz then
Result := True;
6: if FindDemon then
Result := True;
7: begin
if NoGameTab then
begin
Result := True;
Players[CurrentPlayer].loc := 'No GameTab';
Logout;
Exit;
end;
end;
8: if FindTalk then Result:= True;
end;
wait(1);
end;
end;
procedure Antiban;// took out the rotate but i can always get u some.. be creative and hover some lvls or w/e.... boredhuman is a good one
var
DBanMe : Integer;
begin
DBanMe:= Random(3);
case DbanMe of
1:HoverSkill('random', False);
2:GameTab(2 + Random(10));
3:MMouse(Random(MSY1), Random(MSX1), 0, 0);
end;
end;
procedure AntiRandoms;
Begin
FindMod;
FindNormalRandoms;
FindTalk;
FindMime;
FindMaze;
DwarfItem;
FindDemon;
Solvepinball;
FindLamp(Players[CurrentPlayer].Skill);
UseBoxSolver := True
UseCerterSolver := True
UseSandwichSolver :=True
end;
function UberEnt: Boolean; //by Nashi, Edited By HyperSecret
var
x, y:integer;
begin
if (FindColorTolerance(x, y, 383705, 9, 9, 233, 24, 20)) or
(FindColorTolerance(x, y, 65535, 9, 9, 233, 24, 20)) then
begin
GetMousePos(x, y);
Mouse(x, y, 5, 5, False);
if (FindText(x, y, 'Chop down', upchars, x - 50, y - 50, x + 100, y + 50)) then
begin
if (FindColor(x, y, 65535, x + 70, y, x + 100, y + 10)) then
begin
Mouse(MMCX, MMCY, 5, 5, True);
Writeln('Found ent. Waiting for ent to go away.');
Result := True;
EntsAvoided := EntsAvoided + 1;
end;
end;
end;
end;
function SolveChatRandom2: Boolean;// is this needed cos of findfastrandoms???
var
Event: string;
begin
if (not SolveChatRandoms) or (not AreTalking) then
Exit;
Event := GetNPCEvent;
case Capitalize(Event) of
'Unknown': Exit;
'Pious Pete': // Candle Lighting
begin
Writeln(Players[CurrentPlayer].Name + ': Stupid Pete =(');
Logout;
LoginPlayer
Result := True;
Exit;
end;
'Mysterious Old Man': // Maze + Pinball
begin
if ((GetColor(83, 431) = 0) and (GetColor(88, 418) = 0)) or
((GetColor(83, 430) = 0) and (GetColor(88, 417) = 0)) or
((GetColor(151, 426) = 0) and (GetColor(470, 393) = 0) and
(GetColor(372, 370) = 128)) then
begin
SolvePinball;
end
Exit;
end;
'Quiz Master': FindQuiz; // Quiz Master
'Prison Pete': // ScapeRune balloons
begin
Inc(ScapeRunes);
Writeln(Players[CurrentPlayer].Name + ': Yay Balloon Animals!');
Logout;
LoginPlayer
Result := True;
Exit;
end;
'Sergeant Damien': FindDemon; // Camo
'Leo The Gravedigger': // Zombie
begin
Writeln(Players[CurrentPlayer].Name + ': I Don' + chr(39) + 't Want To Dig Any Graves! ');
Logout;
LoginPlayer
Result := True;
Exit;
end;
'Evil Bob': // ScapeRune island
begin
Inc(ScapeRunes);
Writeln(Players[CurrentPlayer].Name + ': An Evil Cat? What is the World Coming To?!');
Logout;
LoginPlayer
Result := True;
Exit;
end;
'Freaky Forester': // Lederhosen
begin
Writeln(Players[CurrentPlayer].Name + ': Since When Do Birds Have More Than One Tail...');
Logout;
LoginPlayer
Result := True;
Exit;
end;
'Mr Mordaut': // Surprise Exam
begin
Writeln(Players[CurrentPlayer].Name + ': School? NO WAY!');
Logout;
LoginPlayer
Result := True;
Exit;
end;
end;
end;
procedure Proggy;
begin
ClearDebug;
Writeln('[]========================================[]');
Writeln('---------------->Termite by Whatsthat<----------------');
Writeln(' did ' + IntToStr(Loads) + ' Loads' + ' ');
Writeln('---------------------------------------------');
Writeln('[]========================================[]');
end;
begin
SetupSRL;
Disguise('Termite');
Writeln('Starting up the termite, thank you for using!')
DeclarePlayers;
if Loggedin then Logout;
LoginPlayer;
repeat
ChopTree;
if InvFull then
begin
DropToPosition(2, 28)
Inc(Players[CurrentPlayer].Banked);
if Players[CurrentPlayer].Banked mod LoadsPerPlayer = 0 then
begin
NextPlayer(True);
end;
end;
if not Loggedin then NextPlayer(False);
until false
end.