SRL Archive - Archive

nose_smasher - SRL Member Application Form


Nose Smasher

2008-11-06 14:15:17

<!– BEGIN TEMPLATE: formanswers –>
nose_smasher - SRL Member Application Form
nose_smasher

What is the meaning to life?


Where you Referred to SRL? If yes, by whom?
no


Programming Knowledge
Java and C++

Other Communitys
Not really…

How Long have You Played Runescape
Too long…

Are you affilated in anyway with Jagex LTD?
No
—————————————————–
Please write down a paragraph about Yourself.

Sup all, not too sure what to write in here… So I guess I just want to let you all know how much I love this community and I'm happy I found it because I've learned A LOT from everyone here. So thanks! :)

——————————————————
Please Post a Sample of your Work. Only SCAR Scripts Accepted

Hey guys, so this is my Script Thread:
PotatoPicker

And this is my Script:
{~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\
| |
| PotatoPicker By: |
| Nose_Smasher |
| |
| Version: beta SRL Version: Rev 28 |
| |
| Last Update: 11/5/08 |
| |
\______________________________________________________________________________/
* *
* FEATURES: *
* ~RadialRoadWalk ~DTM's *
* ~MultiPlayer ~Version Checker *
* ~Form ~GE Item Collector *
* ~Lost/Dead Check ~HomeTelly and Death walk *
* ~Potato Counter ~Proggy *
* ~RC (RemoteControl) ~Anti-Randoms *
* And Much More! *
\~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}
program PotatoPicker;
{.include SRL/SRL.scar}
{.include SRL/SRL/misc/Users.scar}
{.include SRL/SRL/misc/DraynorColorFinder.scar}


var
x, y, Picked, Total,
Loads, StopLoad: Integer;

Time2Run, GateOpen, Collector: Boolean;


const
Version = 'beta'; // dont touch this or script will Phail

Your_SRL_ID = ''; // don't have this? go to:
Your_SRL_Pass = ''; // [url]http://www.stats.srl-forums.com/[/url]
RCMasterNick = ''; // RemoteControl Nickname (leave blank if non)
UseTheForm = True; // use form?


procedure declarePlayers;

begin
if not (UseTheForm) then
begin
HowManyPlayers := 1;
numberOfPlayers(howManyPlayers);
CurrentPlayer := 0;

Players[0].Name := ''; //username
Players[0].Pass := ''; //password
Players[0].Nick := ''; //3-4 letters from your username
Players[0].Active := True;
Players[0].strings[0] := 'bank'; // 'bank' dont change
Players[0].integers[0] := 4; //How many loads before switching player (4 is good)
Players[0].booleans[0] := True; //Use Lumby Home Telly and deathwalk?
{
Players[1].Name := ''; //username
Players[1].Pass := ''; //password
Players[1].Nick := ''; //3-4 letters from your username
Players[1].Active := True;
Players[1].strings[0] := 'bank'; // 'bank' dont change
Players[1].integers[0] := 4; //How many loads before switching player (4 is good)
Players[1].booleans[0] := True; //Use Lumby Home Telly?

Players[2].Name := ''; //username
Players[2].Pass := ''; //password
Players[2].Nick := ''; //3-4 letters from your username
Players[2].Active := True;
Players[2].strings[0] := 'bank'; // 'bank' dont change
Players[2].integers[0] := 4; //How many loads before switching player (4 is good)
Players[2].booleans[0] := True; //Use Lumby Home Telly?
}
CheckUserNicks;

end else
begin
SRLPlayerForm(True, ['Lumby Home Telly?'], ['Number of Loads?'], ['Location?'], []);
end;
end;


function DeadCheck: Boolean; forward;
function LostCheck: Boolean; forward;
procedure PwntFTL; forward;
Procedure BankIt; forward;


Procedure CheckVersion;

