danrox2004
2007-01-17 21:17:51
danrox2004 - SRL Member Application Form
danrox2004
What is the meaning to life?
Where you Referred to SRL? If yes, by whom?
no
Programming Knowledge
Web Languages - PHP,Html. Bits of C++, SCAR
Other Communitys
Moparisthebest
How Long have You Played Runescape
1 Yr
Are you affilated in anyway with Jagex LTD?
No
—————————————————–
Please write down a paragraph about Yourself.
Made a few scripts, tutorial island script is my biggest one.
Previous scripts:
Cheats for other games - such as the ones on albinoblacksheep.com
Simple powercutter - basic antirandoms
Simple powerminer - basic antirandoms
Been using PHP for ~2 yrs
——————————————————
Please Post a Sample of your Work. Only SCAR Scripts Accepted
——————————————————
danrox2004
What is the meaning to life?
Where you Referred to SRL? If yes, by whom?
no
Programming Knowledge
Web Languages - PHP,Html. Bits of C++, SCAR
Other Communitys
Moparisthebest
How Long have You Played Runescape
1 Yr
Are you affilated in anyway with Jagex LTD?
No
—————————————————–
Please write down a paragraph about Yourself.
Made a few scripts, tutorial island script is my biggest one.
Previous scripts:
Cheats for other games - such as the ones on albinoblacksheep.com
Simple powercutter - basic antirandoms
Simple powerminer - basic antirandoms
Been using PHP for ~2 yrs
——————————————————
Please Post a Sample of your Work. Only SCAR Scripts Accepted
////////////////////////////////////////////////////////////////////////////////
//__, _, _, _ __, _, _ , _, _ _ , _, ___ _,_ ___ _, __, _ _, _, //
//| \ /_\ |\ | |_) / \ '\/ ~ )/ \/ \ / | (_ | | | | / \ |_) | /_\ | //
//|_/ | | | \| | \ \ / /\ / \ /\ / ~~| , ) | | | | \ / | \ | | | | , //
//~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~~~ ~ ~ ~ ~ ~ `~' ~ ~ ~ ~ ~ ~ ~ ~~~ //
// _ _, _, _, _, _ __, __, _,_ _, _ _, _ __, __, //
// | (_ | /_\ |\ | | \ |_) | | |\ | |\ | |_ |_) //
// | , ) | , | | | \| |_/ | \ | | | \| | \| | | \ //
// ~ ~ ~~~ ~ ~ ~ ~ ~ ~ ~ `~' ~ ~ ~ ~ ~~~ ~ ~ // //
////////////////////////////////////////////////////////////////////////////////
// This is the ALPHA release of my tutorial island runner. This does NOT make //
// it all the way through the tutorial island. At the moment it only makes it //
// up to the mining part. It will not make it there all the time and is //
// constantly being improved. Please post your bugs and suggestions on the //
// thread at villu-reborn.com. //
// //
// Usage: //
// Create a new character and start script. The script is made so you //
// should not have to change any settings for the script to work. //
// Recommended that you use the unsigned applet so that each of your //
// characters has a different UID - this decreases the chances of all your//
// characters being banned at the same time. //
// The setting should be - //
// o-Normal brightness //
// o-32 bit color //
// Credits: //
// Credits go to WT-Fawaki for his LoginPlayer and ThereIsFire //
// Thanks to all the SRL Devs for such a good include =) //
////////////////////////////////////////////////////////////////////////////////
program TutIsland;
{.include SRL\SRL.scar}
{.include SRL\SRL\Skill\Firemaking.scar}
var
MSYArrow, Shrimp, CookedShrimp, BurntShrimp, Time: integer;
buttonx, buttony, part, number, CookedBread: integer;
function WriteTS(text: string): boolean;
begin
Writeln(TheTime + ': ' + text);
result := true;
end;
{*******************************************************************************
procedure LoginPlayer;
By: WT-Fakawi
Description: Logs Player[CurrentPlayer] in. Is usually preceeded by NextPlayer.
Made by WT-Fakawi!!! edited to remove FindNormalRandoms by Danrox2004!
*******************************************************************************}
// * Still to implement, but have never encountered any of these:
// * Your account is already logged in.
// * Login limit exceeded.
// * Too many connections from your address."
// * Bad session id.
// * Could not complete login.
// * Please try using a different world.
// * Invalid loginserver requested
// * Malformed login packet.
// * Unexpected server response
procedure LoginPlayerv2;
var
ClickHereToPlay, tx, ty, CHx, CHy, c, tmpMask: Integer;
begin
ClickHereToPlay := BitmapFromString(33, 1, 'z78DA758E510E80300843' +
'AF54C0E2F6E94CB8FF9134123392693FFA41FA4A23A6F0888443D' +
'26DC000A7DCE7F458F23EE444E721444B6A0F53D58FE44F4365B7' +
'067D37AC3D95AADF2F50962C79');
if (not (LoggedIn)) then
begin
x := 150;
y := 173;
if (FindClient) then
FindWindowBySize(766, 504);
ActivateClient;
Wait(1000);
ClickOption('Cancel', 1);
ClickOption('Exist', 1);
tmpMask := CreateBitmapMaskFromText('Username', upchars);
if (FindBitmapMaskTolerance(tmpMask, x, y, 0, 0, 520, 340, 10, 50)) then
begin
Wait(25 + Random(50));
Mouse(x + 24, y + 3, 3, 0, True);
Wait(25 + Random(50));
// SendKeysSilent(Players[CurrentPlayer].Name + chr(13) + Players[CurrentPlayer].Pass)
WriteLn(Players[CurrentPlayer].Name);
TypeSend(Players[CurrentPlayer].Name);
Wait(100 + Random(100));
Mouse(327, 272, 0, 0, True);
TypeSend(Players[CurrentPlayer].Pass);
Wait(100 + Random(100));
end;
ClickOption('Login', 1);
// Waiting for Connecting to Server...
MarkTime(Mark);
while FindText(tx, ty, '...', upchars, 240, 180, 530, 240) do
begin
Wait(100);
if TimeFromMark(Mark) > 20000 then break;
end;
MarkTime(Mark);
repeat
Wait(1000);
// Enter your username and password. If all failed...
if FindText(tx, ty, 'nter you', upchars, 240, 180, 530, 240) then
begin
WriteTS('Enter your username and Password');
LoginPlayerv2;
FreeBitmap(ClickHereToPlay);
Exit;
end;
// Invalid Username. 3 attempts. If fails, you haven't set your username/pass correct
if FindText(tx, ty, 'nvalid', upchars, 240, 180, 530, 240) then
begin
WriteTS('Invalid Username.');
Attempts := Attempts + 1;
if Attempts > 3 then
begin
Players[CurrentPlayer].loc := 'L/P ERROR';
NextPlayer(False);
end;
LoginPlayerv2;
FreeBitmap(ClickHereToPlay);
Exit;
end;
// Login attempts exceeded. Please wait 1 minute and try again.
if FindText(tx, ty, 'excee', upchars, 240, 180, 530, 240) then
begin
WriteTS('Login attempts exceeded. Please wait 1 minute and try again.');
Wait(60000);
LoginPlayerv2;
FreeBitmap(ClickHereToPlay);
Exit;
end;
// World is full.
if FindText(tx, ty, 'full', upchars, 240, 180, 530, 240) then
begin
WriteTS('World is full.');
Wait(3000);
LoginPlayerv2;
FreeBitmap(ClickHereToPlay);
Exit;
end;
// Unable to connect. Login Server offline.
if FindText(tx, ty, 'offl', upchars, 240, 180, 530, 240) then
begin
WriteTS('Unable to connect Login Server offline.');
Wait((6000) + Random(6000));
LoginPlayerv2;
FreeBitmap(ClickHereToPlay);
Exit;
end;
// Error Connecting.
if FindText(tx, ty, 'rror', upchars, 240, 180, 530, 240) then
begin
WriteTS('Error Connecting.');
Wait(10000);
LoginPlayerv2;
FreeBitmap(ClickHereToPlay);
Exit;
end;
// Error loading your profile. Will attempt to re-login 5 more times.)
if FindText(tx, ty, 'ontact', upchars, 240, 180, 530, 240) then
begin
WriteTS('Error loading your profile.');
Wait(2000);
LoginPlayerv2;
FreeBitmap(ClickHereToPlay);
Exit;
end;
// Login server rejected session.
if FindText(tx, ty, 'reject', upchars, 240, 180, 530, 240) then
begin
WriteTS('Login server rejected session.');
Wait(1000);
LoginPlayerv2;
FreeBitmap(ClickHereToPlay);
Exit;
end;
// Runescape has been updated.
if FindText(tx, ty, 'reload', upchars, 240, 180, 530, 240) then
begin
WriteTS('ERROR. RuneScape has been updated. Script Terminated.');
TerminateScript;
end;
// The Server is being updated. Please wait 1 minute.
if FindText(tx, ty, 'updat', upchars, 240, 180, 530, 240) then
begin
WriteTS('The Server is being updated.');
Wait(60000);
LoginPlayerv2;
FreeBitmap(ClickHereToPlay);
Exit;
end;
// Your account has been disabled.
if FindText(tx, ty, 'disabled', upchars, 420, 180, 500, 220) then
begin
WriteTS('Your account has been disabled');
Players[CurrentPlayer].loc := 'DISABLED';
NextPlayer(False);
FreeBitmap(ClickHereToPlay);
Exit;
end;
// Waiting for Profile to be Transferred
if FindText(tx, ty, 'trans', upchars, 240, 180, 530, 240) then
begin
WriteTS('Waiting for your Profile to be Transferred');
Wait(2500);
end;
// You need a Members account...
if FindText(tx, ty, 'member', upchars, 240, 180, 530, 240) then
begin
WriteTS('Waiting for your Profile to be Transferred');
Wait(2500);
end;
// Welcome to RuneScape. If all failed...
if FindText(tx, ty, 'elcom', upchars, 240, 180, 530, 240) then
begin
WriteTS('Welcome.');
LoginPlayerv2;
FreeBitmap(ClickHereToPlay);
Exit;
end;
if TimeFromMark(Mark) > 180000 then
begin
WriteTS('three minutes have passed');
WriteFileString(TheFile, Chr(13) + 'THREE MINUTES HAVE PASSED!!!' +
Chr(13));
if (FindClient) then
FindWindowBySize(766, 504);
ActivateClient;
ClickOption('Cancel', 1);
ClickOption('Exist', 1);
end;
until (FindBitmapToleranceIn(ClickHereToPlay, CHx, CHy, 250, 270, 530, 390,
5)) or FindColor(CHx, CHy, 723587, 555, 10, 575, 30);
Wait(1000 + Random(500));
if (FindBitmapToleranceIn(ClickHereToPlay, CHx, CHy, 250, 270, 530, 390, 5))
then
Mouse(CHx, CHy, 50, 20, True) else WriteTS('Found Compass'); // Clicks randomly on the button
repeat
Wait(1000);
c := c + 1;
until (LoggedIn) or (c >= 600);
end;
FreeBitmap(tmpMask);
if LoggedIn then
begin
PlayerStartTime := (GetSystemTime div 1000); // PlayerStartTime
if NickNameBMP <> 0 then
FreeBitmap(NickNameBMP);
NickNameBMP := CreateBitmapMaskFromText(Players[CurrentPlayer].Nick,
upchars); // Screenname
WriteFileString(TheFile, Chr(13) + UpperCase(Players[CurrentPlayer].Name) +
Chr(13)); //* Save NAME to file
end;
FreeBitmap(ClickHereToPlay);
end;
{*******************************************************************************
function ThereIsFire(var WhereX, WhereY: Integer): Boolean;
By: WT-Fakawi - edited to conform with script.
Description: Checks if there is Fire in MainScreen Returns X,Y Cords
*******************************************************************************}
function ThereIsFire2(var WhereX, WhereY: Integer): Boolean;
var
acc, ref: Extended;
var
XT, YT, times, tol: Integer;
begin
if (not LoggedIn) then Exit;
ref := 0.8;
tol := 1;
for times := 1 to 4 do
begin
FindDeformedBitmapToleranceIn(Fire, XT, YT, MSCX - (25 * times), MSCY - (25
* times), MSCX + (25 * times), MSCY + (25 * times), tol, 2, True, acc);
if (acc >= ref) then
begin
WhereX := XT;
WhereY := YT;
Result := True;
WriteTS('Found Fire');
Exit;
end;
ref := ref - 0.1;
tol := tol + 10; // until tol 20....
Wait(1);
end;
Result := False;
WriteTS('Couldnt Find Fire');
end;
procedure Loadbmp(bmp: string);
begin
case (lowercase(bmp)) of
'shrimp': Shrimp := BitmapFromString(12, 5, 'z78DAA590490A03310C04BF6' +
'42DADE528DBA3FF3F29860924107208E9431D84BA101AE384C6DF' +
'294F0A9D941173BC9C3F333BD2AF92D8414F671525B6168590D25' +
'9BC99B00939D3E97DB7DE19E1B015DBD33AC9B7735ECEC8BB1565' +
'D02BC6D1BAB1BAB83548F6E73DD636104EC6285703966F949A2DB' +
'D64A11502986C6E656EC6F8F2CF070DB949EE');
'cooked shrimp': CookedShrimp := BitmapFromString(12, 5, 'z78DA9D90410E4231' +
'0844AF349429B44B2AF5FE4792AF46A3C685CEE22DC8CB04002A8' +
'227FF4CA477E1325F42BC77FEC0308730C25BF1DA7992A1E2493B' +
'CB144A89374E650AEE3E6DBF72C2E470ACDCE966C5E8C7045C826' +
'134A46F36A4356D35D81AC8CF7DBC7197695D1E8C3A306DA923FB' +
'566074B685C12AC2F8F6C90B43B8486B');
'burnt shrimp': BurntShrimp := BitmapFromString(14, 5, 'z78DA9D90310EC4200' +
'C04BF14DBBB70291190FF3FE91C9B225292E2CE234DB192178B22' +
'6CDC592994ED9CABFF1C1EFC38C0C4F46E7322B9F5FFE0BC7075A' +
'63389FE020EF64C04E24B696BE7E30FBB610C5414479D063AE9C8' +
'6DD8EE44835553077A3855A9B44D878EB76BD7D6D5D9165BD9B06' +
'C2A2A32A54B7FFBF92F078E54CD');
'bread': CookedBread := BitmapFromString(12, 5, 'z78DAAD8EDB15C3200C43579263CBC' +
'067D286FD478A1FCD06E54308738FAC05BFB1067962B8DA05FA45' +
'017B32E10815578CB1F809558E2283E16904512748874092070CF' +
'13BCD40DBE9ED488D3B55EC003B397CABBC39F4F43EECFE91EFF6' +
'6FF1CC4937E4B619AABA4399BEFB774E25C7B8B67BBD35466475E' +
'B869DDC643494249550E090D47F9E07755947A8');
end;
end;
procedure DropAllBmps;
begin
FreeBitmap(Shrimp);
FreeBitmap(CookedShrimp);
FreeBitmap(BurntShrimp);
FreeBitmap(CookedBread);
end;
function CreateAccount(username, defaultpass: string): boolean;
begin
OpenWebPage('https://create.runescape.com/lang/en/aff/runescape/create'
+'account.ws?username=' + username + '&password1=' + defaultpass +
'&password2=' + defaultpass + '&termsandcond=1');
Wait(2000)
if (FindWindowBySize(765, 503)) then
begin
WriteTS('Found Window')
end
else
begin
WriteTS('Unable to find window')
end
wait(1000 + random(1000))
Result := true;
end;
procedure NextChar;
begin
NextPlayer(true);
end;
function ClickYArrow(text: string): boolean;
var
tol: integer;
begin
WriteTS('Clicking on ' + text);
tol := 0;
repeat
wait(500 + random(500));
tol := tol + 1;
until ((FindObj(x, y, text, 2291706, tol)) or (tol >= 50))
if(tol>=50) then
begin
WriteTS('Could not find ' + text + 'Logging out anc changing characters');
NextChar;
end
wait(100 + random(500));
mouse(x, y, 0, 0, true);
flag;
wait(500 + random(100));
result := true;
end;
function ContinueFunc(): boolean;
begin
if (ClickToContinue) then
begin
repeat
wait(1000 + random(1000));
until (not ClickToContinue)
Result := true;
end
else
begin
Result := false;
end
end;
function RanClothesButon(x, z, y: integer): boolean;
begin
buttonx := 38;
buttony := 28;
a := random(2);
if (a = 1) then
begin
x := z;
end
x := x + random(buttonx);
y := y + random(buttony);
a := random(5);
b := 0;
repeat
mouse(x, y, 0, 0, true);
wait(random(1000));
b := b + 1;
until (b >= a)
wait(150 + random(50));
result := true;
end;
function Check4Head(color: integer): boolean;
begin
if (FindColorTolerance(x, y, color, 45, 360, 80, 380, 15)) then
begin
Result := true;
end else
begin
Result := false;
end
end;
function TalkToNPC(Color: integer; Head: integer): boolean;
begin
Time := 0;
MarkTime(Time);
repeat
repeat
SendArrowSilentWait(1, 1000 + random(1000));
wait(500 + random(1000));
if (TimeFromMark(Time) > (60000)) then
begin
break;
end
until (FindObjMultiText(x, y, 'Talk-to', 'Talk', '-to', Color, 15))
if (TimeFromMark(Time) > (60000)) then
begin
NextChar;
end
mouse(x, y, 10, 10, true);
Flag;
wait(1000 + random(1000));
until (Check4Head(Head))
ContinueFunc;
Result := true;
end;
function ClickObjectMS(color: integer; name1, name2, name3: string): boolean;
begin
Time := 0;
MarkTime(Time);
repeat
wait(500 + random(1000))
if (TimeFromMark(Time) > (60000)) then
begin
break;
end
until (FindObjMultiText(x, y, Name1, Name2, Name3, Color, 15))
if (TimeFromMark(Time) > (60000)) then
begin
NextChar;
end
mouse(x, y, 10, 10, true)
wait(500 + random(500))
result := true;
end;
procedure SetupScript;
begin
ClearDebug;
Writeln(' __, _, _, _ __, _, _ , _, _ _ , _, ___ _,_ ___ _, __, _ _, _, ')
Writeln(' | \ /_\ |\ | |_) / \ ''\/ ~ )/ \/ \ / | (_ | | | | / \ |_) | /_\ | ')
Writeln(' |_/ | | | \| | \ \ / /\ / \ /\ / ~~| , ) | | | | \ / | \ | | | | ,')
Writeln(' ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~~~ ~ ~ ~ ~ ~ `~'' ~ ~ ~ ~ ~ ~ ~ ~~~')
Writeln(' _ _, _, _, _, _ __, __, _,_ _, _ _, _ __, __, ')
Writeln(' | (_ | /_\ |\ | | \ |_) | | |\ | |\ | |_ |_) ')
Writeln(' | , ) | , | | | \| |_/ | \ | | | \| | \| | | \ ')
Writeln(' ~ ~ ~~~ ~ ~ ~ ~ ~ ~ ~ `~'' ~ ~ ~ ~ ~~~ ~ ~ ')
MouseSpeed := 6;
wait(1000 + random(500))
if (not LoggedIn) then
begin
LoginPlayerv2;
end
repeat
wait(50 + random(50))
until (not (GetColor(67, 61) = 0) and not (GetColor(273, 148) = 16777215))
HighestAngle;
part := 0
end;
function OpenDoor: Boolean;
var
tol: integer;
begin
tol := 0;
WriteTS('Opening Door');
repeat
wait(500 + random(500));
tol := tol + 1;
until ((FindObjMultiText(x, y, 'Open', 'pen', 'oor', 1334659, tol)) or (tol >= 50))
if (tol >= 50) then
begin
Players[CurrentPlayer].Active := False;
Logout;
end
else
begin
mouse(x, y, 0, 0, true);
end
flag;
wait(500 + random(100));
result := true;
end;
procedure RanClothes;
begin
if (GetColor(252, 273) = 0)
and (GetColor(264, 24) = 2070783)
and (GetColor(94, 62) = 16777215) then
begin
a := random(2)
if a = 1 then
begin
x := 331
WriteTS('Chosen Male Character')
end else
begin
x := 424
WriteTS('Chosen Female Character')
end
y := 277
buttonx := 81
buttony := 67
x := x + random(buttonx)
y := y + random(buttony)
mouse(x, y, 0, 0, true)
wait(1200 + random(1000))
WriteTS('Choosing Looks')
ranclothesbuton(32, 145, 76)
ranclothesbuton(32, 145, 111)
ranclothesbuton(32, 145, 146)
ranclothesbuton(32, 145, 181)
ranclothesbuton(32, 145, 216)
ranclothesbuton(32, 145, 250)
ranclothesbuton(32, 145, 286)
ranclothesbuton(331, 445, 82)
ranclothesbuton(331, 445, 117)
ranclothesbuton(331, 445, 152)
ranclothesbuton(331, 445, 187)
ranclothesbuton(331, 445, 222)
x := 227
y := 270
buttonx := 65
buttony := 30
x := x + random(buttonx)
y := y + random(buttony)
mouse(x, y, 0, 0, true)
WriteTS('Finished Choosing Character')
wait(500 + random(500))
end
end;
procedure FirstInstructor;
begin
WriteTS('Talking to Guide');
TalkToNPC(594319, 463243)
GameTab(11)
TalkToNPC(594319, 463243)
wait(1000 + random(2000))
ClickYArrow('Open Door');
end;
procedure Walk2Fish;
begin
WriteTS('Walking to Survival Expert')
SetRun(True);
Mouse(645 + random(25), 100 + random(20), 0, 0, true);
Flag;
repeat
SendArrowSilentWait(3, 1000 + random(1000));
wait(500 + random(1000));
until (FindSymbol(x, y, 'fishing spot'))
HumanMouseFlag(x, y, 0, 0, 10 + random(20));
MakeCompass('n');
end;
procedure Talk2Fish;
begin
LoadBMP('Shrimp')
LoadBMP('Burnt shrimp')
LoadBMP('Cooked shrimp')
WriteTS('Talking to Survival Expert')
TalkToNPC(1250892, 2237257)
wait(500 + random(500))
Gametab(4);
wait(100 + random(100))
number := 0;
repeat
if (number = 0) then
begin
ClickObjectMS(3100744, 'hop', 'dow', 'ree');
end
number := number + 1;
if (number >= 1000) then begin number := 0; end
until (ExistsItem(3))
wait(500 + random(1000))
ClickToContinue;
wait(500 + random(500))
if (ExistsItem(4)) then DropItem(4)
UseItem(3)
UseItem(2)
repeat
wait(100 + random(100))
until (TabExists(2))
WriteTS('Lit Fire')
GameTab(2);
repeat
TalkToNPC(1250892, 2237257)
until (ExistsItem(3))
wait(random(1000))
GameTab(4);
WriteTS('Fishing for Shrimp')
repeat
SendArrowSilentWait(3, 1000 + random(1000));
wait(500 + random(1000))
until (FindSymbol(x, y, 'fishing spot'))
HumanMouseFlag(x, y, 0, 0, 10 + random(20))
Wait(1000 + random(1000))
number := 0;
repeat
if (number = 0) then
begin
ClickObjectMS(15382680, 'et ', 'ish', 'pot');
end
number := number + 1;
if (number >= 1000) then begin number := 0; end
until (ExistsItem(5))
if (ExistsItem(6)) then
begin
DropItem(6)
end
wait(500 + random(500))
WriteTS('Cooking Shrimp')
if (not ThereIsFire2(x, y)) then
begin
WriteTS('No Fire Exists. Need to light fire.')
Gametab(4);
wait(100 + random(100))
number := 0;
repeat
if (number = 0) then
begin
ClickObjectMS(3100744, 'hop', 'dow', 'ree');
end
number := number + 1;
if (number >= 1000) then begin number := 0; end
until (ClickToContinue)
wait(500 + random(500))
if (ExistsItem(7)) then DropItem(7)
UseItem(2)
UseItem(6)
Wait(5000 + random(1000))
WriteTS('Lit Fire')
end
repeat
if (FindItemBmpTol(Shrimp, 60)) then
begin
mouse(x, y, 0, 0, true)
ClickObjectMS(1605814, 'Fir', 'ire', 'Fire')
wait(4000 + random(1000))
end
if ((GEtColor(237, 432) = 8388608) and (GetColor(204, 435) = 8388608)) then
begin
FindItemBmpTol(Shrimp, 60)
Mouse(x, y, 0, 0, true)
end
until (FindItemBmpTol(BurntShrimp, 60))
repeat
if (FindItemBmpTol(Shrimp, 60)) then
begin
mouse(x, y, 0, 0, true)
ClickObjectMS(1605814, 'Fir', 'ire', 'Fire')
wait(4000 + random(1000))
end
if ((GEtColor(237, 432) = 8388608) and (GetColor(204, 435) = 8388608)) then
begin
FindItemBmpTol(Shrimp, 60)
Mouse(x, y, 0, 0, true)
end
until (FindItemBmpTol(CookedShrimp, 60))
DropAllBMPs
end;
procedure Walk2Chef;
begin
WriteTS('Walking to next instructor');
FindColorTolerance(x, y, 245, 567, 58, 612, 136, 15)
mouse(x, y, 0, 0, true)
Flag;
wait(500 + random(1000))
ClickYArrow('Open');
repeat
wait(1000 + random(1000))
until (FindColorTolerance(x, y, 5241596, 567, 58, 612, 136, 15))
mouse(x, y, 0, 0, true)
flag;
ClickYArrow('Open Door');
end;
procedure Talk2Chef;
begin
LoadBMP('Bread');
TalkToNPC(5673302, 3234185)
GameTab(4)
if (ExistsItem(6) and ExistsItem(7)) then
begin
Wait(1000 + random(1000))
UseItem(6)
Wait(random(1000))
UseItem(7)
repeat
wait(1000 + random(500))
repeat
wait(50)
until(FindSymbol(x,y,'cook'))
mouse(x,y,0,0,true)
UseItem(8)
ClickObjectMS(727224, 'Range', 'ange', 'ang')
Wait(4000+random(1000))
until (FindItemBmpTol(CookedBread, 60))
GameTab(14)
Wait(500 + random(500))
FindColorTolerance(x, y, 231, 600, 30, 640, 70, 15)
mouse(x, y, 0, 0, true)
Flag;
ClickYArrow('Open Door');
end
DropAllBMPs;
end;
procedure next;
begin
wait(1000 + random(100))
GameTab(13)
GameTab(12)
DoEmote(random(10))
GameTab(11)
SetRun(true)
RunAwayDirection('n')
Flag;
RunAwayDirection('n')
Flag;
RunAwayDirection('n')
Flag;
RunAwayDirection('e')
Flag;
if(FindColorTolerance(x, y, 255, 572, 6, 710, 33, 15)) then
begin
mouse(x, y, 0, 0, true)
Flag;
end
OpenDoor;
Flag;
end;
procedure Quest;
begin
TalkToNPC(1981199, 6721991)
GameTab(3)
TalkToNPC(1981199, 6721991)
ClickYArrow('Climb');
Flag;
Wait(3000 + random(1000))
mouse(613 + Random(10), 128 + Random(10), 10, 10, true);
repeat
SendArrowSilentWait(1, 1000 + random(1000));
wait(1000 + random(1000))
until (FindSymbol(x, y, 'mining spot'))
mouse(x, y, 0, 0, true)
MakeCompass('n')
TalkToNPC(6759778,6956645)
MakeCompass('n')
end;
begin
setupsrl;
CreateAccount('zazaaslak', 'heyhey')
StartPlayers(true, '')
setupscript
Repeat
Wait(1000 + random(1000))
RanClothes
part := 1
FirstInstructor
part := 2
Walk2Fish
part := 3
Talk2Fish
part := 4
Walk2Chef
part := 5
Talk2Chef
part := 6
NeXT;
part := 7
Quest;
NextChar;
Until(IsFKeyDown(12))
end.——————————————————