Kyle
2013-11-27 15:46:56
How Long have You Played Runescape?
10 Year(s)
Are you affilated in anyway with Jagex LTD?
No
Were you Referred to SRL?
What is your general programming knowledge?
Pascal and Python, Going to be taking classes next semester on Matlab.
Are you a member of any other communities?
Not Actively
Tell us about yourself…
Please show us one (or multiple) of your scripts.
10 Year(s)
Are you affilated in anyway with Jagex LTD?
No
Were you Referred to SRL?
What is your general programming knowledge?
Pascal and Python, Going to be taking classes next semester on Matlab.
Are you a member of any other communities?
Not Actively
Tell us about yourself…
From: elfyyy
My name is Kyle and I am currently in my second year of mechanical engineering at USF in Florida. I played RS ever since around 4th grade up until around highschool. While I go on sometimes, it is just when I am working on scripts. I am 19 years old and will hopefully end up getting my masters of engineering from either USF or I may transfer to Georgia Tech. While I spend a lot of time on my computer my main hobby by far is fishing. I have fished and still fish in many tournaments and have placed in several and finished first in a Kingfish tournament. While I like to consider myself decent with computer programming I need to work on more languages as pascal is the only one I am very good at. I have only released one complete script which is my pest control. I have written several others but either never finished them or had it to the point where I felt comfortable to release. While my degree is Mechanical Engineering I will hopefully be taking a lot of programming classes to further my knowledge in a variety of languages. I hope to become a member here at villavu to help further my knowledge of scripting and to be able to help others in this awesome community.
Thank you very much for considering me,
Kyle
Please show us one (or multiple) of your scripts.
[CODE]program PC;
{$DEFINE SMART8}
{$I SRL-OSR/SRL.Simba}
// Welcome To Elfyyy's PC Script!
// Please report any and all bugs to thread
// Thanks To Flight and Le Jingle for various advice
// Start In Boat, Outside it, or On island
Var
Prayers: array of string;
const
Name = 'Iemz Pc'; //Pest Control Friend chat channel
procedure DeclarePlayer;
begin
Prayers := ['superhuman strength','eagle eye'];//LowerCase Only... Use '' For No Prayers
HowManyPlayers := 1;
NumberOfPlayers(HowManyPlayers);
CurrentPlayer := 0;
Players[0].Name := '';//Username
Players[0].Pass := '';//Password
Players[0].Nick := '';//Nickname(Not first letter)
Players[0].Active := True;//Keep true
end;
//NO TOUCHY BELOW\\
const
VERSION = '2.5';
USE_AUTO_CHECKER = True;
DARK_DEFILER = 0;
LIGHT_DEFILER = 1;
TORCHER = 2;
GREEN_SHIFTER = 3;
RED_SHIFTER = 4;
PUKE_SPLATTER = 5;
MID_SPLATTER = 6;
BRIGHT_SPLATTER = 7;
EAST_PORTAL = 0;
WEST_PORTAL = 1;
SOUTHEAST_PORTAL = 2;
SOUTHWEST_PORTAL = 3;
type Tmonster = record
MainColor, SideColor: integer;
Names:String;
end;
TmonsterArray = Array of Tmonster;
Type TPortal = Record
Message:string;
DTM, X1, Y1, X2, Y2:Integer;
Active:Boolean;
end;
TPortalArray = Array of TPortal;
var
Status: string;
TimeGone, PlankDTM, IBoatDTM, Won, GamesWon, GamesLost, Zeal, ZealPH, Lost1, Lost2, EastCross, WestCross, SouthEastCross, SouthWestCross, CurrentW, HotW: integer;
Monsters: TmonsterArray;
Portals: TPortalArray;
procedure Proggy;
begin
TimeGone := (GetTimeRunning / 1000);
Zeal := GamesWon * 2;
ZealPH := (3600 * (Zeal)) / ((TimeGone)) ClearDebug;
writeln('Thanks For Using Elfyyys PC Script!');
writeln('Currently using version:' + version);
Writeln('Time Running: ' + TimeRunning);
Writeln('Status:' + Status) Writeln('Played ' + IntToStr(GamesWon + GamesLost) + ' Games So Far!');
Writeln('Won ' + IntToStr(GamesWon) + ' games and Lost ' + IntToStr(GamesLost) + ' games!');
Writeln('Earned ' + IntToStr(Zeal) + ' Zeal, Thats ' + IntToStr(ZealPH) + ' Zeal P/h!');
end;
procedure SetupMonsters;
begin
SetArrayLength(Monsters, 8);
with Monsters[DARK_DEFILER] do
begin
MainColor := 5848409;
SideColor := 10732227;
Names := 'Dark Defiler';
end;
with Monsters[LIGHT_DEFILER] do
begin
MainColor := 6577248;
SideColor := 10601154;
Names := 'Light Defiler';
end;
with Monsters[TORCHER] do
begin
MainColor := 5065481;
SideColor := 1187996;
Names := 'Torcher';
end;
with Monsters[GREEN_SHIFTER] do
begin
MainColor := 2439186;
SideColor := 945762;
Names := 'Green Shifter';
end;
with Monsters[RED_SHIFTER] do
begin
MainColor := 1781205;
SideColor := 4610426;
Names := 'Red Shifter';
end;
with Monsters[PUKE_SPLATTER] do
begin
MainColor := 6123659;
SideColor := 15000807;
Names := 'Puke Splatter';
end;
with Monsters[MID_SPLATTER] do
begin
MainColor := 7898563;
SideColor := 12107969;
Names := 'Mid Splatter';
end;
with Monsters[BRIGHT_SPLATTER] do
begin
MainColor := 11043776;
SideColor := 15263979;
Names := 'Bright Splatter';
end;
end;
procedure JoinClan(Name:String);
Var
x,y:integer;
begin
FTab(tab_Clan);
if FindColorSpiralTolerance(x, y, 6619135, 605, 225, 675, 245, 5) then
Exit;
mmouse(600,450,4,4)
ClickMouse2(Mouse_Left);
TypeSendEx(Name,true);
Wait(RandomRange(500,1100));
end;
Function OpenWScreen:Boolean;
Var
x, y:integer;
begin
Result := False;
if Loggedin then
Exit;
Mmouse(54,475,1,1);
wait(500);
ClickMouse2(Mouse_Left);
Wait(500);
if findcolortolerance(x,y,3166829,350,190,435,220,10) then
Result := True;
end;
procedure MyWorld(W: Integer);
var
WArray: array of Integer;
TPA: TPointArray;
I, C: Integer;
begin
SetArrayLength(TPA, 62);
for I := 0 to 61 do
begin
TPA[I] := IntToPoint(250 + ((i/16)*90), 80 + (24 * (i mod 16)));
end;
begin
Warray := [301, 302, 303, 304, 305, 306, 308, 309, 310, 311, 312, 313, 314, 316, 317, 318, 319, 320, 321, 322, 325, 326, 327, 328, 329, 330, 333, 334, 335, 336, 337, 338, 341, 342, 343, 344, 345, 346, 349, 350, 351, 352, 353, 354, 357, 358, 359, 360, 361, 362, 365, 366, 367, 368, 369, 370, 373, 374, 375, 376, 377, 378];
for C := 0 to 61 do
if warray[C] = W then
begin
MMouse(TPA[C].x, TPA[C].y,1,1);
wait(500);
ClickMouse2(Mouse_Left);
end;
end
end;
function World: Integer;//Credit Turpinator
var
j, i, x, y, tens, ones, L, dcount, maxloc, finalloc: Integer;
Main, dif, ZeroToNine: TIntegerArray;
begin
SetLength(Main, 10);
SetLength(ZeroToNine, 10);
ZeroToNine[0] := BitmapFromString(5, 8, 'meJxjYGBI+f8fghjAbAYYgAtShcuAahEAGQoq5Q==');
ZeroToNine[1] := BitmapFromString(3, 8, 'meJxjYGBI+f+fAUxCGAwwEWIYEF1ABABdJBo3');
ZeroToNine[2] := BitmapFromString(5, 8, 'meJxjYGBI+f8fghjAbAYYQGbjkSKGzYBkCwQBAMlcI78=');
ZeroToNine[3] := BitmapFromString(4, 8, 'meJxjYGBI+f8fiBjADAYwgDPgbLgaNHE4G00vXAQAxUoe+w==');
ZeroToNine[4] := BitmapFromString(4, 8, 'meJxL+f+fAQZS8LKxknCESxcAfc4e+w==');
ZeroToNine[5] := BitmapFromString(4, 8, 'meJxL+f8/BQkxwAAaG00WqwJkcbgIAGUwI78=');
ZeroToNine[6] := BitmapFromString(5, 8, 'meJxjYACBlP//gYgBxmbAEESWgouj6UJWjMmFC0LYAHSRKuU=');
ZeroToNine[7] := BitmapFromString(4, 8, 'meJxL+f8/BYYYYADOplAQCAAoQRo3');
ZeroToNine[8] := BitmapFromString(5, 8, 'meJxjYGBI+f8fghjAbAYYgAvCuQykKMavFwC6dy1H');
ZeroToNine[9] := BitmapFromString(5, 8, 'meJxjYGBI+f8fghjAbAYYgAvCucgKkBloKtHMwcoFAJogI78=');
for j := 0 to 9 do
begin
tens := 0;
ones := 0;
for i := 9 downto 0 do
begin
if FindBitmapIn(ZeroToNine[i], x, y, 690, 269 + j * 15, 700, 278 + j * 15) then
tens := i;
if FindBitmapIn(ZeroToNine[i], x, y, 698, 269 + j * 15, 704, 278 + j * 15) then
ones := i;
end;
Main[j] := tens * 10 + ones;
end;
for i := 0 to 9 do
FreeBitmap(ZeroToNine[i]);
begin
SetLength(dif, length(Main));
for L := 0 to length(Main) - 1 do
dif[L] := 1;
QuickSort(Main);
dcount := 0;
for L := 0 to length(Main) - 2 do
if Main[L] = Main[L + 1] then
inc(dif[dcount])
else
inc(dcount);
maxloc := 0;
for L := 0 to length(dif) - 1 do
if (dif[L] > dif[maxloc]) then
maxloc := L;
finalloc := 0;
for L := 0 to maxloc - 1 do
finalloc := finalloc + dif[L];
result := Main[finalloc];
end;
end;
function CWorld:Boolean;
Var
i, k: Integer;
TPA,Blah:TPointArray;
TheBox:TboxArray;
begin
result := false;
SetArrayLength(TheBox, 10);
SetArrayLength(TPA, 10);
K := 0
for i:=0 to 9 do
begin
TheBox[i] := IntToBox(650,268 + (15*i),709 ,280 + (15*i));
if findcolorstolerance(Blah,65280,TheBox[i].X1,TheBox[i].Y1,TheBox[i].X2,TheBox[i].Y2,5) then
K := K + 1
end;
if K >= 6 then
Result := True;
end;
procedure PraySelect;
var
Prayer: array of string;
i, t, S: Integer;
TPA: TPointArray;
begin
if Length(Prayers) = 0 then
Exit;
SetArrayLength(TPA, 29);
for i := 0 to 28 do
Tpa[i] := IntToPoint(568 + (37 * (i/6)), 230 + (37 * (i mod 6)));
begin
Prayer := ['thick skin', 'rock skin', 'protect item', 'incredible reflexes', 'mystic might', 'piety', 'burst of strength', 'superhuman strength', 'hawk eye', 'protect from magic', 'retribution','no', 'clarity of thought', 'improved reflexes', 'mystic lore', 'protect from missiles', 'redemption','no', 'sharp Eye', 'rapid restore', 'steel skin', 'protect from melee', 'smite','no', 'mystic will', 'rapid heal', 'ultimate strength', 'eagle eye', 'chivalry'];
for T := 0 to High(Prayers) do
begin
for S := 0 to 28 do
if Prayer[S] = Prayers[T] then
begin
FTab(tab_Prayer);
MMouse(TPA[S].x, TPA[S].y, 1, 1);
wait(500);
ClickMouse2(Mouse_Left);
end;
end;
Ftab(tab_inv);
end;
end;
procedure AutoUpdateMe; //Credit Shuttleu
var
ThisFile: integer;
OnlineVersion, NewScript, FileNew: string;
begin
if USE_AUTO_CHECKER then
begin
writeln('Checking for script updates...');
OnlineVersion := GetPage('http://pastebin.com/raw.php?i=b4sF5MBD');
writeln(OnlineVersion);
writeln(Version) if (trim(OnlineVersion) > Version) then
begin
writeLn('Using Outdated Script!!');
writeLn('Updating to New Version.');
NewScript := GetPage('http://pastebin.com/raw.php?i=MHrcUdf1');
FileNew := ScriptPath + 'ElfyyyPc-V' + OnlineVersion + '.simba';
ThisFile := Rewritefile(FileNew, true);
try
WriteFileString(ThisFile, NewScript);
except
begin
writeLn('Failed writting to ' + FileNew + '!!');
terminatescript;
end;
end;
CloseFile(ThisFile);
writeLn('New script downloaded to ' + FileNew + '!! Please use this one!!');
TerminateScript;
end;
if (trim(OnlineVersion) = Version) then
writeLn('You Are Updated To the Lastest Version!');
end
else
WriteLn('!!!!! Not checking for latest version, you may be outdated!');
if (trim(OnlineVersion) < Version) then
begin
Writeln('You Are Using a Beta Version!!! Babysit!!');
Writeln('Give any and ALL feedback to Elfyyy!!!');
wait(5000);
end;
end;
procedure DeclareDTM;
begin
SouthWestCross := DTMFromString('mbQAAAHicY2VgYJjOyMAwAYjnAnE/EC8AYh2guAkQKwOxChAbA/FhTQkGUSEhFCwHFOdBw4xYMBgAAOHgBhM=');
EastCross := DTMFromString('mbQAAAHicY2VgYJjOyMAwAYjnAnE/EC8AYh2guAkQKwOxChAbA/FhTQkGUSEhFCwHFOdBw4xYMBgAAOHgBhM=');
WestCross := DTMFromString('mbQAAAHicY2VgYJjOyMAwAYjnAnE/EC8AYh2guAkQKwOxChAbA/FhTQkGUSEhFCwHFOdBw4xYMBgAAOHgBhM=');
SouthEastCross := DTMFromString('mbQAAAHicY2VgYJjOyMAwAYjnAnE/EC8AYh2guAkQKwOxChAbA/FhTQkGUSEhFCwHFOdBw4xYMBgAAOHgBhM=');
PlankDTM := DTMFromString('mbQAAAHicY2VgYGADYm4GCOACYkYozQTE/EAsBJXrLQpgqI6zZFjQFMOwvCOeISPEmkEEKM4BxDxImBELBgMAjKsG+A==');
IBoatDTM := DTMFromString('mbQAAAHicY2VgYOABYnkGBJCBikkAsSQQM0LFOwsdGFL9JBim17gxTK1yYahLt2KQA4pzoGFGLBgMAICRBp4=');
Won := BitmapFromString(110, 18, 'meJytmG1r1EAUhfP/W8GuFGpaw' + 'fpJEAsiFrGtrKWVilp8AenP8W5O8+zZM+m6LYbLMrmZzG6ePfdlsv' + 'XqZGu0R2/Oy7aP5rO3F9iT4y9lnPYn3/aOr3xCeTTNnWW1lAa7H77' + 'WnLIaML6X7Z/9YHB4/vv5x5/9/Prg0y9ZrVl+XdIAq6s46y55MJ3q' + 'xtbP97KU3xKessevz8qEsT674YBh/cjgU56AtvfuElyOtBbU2EmuJ' + '7Z+gh5ZJHmE+rU8bA2Ea9J0l9gGNHm0uMbBquUmUL5g0SuSO0dzZ1' + 'gD8XmAiR6CBP4apW1uRePWzr7Hs5RHHNr1a0II0nVYE2AISUzrcJf' + '071+NVSwLY/F0IFBV/D59/7lotHgj9uVRluCqrHLCA+K6hb8IbSEd' + 'YGqAXEWSqHSSenzn6eicJOpFjdy1e7rUpC9SAz013NCSk4xATufxl' + 'cOEoaeIsv9IEp6L0J5fF0mJpwbi5moHhZ59Ep3rsJWlk2ROrRYrCK' + 'MeX+XGA3MT8wLU6hOSk6GtS266ukgvU+RdJILD6TIDDBJlHa56niQ' + '93gWznRmog+SLy5vtIbRhOAmzG4/Wg19yhSSXCg6fqg4MRMZnMo0j' + '5mvMA4pkrOMz40DSeEARM0O3+KHakkSTkAwTqDYJBFiRVKTrcSq1O' + 'qJgwvN6CZZKucVvdPI0PBprwFUEz1Uym0gKiAoNQEh9LahuTImd5Y' + 'eWpDRZn1XEBdPFiWIjeXpOwF8wZTy4qLZAdMl58tQ6jZBf/Oz5tbN' + 'SPvS7UJqfehfUDeXJi8UkHPwOqrP6UtCCJLVbJDHkxyCcbUnqVstT' + 'nSo9iqTGkBQcyHdj7KuIxDRIOmfyocZeUCCJJsmuQHMsBMV6kh4L0' + 'Uo9u7ipcX1qd1PTpElgCqCwSLH3IhljwezGvOeVRV2WB75Ll7+Awq' + 'GZhRGSUPKGOXJCBKmLzcM/SPqNXuA8Z8oDSXY3HGweBVAHjSI1hUh' + 'vYbpTlUgeyUzRzbQA6GCjgpR0Fek+LdZRO7TEXreMVcOBO7rotzX2' + '/66zrOszyyNZQpIkGdnSnZSeydYxdKirncl4Nux3FNrR9myy31lpW' + 'oY2MvpMol5S6W37qZ4zzHvL6H/aHnK91Y3SnlecsHB6i+4enI5ReZ' + 'INOMwjW3osB+EwfvbLyz/ajPS2o1FQ983uG9og2h/feLgmaU2lMb5' + 'uQ7uLZAtqheTQ7YQ4EWTbRBHjqjKC5t279/AOM94jcbrc2a0qE5KH' + '4ysg/yOisd+310fuFBleN90lzth4EstFcmd8n0Yse5e+4d6nG4p1Z' + 'FQXLZsX3hRNwmwFif9g2EdLkwQ1Ee2nwNR+vOBAL/QZ++uD1XcXkx' + 'aihViRdPm1msQT7zoI3tn4rlIwHaNwLQQ5YFS50RiSJNKZvYjT5NT' + 'q/Jps2aLrbesNW0VxPzal+tw9XfZIrsZ/5snJS0S0kwxQPijdOkkP' + '0tm4B/dN38x23xoLTs0s8+Dlv+hXX1R6pHsFIbpRnWvJSdZdful22' + 'dMFSdaMGIfY+mzpRfAv0ilRpQ==');
Lost1 := BitmapFromString(76, 17, 'meJyVlsFOw0AMRPP/dzhQkIDPgB' + 'QVBCegCnDhc3AzyevE3gaIrCrxer0ej+3tZjtcPn6GbLaD5Ozu1eX' + 'i/i3EP12fVptLx8/d/uC/H5JnDGLV93pgWr1++LjevvPJEnvD+SKk' + '/mAgP+6tBlyDrxnw2CrAo9sZIHGGJo7GLFAIHVsS/MDoOUE/Oe+X8' + 'Y+fN09fsuy6jsw40nbw/bQFGycoMaWwlU8i0VI3PvKGhD05zwBHVx' + 'WgMKIhDEUYrnQQbvWyzs4UW2GWI0gFEU5JQEYn0+9MpYKMtKfq4l2' + 'MpHiSRgcRoTAK5sYa04tnBWaqJWeQYsttO2OM7VAJamGs7SN0zmx8' + 'cmgKklMcY4wC59F73KViTNnzDmomx6lUVo8b5+o91PNIq4chjMJ1Y' + 'eNLcr77cnuKyjGqs2r2lK4mRuW/Nqmy2mzkVKvaXnMoMzSEFJ1Yg0' + 'kDJA3MWqt46+aHOlESeBS/a/w4GHF0WIom30v70yN6CVDpXI2jQJo' + 'iFGRXLjD2Q+LRXxyg3r3AeJd/b8BJv9srt6SFg3yMTxh3e5UfrNVg' + 'NI4mFP3geqChSf2YeCRROuhUJbt/scOlsLiA+sWtRITd8qoSxhCfM' + 'zUhis1Tx6SCdI52g1qr/Gqa+SqpTsXGP4qYANSbs09FJWoEUFSSc4' + 'fPFvWjWgPifMKw6hhpaj8aXMBEecrSWa4CHbUpvKEA6zPH8+OTwXP' + 'OvcDFzVk+lrXk7Qw0SWKNJLD6K8y6PRV//eyWT/XmGQNdZ9MDmqrc' + 'vnynJerW9dXGzVzcIGFMAKtUAw2ctOTdUU+vSAOj6xO0po3ngc+r5' + '2/2Yl95/Its5rs+Yfc/AKf2NhmBx1MGfxT5qTz+CyAErdO9Ik06ms' + 'RVYfs6xqZnvUB0BXU5jminjIvPNW5TXcn/DxdPk4U=');
Lost2 := BitmapFromString(62, 14, 'meJyNlctOAzEMRef/97CAsigr+A' + 'UoUqdiViBUUQkNf4NHp726tZOWyqo8iZMcv5L17rA+l8dpXo3f+gw' + 'dkf7wPmtQcv+2R7ndHjQiudnsfcRt6lban1mWH/d5+Vhks4ysO+Tx' + 'H8InihxJHomWg9iW40KGYRA249iwMGaZQhG5XHNjyNnw7vWzSR5rA' + 'XbmJClQcMaJIWJ2nhRGzaI0k5tkOP2IfwosSpCHVFSPeQN+nJ0cvC' + 'U+2y/PjjN75K+SA1zJsVeoIX+aflIJVRc8xUfycdYpNekOTAqukjO' + 'SjD3aYpMvQe6+qH16YccASeS1GS/HPG0en5U8dNioN0SD6EqxusAH' + 'm/wqZjdLeiVP9gRqOP95zPkMM/dC2KRAU5hpzx45s2rbC8A9F5oZc' + 'acqsMefUsdZfNESXbz1hhc595uUf5I3XajkVBFgAHvZ6FPBh1yZ6p' + 'GnMrsQzKT07Cu5glyxU9mgpxypJWvN9GJI99WScze9Q1MDVnKPsJO' + '7UyLXYCWXjk0PT7MO7J3IdVfHh9NdIXmeftPTKV1ThEL+ruwaTGXf' + 'zIJiUlelZ1TvS1ooM386Aw9Cv9ITvM4C3gHki9zvYfvl4LOr8/fCW' + '6a+IH8mIDdF');
end;
procedure FreeTheDTM;
begin
FreeDTM(PlankDTM);
FreeDTM(IBoatDTM);
FreeBitmap(Won);
FreeBitmap(Lost1);
FreeBitmap(Lost2);
end;
function GetLocation: string;
var
x, y: Integer;
begin
if not LoggedIn then Exit;
Result := '';
if FindColorSpiralTolerance(x, y, 5855173, MMX1, MMY1, MMX2, MMY2, 45) and FindColorSpiralTolerance(x, y, 197048, MMX1, MMY1, MMX2, MMY2, 45) and FindColorSpiralTolerance(x, y, 60395, MMX1, MMY1, MMX2, MMY2, 45) and FindColorSpiralTolerance(x, y, 12161149, MMX1, MMY1, MMX2, MMY2, 45) then
begin
Result := 'HomeLand';
end;
if FindColorSpiralTolerance(x, y, 63488, 352, 10, 514, 89, 5) and FindColorSpiralTolerance(x, y, 3355647, 352, 10, 514, 89, 10) and FindDTM(IBoatDTM, x, y, MSX1, MSY1, MSX2, MSY2) then
begin
wait(150);
Result := 'IslandBoat';
Wait(150);
Exit;
end;
if FindColorSpiralTolerance(x, y, 16777113, 0, 0, 150, 100, 3) then
begin
Result := 'Boat';
Exit;
end;
end;
procedure RunToMobs;
var
x, y: integer;
Tpa: TPointArray;
ATPA: T2DPointArray;
begin
findcolorstolerance(Tpa, 195836, MMX1, MMY1, MMX2, MMY2, 5);
ATPA := TPAtoATPA(Tpa, 5);
if Length(ATPA) = 0 then
Exit;
SortATPASize(ATPA, true);
MiddleTPAEx(ATPA[0], X, Y);
MMouse(x, y, 0, 0);
ClickMouse2(Mouse_Left);
Wait(randomrange(600,1200));
end;
Procedure AttackMonsters;
var
MainColorTPA, SideColorTPA:TPointArray;
TheATPA: T2DPointArray;
MainBox: TBox;
i, H, Monster: integer;
MSCTP: Tpoint;
begin
if not LoggedIn then
Exit;
MSCTP := Point(MSCX, MSCY);
for Monster := DARK_DEFILER to BRIGHT_SPLATTER do
if findcolorstolerance(MainColorTPA, Monsters[Monster].MainColor, MSX1, MSY1, MSX2, MSY2, 5) then
begin
TheATPA := SplitTPAEx(MainColorTPA, 30, 30);
SortATPAFrom(TheATPA, MSCTP);
H := high(TheATPA)
for i := 0 to H do
begin
MainBox := GetTPABounds(TheATPA[i]);
if findcolorstolerance(SideColorTPA, Monsters[Monster].SideColor, MainBox.x1, MainBox.Y1, MainBox.X2, MainBox.Y2, 15) then
begin
mmouse(SideColorTPA[0].x, SideColorTPA[0].y, 2, 2);
if WaitUpText('ttack', 160) then
begin
Status := ('Attacking a '+ ToStr (Monsters[Monster].Names)) Proggy;
clickmouse2(mouse_left);
wait(randomrange(2000,6000));
end;
end;
end;
end;
end;
procedure FindMonstersDefend;
var
Run: integer;
begin
if not LoggedIn then Exit;
Status := ('Looking for Mobs');
Proggy;
repeat
if not LoggedIn then break;
AttackMonsters;
Run := random(100);
if (Run = 50) then
begin
Status := ('Run to mobs');
Proggy;
RunToMobs;
end;
until((GetLocation = 'IslandBoat') or (GetLocation = 'HomeLand'))
end;
procedure GetInBoat;
var
x, y, Q: integer;
begin
if not LoggedIn then Exit;
wait(1500);
if FindNPCChatText('Congratulations!', nothing) then
GamesWon := (GamesWon + 1);
if FindNPCChatText('noticed', nothing) or FindNPCChatText('lost.', nothing) then
GamesLost := (GamesLost + 1);
status := ('Looking for Plank DTM 1st Check');
Proggy;
if FindDTM(PlankDTM, x, y, 255, 71, 350, 335) then
begin
Status := ('Found DTM');
Status := ('Looking for Plank Color, 2nd check');
Proggy;
if FindColorSpiralTolerance(x, y, 3760254, 255, 71, 350, 335, 8) then
mmouse(x, y, 3, 3);
if WaitUpTextMulti(['Cross', 'plank'], 180) then
begin
Status := ('3rd Check Done, Crossing Plank :)');
Proggy;
MarkTime(Q);
repeat
if not LoggedIn then Break;
wait(randomrange(250, 1000));
clickmouse2(Mouse_Left);
if ((TimeFromMark(Q) > 10000)) then
begin
writeln('Couldn''t Cross Plank, Report Error ASAP')
terminatescript;
end;
until (GetLocation = 'Boat');
end;
end
else
wait(Randomrange(250,750));
if (GetLocation = 'Boat') then exit;
if RadialWalkTolerance(3256063, 0, 360, 80, 0, 0, 15) then
RadialWalkTolerance(2180436, 160, 200, 60, 0, 0, 50);
RadialWalkTolerance(982782, 140, 240, 60, 0, 0, 50);
end;
procedure WaitInBoat;
var
t, s: integer;
begin
if not LoggedIn then Exit;
Ftab(tab_clan);
Wait(500);
HotW := (World + 300);
Status := ('Checking If in Active Clan World');
Proggy;
Wait(800);
if (CWorld = True) then
begin
MarkTime(t);
Ftab(Tab_Inv);
repeat
if not LoggedIn then Break;
wait(randomrange(30, 250));
Status := ('Waiting in boat, Start AntiBan');
Proggy;
if not (GetLocation = 'Boat') then
exit;
case Random(100) of
1: HoverSkill('strength', False);
2: HoverSkill('hitpoints', False);
3: HoverSkill('magic', False);
4: HoverSkill('ranged', False);
5: RandomMovement;
6..15:
begin
MarkTime(s);
repeat
wait (randomrange(30, 200))
until (GetLocation = 'IslandBoat') or (TimeFromMark(s) > randomrange(5000, 20000))
end;
end;
until(GetLocation = 'IslandBoat')
Exit;
end
else
Status := ('Not In Active World, Hopping');
Proggy;
Logout;
OpenWorldScreen;
MyWorld(HotW);
Exit;
end;
procedure RunToCenter;
begin
if not LoggedIn then Exit;
if (GetLocation = 'HomeLand') then
exit;
Status := ('At Island Boat, Move out!');
Proggy;
wait(30);
Setangle(0);
MakeCompass('N') if (GetLocation = 'HomeLand') then
exit;
RadialWalkTolerance(1864314, 160, 200, 80, 0, 0, 50) if (GetLocation = 'HomeLand') or (GetLocation = 'IslandBoat') or (GetLocation = 'Boat') then
exit;
PraySelect;
RadialWalkTolerance(195836, 30, 330, 80, 0, 0, 50);
if (GetLocation = 'HomeLand') then
exit;
Status := ('Ran Past Center!');
Proggy;
end;
begin
AutoUpdateMe;
DeclarePlayer;
activateclient;
SetupSRL();
if (not LoggedIn) then
LogInPlayer;
Setangle(0);
MakeCompass('N')
wait(50);
CurrentW := (CurrentWorld);
Joinclan(Name);
SetRun(true);
Retaliate(true);
GameTab(tab_Inv);
DeclareDTM;
SetupMonsters;
Addonterminate('FreeTheDTM');
repeat
if not LoggedIn then
begin
LogInPlayer;
CurrentW := (CurrentWorld);
Joinclan(Name);
Wait(RandomRange(5000,7500));
end;
While (GetLocation = 'HomeLand') do
GetInBoat;
While (GetLocation = 'Boat') do
WaitInBoat;
While (GetLocation = 'IslandBoat') do
RunToCenter;
FindMonstersDefend;
until (false);
FreeTheDTM;
end.[/CODE]