var
Ver, Link: string;
begin
WriteLn('Checking Version...Please Wait');
Ver := GetPage('http://potatoes.freehostia.com/version.txt');
if Ver = '' then
begin
writeln('Server down, or some sort of error... =\');
writeln('running the script anyways :)');
exit;
end else
if Ver <> Version then
begin
Link := GetPage('http://potatoes.freehostia.com/link.txt');
WriteLn('Phail! You need Version ' + Ver)
WriteLn(' ');
WriteLn('Don''t worry! I''ll get it for you! ;)');
OpenWebPage(Link);
TerminateScript;
end else
WriteLn('Sweet, we''re up to date on teh Version!');
end;


function CollectionScreen: Boolean;
begin
result:= FindTextTPA(2070783, 20, 135, 64, 388, 86, 'Collection', upchars, Nothing);
end;


function CloseCollect: Boolean;
var
Timer: Integer;
begin
if CollectionScreen then
begin
MarkTime(Timer);
repeat
Mouse(426, 75, 4, 4, True)
if not CollectionScreen then
begin
Result:= True;
Break;
end else
Wait(300+random(200));
until not (CollectionScreen) or (TimeFromMark(Timer) > 8000)
end;
end;


Function CollectBox(i :Integer): TBox;
var
row, col: Integer;

begin
if (i < 1) or (i > 6) then
begin
srl_Warn('CollectBox', 'Incorrect index: ' + IntToStr(i), warn_AllVersions);
exit;
end;
row :=i mod 3; if row = 0 then row := 3;
col := i / 3 ; if i mod 3 <> 0 then Inc(col);
Result.x1 := (-12 + (row * 116));
Result.y1 := (40 + (col * 90));
Result.x2 := (69 + (row * 116)); //box 1 = 34
Result.y2 := (75 + (col * 90));
end;
//Result.x2 := 69 + (row * 116); box 2
//Result.y2 := 75 + (col * 90);

function ExistsCollect(i: Integer): Boolean;
var
a, b: integer;
TB: TBox;
begin
TB := CollectBox(i);
if FindColorTolerance(a, b, 3355443, TB.x1 + 5, TB.y1 + 5, TB.x2 - 5, TB.y2 - 5, 5) or
FindColor(a, b, 65536, TB.x1 + 5, TB.y1 + 5, TB.x2 - 5, TB.y2 - 5) then
begin
MMouse(a, b, 2, 2);
wait(350+random(150));
if (IsUpText('ollect')) then
begin
Mouse(a, b, 0, 0, true);
wait(500+random(200));
Result:= True;
end;
end;
end;


function OpenBankFaster(Location: String): Boolean; //Edited "OpenBankFast" to
var //look for 'CollectionScreen'
x, y, i, l, c, z: Integer;
Info: TIntegerArray;
Booths, t: TPointArray;
begin
Wait(400);
case LowerCase(Location) of
{'akb', 'al kharid': Info := [MSCX, MSCY, 7969203, 25, 1];
'lb', 'lumbridge': Info := [MSCX, MSCY, 4807788, 10, 1];
'veb', 'varrock east': Info := [MSCX, MSCY, 2971236, 10, 1];
'vwb', 'varrock west': Info := [270, 270, 5689318, 25, 1];
'feb', 'falador east': Info := [MSCX, MSCY + 50, 4612728, 14, 1];
'fwb', 'falador west': Info := [MSCY, MSCY, 4612728, 14, 1];}
'db', 'draynor': Info := [MSCX, MSCY, 605006, 4, 1];
//'eb', 'edgeville bank': Info := [MSCX + 50, MSCY, 3230295, 9, 2];
else
begin
srl_Warn('OpenBankFast', 'Unknown bank: '+Location, warn_AllVersions);
Exit;
end;
end;

MakeCompass('n');
z := GetColorToleranceSpeed;
ColorToleranceSpeed(Info[4]);
FindColorsSpiralTolerance(Info[0], Info[1], Booths, Info[2], MSX1, MSY1, MSX2, MSY2, Info[3]);
ColorToleranceSpeed(z);
SetArrayLength(t, 0);
t := Booths;
SetArrayLength(Booths, 0);
Booths := ReArrangeAndShortenArray(t, 14);
l := GetArrayLength(Booths) -1;
for i := 0 to l do
begin
if (not LoggedIn) or CollectionScreen then
Break;
{if (LowerCase(Location) = 'vwb') or (LowerCase(Location) = 'varrock west') then
begin
Booths[i].X := Booths[i].X + 5;
Booths[i].Y := Booths[i].Y - 20;
end; }
MMouse(Booths[i].X, Booths[i].Y, 3, 3);
Wait(75 + Random(75));
if IsUpText('ooth') Then
begin
GetMousePos(x, y);
Mouse(x, y, 0, 0, False);
Wait(70 + Random(75));
if ChooseOption('ollect') then
begin
FFLag(0);
MarkTime(c);
repeat
Wait(500);
until (CollectionScreen) or (TimeFromMark(c) > 3000);
end;
end;
end;
Result := (CollectionScreen);
end;


function BlackTextMultiSingle(Text: TstringArray; ChatLine: Integer): Boolean;
var
n, i: Integer;
begin
n := Length(Text) - 1;
for i := 0 to n do
if (Pos(Text[i], GetBlackText(ChatLine)) <> 0) then
begin
Result := True;
break;
end;
Exit;
end;


function BlackTextMultiAnyLine(ChatTxt: TStringArray): Boolean;
var
I: Byte;
begin
for I := 8 downto 1 do
if (BlackTextMultiSingle(ChatTxt, I)) then
begin
Result := True;
break;
end;
exit;
end;


procedure GECollector(bank: string);
var
i: Integer;
begin
if not (loggedin) then exit;
if (collector = False) then exit;
if not BlackTextMultiAnyLine(['xchang', 'lectio', 'pdat', 'items']) then
begin
WriteLn('No items in collection box :)');
Collector:= False;
Exit;
end else
begin
if (Collector = False) then exit;
WriteLn('Items in collection box!');
OpenBankFaster(bank);
wait(750+random(200));
if not (CollectionScreen) then exit;
for i:= 1 to 6 do
begin
ExistsCollect(i);
wait(250+random(100));
ExistsCollect(i); //incase you got gp too
end;
CloseCollect;
end;
BankIt;
Collector:= False;
end;


function DoubleCheck: Boolean;

begin
If Not (Loggedin) then exit;
if IsChatBlackTextAnyLine('inute') then
Result := False
else
Result := True;
end;


procedure SetTheRun;

var
Runcolor: String;
begin
if not (LoggedIn) then Exit;
GetMMLevels('run',RunColor);
if ((Time2Run = True) and (RunColor = 'Red')) then
begin
SetRun(False);
Time2Run := False;
end;
if (Time2Run = False) and ((RunColor = 'Yellow') or (RunColor = 'Green')) then
begin
SetRun(True);
Time2Run := True;
end;
end;

Procedure AntiRandomz;
begin
if not (loggedin) then exit;
FindNormalRandoms;
if (not LostCheck) and (not DeadCheck) then
exit
else if (LostCheck) or (DeadCheck) then
begin
PwntFTL;
FindNormalRandoms;
end;
end;


function InLumby: Boolean;
var
LumbCol: Integer;
begin
If not (Loggedin) then exit;
LumbCol := FindLumbyRoadColor;
if (FindColorTolerance(x, y, LumbCol, MMX1, MMY1, MMX2, MMY2, 3)) and
(FindSymbol(x, y, 'water')) then
Result := True
else
Result := False;
end;


Procedure Proggy;
var
i: Integer;
begin
SRLRandomsReport;
WriteLn('Please Post Proggy!');
WriteLn('Thanks for Using!');
WriteLn(' ');
WriteLn(Padl('Nose Smasher''s PotatoPicker', 43));
WriteLn(Padr('/~~~~~~~~~~', 48) + '~~~~~~~~~~\')
WriteLn('|' + Padl('|', 58));
WriteLn(Padr('| Total Potatoes Picked -->', 35) + Padr(inttostr(Total), 23) + '|');
WriteLn('|' + Padl('|', 58));
WriteLn(Padr('| Lumby2Draynor walks -->', 35) + Padr('0', 23) + '|');
WriteLn('|' + Padl('|', 58));
WriteLn('|' + Padl('|', 58));
WriteLn(Padr('| Time Running --->', 30) + Padr(TimeRunning, 28) + '|');
WriteLn('|' + Padl('|', 58));
WriteLn('\---------------------------------------------------------/');
WriteLn(' ');
for i:= 0 to getarraylength(players)-1 do
begin
WriteLn('Player #' + inttostr(i) + ' = ' + Players[i].strings[0]);
WriteLn('Active: ' + BoolToStr(Players[i].Active));
WriteLn('Potatoes Picked = ' + IntToStr(Players[i].integers[1]));
WriteLn(' ');
end;
end;


procedure HomeTelly;
var
C: Integer;
begin
If not (loggedin) then exit;
If (Players[CurrentPlayer].booleans[0] = False) then exit;
If (DeadCheck) then exit;
GameTab(7);
wait(100+random(50));
If (FindColorTolerance(x, y, 16284282, MIX1, MIY1, MIX2, MIY2, 3)) then
begin
MMouse(x, y, 2, 2);
wait(75+random(50));
if not IsUpText('ome') then
begin
MMouse(571, 229, 2, 2);
wait(75+random(50));
if not IsUpText('ome') then exit;
Mouse(x, y, 0, 0, true);
end;
Mouse(x, y, 0, 0, true);
repeat
If Not (Loggedin) then exit;
FindNormalRandoms;
wait(1000+random(250));
C := C + 1;
until (InLumby) or (C >= 15);
if (not (InLumby)) and (C >= 15) then
if (DoubleCheck) then
exit
else
WriteLn('Gotta wait fool...');
NextPlayer(false);
end;
GameTab(4);
end;


Function LostCheck: Boolean;
begin
if not (loggedin) then exit;
if (Players[CurrentPlayer].strings[0] = 'Lost') then
result:= True
else
result:= False;
end;


function DeadCheck: Boolean;
begin
If Not (Loggedin) then exit;
if BlackTextMultiAnyLine(['dead', 'dear']) then
if (InLumby) then
begin
Players[CurrentPlayer].strings[0]:= 'Dead';
result:= True;
end else
result:= False;
end;


function OpenTehGate(tolz: integer): Boolean;
var
i, CTS: Integer;
TPA: TPointArray;
aTPA: T2DPointArray;

begin
if not (loggedin) then exit;
WriteLn('Checking Gate Now..');
Result := False;
CTS:= GetColorToleranceSpeed;
ColorToleranceSpeed(tolz);
FindColorsSpiralTolerance(MSCX, MSCY, TPA, 5137268, MSCX-85, MSCY-85, MSCX+85, MSCY+85, 15);
aTPA := SplitTPA(TPA, 2);
for i := 0 to High(aTPA) do
begin
if Length(aTPA[i]) < 5 then
continue;
MiddleTPAEx(aTPA[i], x, y);
MMouse(x, y, 0, 0);
Wait(RandomRange(250, 450));
if IsUpText('lose') then
begin
result:= True;
GateOpen:= True;
break;
end;
if IsUpText('pen') and IsUpText('ate') then
begin
Mouse(x, y, 0, 0, True);
if (FindColorTolerance(x, y, 65535, MSX1, MSY1, MSX2, MSY2, 2)) then
begin
Result:= False;
GateOpen:= False;
break;
end else
begin
FFlag(0);
Result := True;
GateOpen:= True;
Break;
end;
end;
end;
ColorToleranceSpeed(CTS);
end;


function PotatoFinder: Boolean;
var
TaterTPA, TatorTPA: TPointArray;
PoTPA: T2DPointArray;
i, CTS: Integer;
begin
if not LoggedIn then Exit;
Result := False;
GameTab(4);
CTS:= GetColorToleranceSpeed;
ColorToleranceSpeed(2);
FindColorsSpiralTolerance(MSCX, MSCY, TaterTPA, 11645644, MSCX-105, MSCY-105, MSCX+105, MSCY+105, 15);
FindColorsSpiralTolerance(MSCX, MSCY, TatorTPA, 7040391, MSCX-105, MSCY-105, MSCX+105, MSCY+105, 20);
PoTPA := TPAToATPA(CombineTPA(TaterTPA,TatorTPA), 25);
SortATPASize(PoTPA, False);
for i := 0 to High(PoTPA) do
begin
MiddleTPAEx(PoTPA[i], x, y);
MMouse(x, y, 1, 1);
Wait(RandomRange(200, 350));
if IsUpText('ick') and IsUpText('otat') then
begin
WriteLn('Potato Found!');
Result:= True;
Mouse(x, y, 0, 0, true);
FFlag(0);
FindNormalRandoms;
wait(1250+random(250));
break;
end else
begin
WriteLn('We Fail :(');
break;
end;
end;
ColorToleranceSpeed(CTS);
end;


function RoadWalking(Numb: Integer): Boolean;
var
TheRoad, Bankers, w: integer;
begin
FindDraynorRoadColor(TheRoad, MMX1, MMY1, MMX2, MMY2);
case Numb of
1: begin
RadialRoadWalk(TheRoad, 35, 85, 60, 3, 3);
Wait(35+random(15));
FFlag(3);
SetTheRun;
Result:= True;
exit;
end;
2: begin
RadialRoadWalk(TheRoad, 355, 400, 50, 3, 1);
Wait(35+random(15));
FFlag(2);
SetTheRun;
Result:= True;
exit;
end;
3: begin
RadialRoadWalk(TheRoad, 5, 50, 55, 3, 2);
Wait(35+random(15));
FFlag(3);
SetTheRun;
Result:= True;
exit;
end;
4: begin
RadialRoadWalk(TheRoad, 15, 65, 55, 3, 3);
Wait(35+random(15));
FFlag(2);
SetTheRun;
Result:= True;
exit;
end;
5: begin
RadialRoadWalk(TheRoad, 30, 115, 65, 2, 2);
Wait(35+random(15));
FFlag(3);
SetTheRun;
Result:= True;
exit;
end;
6: begin
RadialRoadWalk(TheRoad, 30, 145, 63, 5, 5);
Wait(35+random(15));
FFlag(2);
SetTheRun;
Result:= True;
exit;
end;
7: begin
GateOpen:= False;
w:= 0;
if (FindColorTolerance(x, y, 230, MMCX, MMCY-20, MMX2, MMY2, 20)) then
begin
Wait(35+random(15));
Mouse(x, y+3, 1, 1, true);
FFlag(2);
wait(500+random(250));
if FindColorTolerance(x, y, 230, MMCX-20, MMCY-20, MMCX+20, MMCY, 20) then
GateOpen := True
else
begin
repeat
if (OpenTehGate(2)) then break;
if (OpenTehGate(-1)) then break;
inc(w);
until (GateOpen = True) or (w >= 5);
end;
if (GateOpen = False) then
begin
WriteLn('TPA failed, jus wing it!');
MMouse(MSCX+(RandomRange(10, 20)), MSCY+(RandomRange(8, 17)), 1, 1);
wait(75);
if IsUpText('pen') then
begin
GetMousePos(x, y);
Mouse(x, y, 0, 0, true);
wait(200+random(100));
GateOpen:= True;
end else
exit;
end;
SetTheRun;
Result:= True;
exit;
end else
Result:= False;
end;
8: begin
GateOpen:= False;
w:= 0;
if (FindColorSpiralTolerance(x, y, 230, MMX1, MMY1+25, MMX2-30, MMY2, 20)) then
begin
Wait(35+random(15));
Mouse(x, y-3, 1, 1, true);
FFlag(2);
wait(500+random(250));
if FindColorTolerance(x, y, 230, MMCX-20, MMCY, MMCX+20, MMCY+20, 20) then
GateOpen := True
else
begin
repeat
OpenTehGate(2);
OpenTehGate(-1);
inc(w);
until (GateOpen = True) or (w >= 5);
end;
SetTheRun;
Result:= True;
exit;
end else
Result:= False;
end;
9: begin
FindDraynorRoadColor(TheRoad, MMX1, MMY1, MMX2, MMY2);
Wait(75+random(50));
RadialRoadWalk(TheRoad, 180, 360, 65, 3, 3);
Wait(35+random(15));
FFlag(3);
SetTheRun;
Result:= True;
exit;
end;
10: begin
RadialRoadWalk(TheRoad, 200, 300, 60, 3, 1);
Wait(35+random(15));
FFlag(2);
SetTheRun;
Result:= True;
exit;
end;
11: begin
RadialRoadWalk(TheRoad, 150, 220, 55, 3, 2);
Wait(35+random(15));
FFlag(3);
SetTheRun;
Result:= True;
exit;
end;
12: begin
RadialRoadWalk(TheRoad, 160, 210, 55, 3, 3);
Wait(35+random(15));
FFlag(2);
SetTheRun;
Result:= True;
exit;
end;
13: begin
RadialRoadWalk(TheRoad, 160, 200, 65, 2, 2);
Wait(35+random(15));
FFlag(3);
SetTheRun;
Result:= True;
exit;
end;
14: begin
RadialRoadWalk(TheRoad, 190, 230, 50, 3, 3);
Wait(35+random(15));
FFlag(2);
SetTheRun;
Result:= True;
exit;
end;
15: begin
If (FindSymbol(x, y, 'bank')) then
begin
Mouse(x, y, 2, 2, true);
FFlag(2);
Players[CurrentPlayer].strings[0] := 'Bank';
Result:= True;
exit;
end else
begin
Bankers := DTMFromString('78DA63CC626260086140017FFE30313003694' +
'620FE0F048C994035D10C6880118904D24940355104D480ECF227' +
'A02607A8260CBF1A0016B009CB');
Wait(250+random(100));
if (DTMRotated(Bankers, x, y, MMX1, MMY1, MMX2, MMY2)) then
begin
Mouse(x, y, 2, 2, true);
FFlag(2);
Players[CurrentPlayer].strings[0] := 'Bank';
Inc(Loads);
Result:= True;
end;
end;
FreeDTM(Bankers);
end;
end;
end;


Function PickedCount: Integer; // Credits to Wizzy's ess counter
var
i: Integer;
TPA: TPointArray;
TB: TBox;

begin
Result := 0;
GameTab(4);
for i := 1 to 28 do
begin
TB := InvBox(i);
FindColorsTolerance(TPA, 65536, TB.X1, TB.Y1, TB.X2, TB.Y2, 0);
if (Length(TPA) = 53) then
Result := Result + 1;
end;
end;


Procedure CountEm;

begin
if not (loggedin) then exit;
Picked := PickedCount;
Total:= Total + Picked;
ReportVars[0]:= ReportVars[0] + Picked;
Players[CurrentPlayer].integers[1]:= Players[CurrentPlayer].integers[1] + Picked;
end;

////////////////////////////////////////////////////////////////////////////////
/////////////////////// --> Credits to TravisV10 <-- ///////////////////////////
////////////////////////////////////////////////////////////////////////////////

function FailSafeRadialWalk(rad1, rad2, extend, roadtype: integer): boolean;
var
searchtime: integer;
begin
MarkTime(searchtime);
if (not(RadialWalk(roadtype, rad1, rad2, extend, 0, 0))) then
begin
repeat
rad1 := rad1 - 3;
rad2 := rad2 + 3;
WriteLn('Increading the radius');
if (TimeFromMark(searchtime) >= 20000 + random(5550)) then
begin
WriteLn('Player got lost... bummer');
NextPlayer(false);
Break;
end;
until (RadialWalk(roadtype, rad1, rad2, extend, 0, 0));
end;
FFlag(0);
Wait(550 + random(250)); //Just to be safe!
Result := true;
end;
// Credits continued...
procedure LumbyToDraynor;
var
x, y, tries: integer;
begin
SetAngle(True);
MakeCompass('N');
SymbolAccuracy := 0.7;

FailSafeRadialWalk(74, 90, 70, FindLumbyRoadColor);
FailSafeRadialWalk(307, 332, 70, FindLumbyRoadColor);
FailSafeRadialWalk(341, 342, 70, FindLumbyRoadColor);
FailSafeRadialWalk(320, 359, 70, FindLumbyRoadColor);
FailSafeRadialWalk(340, 370, 70, FindLumbyRoadColor);
FailSafeRadialWalk(290, 230, 70, FindLumbyRoadColor);
FailSafeRadialWalk(295, 260, 70, FindLumbyRoadColor);
FailSafeRadialWalk(240, 302, 70, FindLumbyRoadColor);
FailSafeRadialWalk(300, 260, 70, FindLumbyRoadColor);
FailSafeRadialWalk(270, 230, 55, FindLumbyRoadColor);
FailSafeRadialWalk(285, 240, 70, FindRoadColor);
FailSafeRadialWalk(240, 200, 70, FindRoadColor);
FailSafeRadialWalk(190, 166, 70, FindRoadColor);
FailSafeRadialWalk(190, 150, 70, FindRoadColor);
FailSafeRadialWalk(240, 180, 40, FindRoadColor);

if (not(FindSymbol(x, y, 'bank'))) then
begin
Tries := 0;
repeat
Wait(500 + random(500));
if (Tries = 20) then
begin
WriteLn('Could not find bank sybmol.');
NextPlayer(False);
break;
end;
Tries := Tries + 1;
until (FindSymbol(x, y, 'bank'));
end;
Mouse(x, y, 2, 2, True);
FFlag(2);
Players[CurrentPlayer].strings[0] := 'Bank';
end;
////////////////////////////////////////////////////////////////////////////////
////////////////////// ^^ Credits to TravisV10 ^^ //////////////////////////////
////////////////////////////////////////////////////////////////////////////////

procedure PwntFTL;

begin
If not (loggedin) then exit;
If not (Players[CurrentPlayer].strings[0] = 'Lost') then
If (not Players[CurrentPlayer].strings[0] = 'Dead') then exit;
HomeTelly;
LumbyToDraynor;
end;


Procedure BankIt;

begin
if not (loggedin) then exit;
if not (players[currentplayer].strings[0] = 'bank') then exit;
repeat
if (not(Loggedin)) then break;
OpenBank('db', false, false);
until(BankScreen);
if (bankscreen) then
begin
wait(100+random(100));
fixbank;
depositall;
wait(500+random(500));
CloseBank;
end;
end;


Procedure PickPotatoes;
var
c: Integer;
begin
if not (Loggedin) then exit;
if not (Players[CurrentPlayer].strings[0] = 'Potatoes') then exit;
c:= 0;
MakeCompass('n');
SetAngle(true);
repeat
PotatoFinder;
inc(c);
FindNormalRandoms;
SetTheRun;
until (InvFull) or (c >= 100);
end;


Procedure BankToPotatoes;
var
i: integer;
begin
if not (Loggedin) then exit;
if not (players[currentplayer].strings[0] = 'bank') then exit;
if (InvFull) then BankIt;
GateOpen:= False;
MakeCompass('n');
SetTheRun;
for i:= 1 to 7 do
begin
if not (RoadWalking(i)) then
begin
WriteLn('RoadWalking #' + inttostr(i) + ' Failed...');
AntiRandomz;
if (i >= 7) then
begin
WriteLn('Tryin to get closer to Gate.');
Mouse(MMCX+35, MMCY+5, 5, 5, true);
FFlag(2);
end else
break;
if not (RoadWalking(7)) then
break;
end;
end;
if (GateOpen = True) then
begin
WriteLn('Moving closer');
Mouse(MMCX+5, MMCY+25, 8, 8, true);
FFlag(3);
wait(250+random(100));
Players[CurrentPlayer].strings[0] := 'Potatoes';
end else
begin
WriteLn('Gate failed or We''re Lost :(');
Players[CurrentPlayer].strings[0] := 'Lost';
end;
AntiRandomz;
end;


Procedure PotatoesToBank;
var
i: integer;
TooFar: Boolean;
begin
if not (Loggedin) then exit;
if not (Players[CurrentPlayer].strings[0] = 'Potatoes') then exit;
CountEm;
Proggy;
TooFar:= False;
MakeCompass('n');
SetAngle(true);
SetTheRun;
if not (FindColorTolerance(x, y, 230, MMX1, MMY1+25, MMX2-30, MMY2, 20)) then
begin
TooFar := true;
WriteLn('Too Far South Moving Closer');
Mouse(MMCX-10, MMCY-40, 8, 8, true);
FFlag(3);
wait(250+random(100));
if not (FindColorTolerance(x, y, 230, MMX1, MMY1+25, MMX2-30, MMY2, 20)) then
TooFar:= True
else
TooFar:= False;
end;
if (TooFar = True) then
begin
WriteLn('Uh oh... We Fail...');
Players[CurrentPlayer].strings[0] := 'Lost';
end else
begin
For i:= 8 to 15 do
begin
If not (RoadWalking(i)) then
begin
WriteLn('RoadWalking #' + inttostr(i) + ' Failed...');
AntiRandomz;
if (i >=15) then
begin
WriteLn('Tryin to get closer to Bank.');
Mouse(MMCX-35, MMCY+10, 8, 8, true);
FFlag(2);
end else
continue;
if not (RoadWalking(15)) then
continue;
end;
end;
end;
if not (Players[CurrentPlayer].strings[0] = 'Bank') then
begin
WriteLn('We''re Lost...');
Players[CurrentPlayer].strings[0] := 'Lost';
end;
AntiRandomz;
BankIt;
end;


Procedure SetUpScript;

begin
ScriptID := '1070';
declareplayers;
RCMaster := RCMasterNick;
RCSetNick;
SRLID := Your_SRL_ID;
SRLPassword := Your_SRL_Pass;
If ( SRLID = '' ) Or ( SRLPassword = '' )Then
Begin
Writeln(' You Need a SRL Stats Account, Create One Fool..');
OpenWebPage('http://www.srl-forums.com');
TerminateScript;
End;
wait(50);
ActivateClient;
end;


Procedure MainLoop;

begin
Loads:= 0;
StopLoad:= Players[CurrentPlayer].integers[0];
if (StopLoad <= 0) then StopLoad:= 3;
repeat
repeat
SetAngle(true);
MakeCompass('n');
BankIt;
GECollector('db');
BankToPotatoes;
PickPotatoes;
PotatoesToBank;
until (Loads = StopLoad);
NextPlayer(true);
Loads:= 0;
Collector:= True;
until (PlayersActive <= 0);
end;

{~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}

Begin
ClearDebug;
SetUpSRL;
CheckVersion;
SetUpScript;
Collector:= True;
GateOpen:= False;
Loads:= 0;
Total:= 0;
Picked:= 0;
StopLoad:= Players[CurrentPlayer].integers[0];
if (StopLoad <= 0) then StopLoad:= 3;
ActivateClient;
if not(loggedin) then
begin
ActivateClient;
loginplayer;
AntiRandomz;
Loads := 0;
end;
repeat
MainLoop;
until(false);
terminatescript;
end.

——————————————————
<!– END TEMPLATE: formanswers –>

Ruroken

2008-11-06 14:19:03

Looks good to me!

Yes.

Laur€ns

2008-11-06 14:52:02

One thing ;)


Your_SRL_Pass = ''; // <a href="http://www.stats.srl-forums.com/" target="_blank">http://www.stats.srl-forums.com/</a>

{---->} Your_SRL_Pass = ''; // <url>http://www.stats.srl-forums.com/</url>

boberman

2008-11-06 14:55:00

looks pretty good to me. I voted yes.

Now get rid of those global variables! :P

Ruroken

2008-11-06 15:03:53

From: boberman
looks pretty good to me. I voted yes.

Now get rid of those global variables! :P


Globals can be useful ;)

boberman

2008-11-06 15:42:11

From: Ruroken
Globals can be useful ;)


They can also be deadly. Global constants = ok (not great mind you). Global variables = T3h D3viL!

Global variables destroy code re-usability, destroy encapsulation, introduce many possibilities for bugs to enter in. And ultimately are just bad programming practice.

Avoid them at all costs.

http://en.wikipedia.org/wiki/Global_variable

Magiic

2008-11-06 16:33:57

yes from me, bbl to explain why

Nose Smasher

2008-11-06 16:57:14

Yay! Thanks all for votes and input :)

@globals - I'll look into it ;)

Note: keep in mind its only BETA version, so MANY more updates to come… but since my thread was a lil slow I figured I'd apply with it and get some extra feedback :p

who voted no and why please? :confused: :p

EDIT: Post count –> 3, 2, 1… Blast off?! (sorry couldn't help it) :p

jakeyboy29

2008-11-06 17:29:05

yes. good application imho.

EvilChicken!

2008-11-06 17:49:01

You clearly show that you're familiar with SRL and how to use it in creative and advanced ways.

A clear yes from me, look like you're getting in.
Congratulations.

Iron Man

2008-11-06 18:52:26

Yes.

You need to shorten your RoadWalking function, you can create a RadialWalkExEx (any name) that includes your
RadialRoadWalk(TheRoad, startx, endx, radius, rx, rx);
Wait(35+random(15));
FFlag(3);
SetTheRun;
Result:= True;
exit;

Good luck.

Scaper

2008-11-06 19:06:07

yes from me looks quite fine good luck sir

Nose Smasher

2008-11-06 21:40:24

From: Iron man
Yes.

You need to shorten your RoadWalking function, you can create a RadialWalkExEx (any name) that includes your
RadialRoadWalk(TheRoad, startx, endx, radius, rx, rx);
Wait(35+random(15));
FFlag(3);
SetTheRun;
Result:= True;
exit;

Good luck.

Will do.. I was actually just editing that function till comp crashed :fiery:

@everyone else - Thanks :D

Nava2

2008-11-08 18:47:50

Yes, shorten some functions.

Nose Smasher

2008-11-08 21:45:27

EDIT: So 13 yes vs. 1 no… Think it's safe to say I'm membs now? ;) :D

:spot:

Tniffoc

2008-11-08 22:35:52


Inc(yourYesses);

Good job!

Nose Smasher

2008-11-11 16:06:40

Just out of curiosity, when do I find out if I made it in or not? is it 7 - 14 days?

noidea

2008-11-11 16:11:47

Like one or two.

TViYH

2008-11-11 16:59:56

Mine took..2 hours. Lol.

You're 12-1, so it's almost impossible for you not to get it now. Lol.

Just try to be patient :)

Iron Man

2008-11-11 18:22:14

From: TheVoiceInYourHead
Mine took..2 hours. Lol.

You're 12-1, so it's almost impossible for you not to get it now. Lol.

Just try to be patient :)


It's possible, just unlikely.

As he said, just be patient and an admin will review it.

Nose Smasher

2008-11-12 00:40:59

sweet, thanks guys!

Oh, and thank you "yes" # 13 ;)

TViYH

2008-11-15 19:53:14

Congratulations :)

You're basically in.

Nose Smasher

2008-11-17 15:48:46

From: TViYH
Congratulations :)

You're basically in.


Thanks :)

BTW… I Updated this script… either go to my script thread or jus run the script I have posted here, will get new version for you! ;)

jakeyboy29

2008-11-17 15:56:39

poll closed, welcome in.

Waddo

2008-11-17 17:46:40

wow is it me or has the standard of apps gone up while ive been inactive
before i read the comments firsgt thing i noticed was your global variables you use very few of them wd as son as i saw that and the length it told me you know how to use functions and procedures well and i think you could remove all of them global variables just add them in when there needed in functions/procedures as parameters and pass them around
congratulations for getting in I would have voted yes but poll is closed :p

Nose Smasher

2008-11-17 18:21:53

From: jakeyboy29
poll closed, welcome in.

:D

From: Waddo
wow is it me or has the standard of apps gone up while ive been inactive
before i read the comments firsgt thing i noticed was your global variables you use very few of them wd as son as i saw that and the length it told me you know how to use functions and procedures well and i think you could remove all of them global variables just add them in when there needed in functions/procedures as parameters and pass them around
congratulations for getting in I would have voted yes but poll is closed :p

Thanks :)

I would get rid of globals, but would my proggy still be accurate??

EDIT: Does it normaly take this long? :p (ADHD + Being Patient = Fail)

Also, will I finally be able to have an avatar when I'm membs?? :D (I've seen jr membs wit em, but I cant for some reason :( )

Lee Lok Hin

2008-11-18 04:50:33

They have one because they're site supporters. They aren't supposed to have one. Yes, you will get an avatar when you're srl-members.

I've memoserved Wizzup about closing this thread :p

Wizzup?

2008-11-18 08:24:36

/ms read new

Welcome!