Daniel
2008-01-13 22:48:09
IP-Drowner - SRL Member Application Form
IP-Drowner
What is the meaning to life?
Where you Referred to SRL? If yes, by whom?
Programming Knowledge
I know a bit of PHP, CSS and HTML.
Other Communitys
I used to visit MoparIsTheBest!
How Long have You Played Runescape
3 years since last count.
Are you affilated in anyway with Jagex LTD?
No
—————————————————–
Please write down a paragraph about Yourself.
Well, my name is IP-Drowner and i am sure you have seen/heard/met me around the forums. I am a very active scripter who is talented and a fast learner. R0b0t1 said that he would vote Yes on my next members application (This Application) for learning quite quick of procedures and functions (Well, something similar…).
Um, that's about it.
P.S. If there are previous posts in this Applying For Membership section. It isn't my fault. I pressed submit, it downloaded a file called newpost.php and Firefox kept on opening blank tabs. So now i am using Internet Explorer.
——————————————————
Please Post a Sample of your Work. Only SCAR Scripts Accepted
IP-Drowner
What is the meaning to life?
Where you Referred to SRL? If yes, by whom?
Programming Knowledge
I know a bit of PHP, CSS and HTML.
Other Communitys
I used to visit MoparIsTheBest!
How Long have You Played Runescape
3 years since last count.
Are you affilated in anyway with Jagex LTD?
No
—————————————————–
Please write down a paragraph about Yourself.
Well, my name is IP-Drowner and i am sure you have seen/heard/met me around the forums. I am a very active scripter who is talented and a fast learner. R0b0t1 said that he would vote Yes on my next members application (This Application) for learning quite quick of procedures and functions (Well, something similar…).
Um, that's about it.
P.S. If there are previous posts in this Applying For Membership section. It isn't my fault. I pressed submit, it downloaded a file called newpost.php and Firefox kept on opening blank tabs. So now i am using Internet Explorer.
——————————————————
Please Post a Sample of your Work. Only SCAR Scripts Accepted
{===================================================================]
[ IP-owerMiner ]
[ ]
[ NAME : IP-owerMiner ]
[ WRITER : IP-Drowner ]
[ CATEGORY : Miner ]
[ DESCRIPTION : Mines near specified rock. ]
[ AUTOCOLOR : Yes (Except for Runite Ores) ]
[ SRL Used : 4.00 Revision #9 ]
[ SCAR Used : 3.12c - 3.13 ]
[ Version : 1.1 ]
[ ]
[ More Scripts can be found at ]
[ [url]www.SRL-Forums.com[/url] ]
[ ]
[===================================================================]
[ Instructions. ]
[===================================================================]
[ 1. USE Runescape with Low Detail, Very Bright. ]
[ 2. Set your Screen to 32 bit TRUE colour. ]
[ 3. Setup lines 52-55 and lines 65-135. ]
[ 6. Have Pick in first inventory section or have it wielded. ]
[ 7. Start the script Logged Out or Logged in. ]
[ ]
[===================================================================]
[ Credits ]
[===================================================================]
[ Sumilion (I Hope) - For letting me use his Gem Stone Mask. ]
[ ]
[===================================================================]
[ Version Tracker ]
[===================================================================]
[ 1.0 - BETA Release. ]
[ 1.1 - Fixed few BETA Errors. Now in Theta stage! ]
[ ]
[===================================================================}
/////////////////////////////////////
// Variable List //
//---------------------------------//
// //
// Ore Variables (CaSE senSITive): //
// Runite - Adamantite - //
// Mithril - Gold - Iron - //
// Copper - Tin - Clay //
// //
/////////////////////////////////////
program IP_OwerMiner;
{.include SRL\SRL.scar}
{.include SRL\SRL\skill\Mining.scar}
{.include IPIncludes.scar}
const
IPSrlStatsID = '1669'; //Your SRL Statistics ID.
IPSrlPass = 'someone'; //Your SRL Statistics Password.
IPOreTolerance = 4; //Tolerance of the Ore. Recommended to be kept at 4.
IPGasTolerance = 6; //Tolerance of Gas. Change higher if you find broken pick-axes.
procedure DeclarePlayers;
begin
HowManyPlayers := 6;
NumberOfPlayers(HowManyPlayers);
CurrentPlayer := 0;
SRLID := IPSrlStatsID;
SRLPassword := IPSrlPass;
Players[0].Name := ''; // Your Runescape Username
Players[0].Pass := ''; // Your Runescape Password
Players[0].Nick := ''; // 3-4 letters from the middle of your Username. NO CAPS.
Players[0].Strings[0] := 'Iron'; //What ore to mine. See a list of variables above.
Players[0].Integers[0] := 1; //How many loads to do.
Players[0].Strings[1] := 'mining'; //Skill to train upon lamp (Must Be lowercase).
Players[0].Strings[2] := 'n'; //Run direction if find's a fight?
Players[0].Booleans[0] := True; //Run further away then usual. It will run back.
Players[0].Integers[1] := 5; //Approximately how many seconds does it take to mine
// the ore you have chosen?
Players[0].Active := True;
Players[1].Name := ''; // Your Runescape Username
Players[1].Pass := ''; // Your Runescape Password
Players[1].Nick := ''; // 3-4 letters from the middle of your Username. NO CAPS.
Players[1].Strings[0] := 'Iron'; //What ore to mine.
Players[1].Integers[0] := 10; //How many loads to do.
Players[1].Strings[1] := 'mining'; //Skill to train upon lamp.
Players[1].Strings[2] := 'n'; //Run direction if find's a fight?
Players[1].Booleans[0] := True; //Run further away then usual. It will run back.
Players[1].Integers[1] := 4; //Approximately how many seconds does it take to mine
// the ore you have chosen?
Players[1].Active := False;
Players[2].Name := ''; // Your Runescape Username
Players[2].Pass := ''; // Your Runescape Password
Players[2].Nick := ''; // 3-4 letters from the middle of your Username. NO CAPS.
Players[2].Strings[0] := 'Iron'; //What ore to mine.
Players[2].Integers[0] := 10; //How many loads to do.
Players[2].Strings[1] := 'mining'; //Skill to train upon lamp.
Players[2].Strings[2] := 'n'; //Run direction if find's a fight?
Players[2].Booleans[0] := True; //Run further away then usual. It will run back.
Players[2].Integers[1] := 4; //Approximately how many seconds does it take to mine
// the ore you have chosen?
Players[2].Active := False;
Players[3].Name := ''; // Your Runescape Username
Players[3].Pass := ''; // Your Runescape Password
Players[3].Nick := ''; // 3-4 letters from the middle of your Username. NO CAPS.
Players[3].Strings[0] := 'Iron'; //What ore to mine.
Players[3].Integers[0] := 10; //How many loads to do.
Players[3].Strings[1] := 'mining'; //Skill to train upon lamp.
Players[3].Strings[2] := 'n'; //Run direction if find's a fight?
Players[3].Booleans[0] := True; //Run further away then usual. It will run back.
Players[3].Integers[1] := 4; //Approximately how many seconds does it take to mine
// the ore you have chosen?
Players[3].Active := False;
Players[4].Name := ''; // Your Runescape Username
Players[4].Pass := ''; // Your Runescape Password
Players[4].Nick := ''; // 3-4 letters from the middle of your Username. NO CAPS.
Players[4].Strings[0] := 'Iron'; //What ore to mine.
Players[4].Integers[0] := 10; //How many loads to do.
Players[4].Strings[1] := 'mining'; //Skill to train upon lamp.
Players[4].Strings[2] := 'n'; //Run direction if find's a fight?
Players[4].Booleans[0] := True; //Run further away then usual. It will run back.
Players[4].Integers[1] := 4; //Approximately how many seconds does it take to mine
// the ore you have chosen?
Players[4].Active := False;
Players[5].Name := ''; // Your Runescape Username
Players[5].Pass := ''; // Your Runescape Password
Players[5].Nick := ''; // 3-4 letters from the middle of your Username. NO CAPS.
Players[5].Strings[0] := 'Iron'; //What ore to mine.
Players[5].Integers[0] := 10; //How many loads to do.
Players[5].Strings[1] := 'mining'; //Skill to train upon lamp.
Players[5].Strings[2] := 'n'; //Run direction if find's a fight?
Players[5].Booleans[0] := True; //Run further away then usual. It will run back.
Players[5].Integers[1] := 4; //Approximately how many seconds does it take to mine
// the ore you have chosen?
Players[5].Active := False;
end;
var
x, y, xr, yr : Integer;
ARune, AAddy, AMith, ASteel, AIron, ABronze : Integer;
RColour : array[1..5] of Integer;
GColour : array[1..10] of Integer;
MSymbol : array[0..4] of Integer;
GemMask : Integer;
procedure LoadColours;
begin
if(Players[CurrentPlayer].Strings[0]='Clay') then
begin
RColour[1]:= 5279663;
RColour[2]:= 3695995;
RColour[3]:= 0;
RColour[4]:= 0;
RColour[5]:= 0;
end;
if(Players[CurrentPlayer].Strings[0]='Copper') then
begin
RColour[1]:= 4417938;
RColour[2]:= 3165032;
RColour[3]:= 4879522;
RColour[4]:= 5077674;
RColour[5]:= 4483989;
end;
if(Players[CurrentPlayer].Strings[0]='Tin') then
begin
RColour[1]:= 8421514;
RColour[2]:= 6053220;
RColour[3]:= 6184806;
RColour[4]:= 7566204;
RColour[5]:= 6381928;
end;
if(Players[CurrentPlayer].Strings[0]='Iron') then
begin
RColour[1]:= 2503251;
RColour[2]:= 1976386;
RColour[3]:= 0;
RColour[4]:= 0;
RColour[5]:= 0;
end;
if(Players[CurrentPlayer].Strings[0]='Coal') then
begin
RColour[1]:= 2768703;
RColour[2]:= 1318430;
RColour[3]:= 2768446;
RColour[4]:= 3295562;
RColour[5]:= 2636604;
end;
if(Players[CurrentPlayer].Strings[0]='Gold') then
begin
RColour[1]:= 5029331;
RColour[2]:= 3970470;
RColour[3]:= 0;
RColour[4]:= 0;
RColour[5]:= 0;
end;
if(Players[CurrentPlayer].Strings[0]='Mithril') then
begin
RColour[1]:= 7096649;
RColour[2]:= 5651258;
RColour[3]:= 7950930;
RColour[4]:= 0;
RColour[5]:= 0;
end;
if(Players[CurrentPlayer].Strings[0]='Adamantite') then
begin
RColour[1]:= 5466195;
RColour[2]:= 4478276;
RColour[3]:= 0;
RColour[4]:= 0;
RColour[5]:= 0;
end;
if(Players[CurrentPlayer].Strings[0]='Runite') then
begin
RColour[1]:= 0;
RColour[2]:= 0;
RColour[3]:= 0;
RColour[4]:= 0;
RColour[5]:= 0;
end;
end;
procedure LoadGasColours;
begin
GColour[1]:= 16777215; //Gas Colour 01
GColour[2]:= 16777215; //Gas Colour 02
GColour[3]:= 16777215; //Gas Colour 03
GColour[4]:= 16777215; //Gas Colour 04
GColour[5]:= 16777215; //Gas Colour 05
GColour[6]:= 16777215; //Gas Colour 06
GColour[7]:= 16777215; //Gas Colour 07
GColour[8]:= 16777215; //Gas Colour 08
GColour[9]:= 16777215; //Gas Colour 09
GColour[10]:= 16777215; //Gas Colour 10
end;
procedure IP_OssibleSymbols;
begin
MSymbol[1] := BitmapFromString(6, 5, 'beNpzdNxy8CAQTVm4sKK1' +
'Nbe+DsgOTUpKyM3NLCsDciEIogCIgFIQcYguIOorcm1Ptgaqh3MLI' +
'rUTvCRMALHHL2g=');
MSymbol[2] := BitmapFromString(8, 4, 'beNo7eHDLQRDqK3ItiNSO' +
'sRSbsnAhEIUmJUEEE7w0Ai0FIIJAEaB4e7I1UNDFiB8uCBEHakdWC' +
'UUAM2Uxtw==');
MSymbol[3] := BitmapFromString(4, 3, 'beNpLSoqxFJuycCEQhSYl' +
'QRhbDh6EsIEMEBsATt8Txw==');
MSymbol[4] := BitmapFromString(9, 10, 'beNo7eHDLQSiasnBhRWt' +
'rbn0dXASIQpOSEnJzM8vKgOIQBGQjawEioBq4AiAXWXtfkWt7sjXE' +
'BLegIGTxgkjtBC8JE0dHoHa4FEQ8xlIMbjJECiie4KURaCkAEYc4D' +
'MgAGe6l4WLEDxeHSwHNQVaP7Ga4y5HFQQgAx+OVNw==');
end;
procedure LoadDTMS;
begin
ARune := DTMFromString('78DA6314606060606240019E8939609A11CA6' +
'7640312CCA86A8C9CBD50D5B00209165435FA0EEEA86A38895023' +
'0E24D851D5046497A3AA1106126CA86A2C7D4230CDE1405563E2E' +
'687AA861FD33D26CA6C286A003180071C');
AAddy := DTMFromString('78DA631462606060624001F6FEF6609A11CA6' +
'79406121CA86ACCDD2C50D5880209365435569E56A86A2431CDD1' +
'B7D64755C309245808A8E10512ACA86A742C7450D50861AAD1936' +
'74555C34E845DAC98E618D91BA1A801005B0B0660');
AMith := DTMFromString('78DA631462606060624001D61AEC609A11CA6' +
'7640512ACA86AF40DDC51D57062AAD1D5754655C34B841A6920C1' +
'85AAC6CC3C10558D08906027A0461C4870A0AA3132F222DD2E50F' +
'8B0A1AAB1B58D4655C34FD85F00055807A7');
ASteel := DTMFromString('78DA6314606060606240014D9515609A11CA6' +
'7640312ACA86A42FDFD51D53003091654355121C1A86A24800427' +
'0135C240821D554D5A7C3CAA1A014CF794E5E6A2AA1103121C04E' +
'C1204126CA86AF2D3D351D57011E177294C7FC16449091F00085A' +
'0C08');
AIron := DTMFromString('78DA63146460606061400126CA6C609A11CA6' +
'7640512ECA86AECAC2C51D54802096E026A84810427AA1A2F5757' +
'5435A2986A5CECED51D54801091E5435D6E666A86AC489700F179' +
'06023600E37A6DF31D4F011A14600538D9A140B8A1A006C5C0816');
ABronze := DTMFromString('78DA6314646060606440038C4824906605122' +
'C04D4700009565415C6EAE2A86A7831CDC150238CA926CE431B55' +
'8D1490E04455E3642C87AA460448B01350238EA9C6DB5209550D1' +
'F116EE627C2EF207FB1A1AA71335340510300E36B0601');
end;
procedure LoadExtraImages;
begin
GemMask := BitmapFromString(23, 24, 'z78DA3330183EC00D0C686732' +
'F10097AEC1E33BFC2EA77F08936AD7A84B465D428C8DA32E19750' +
'931F68EBA6434B50C45978CCC929F785B68ED1E52CDA76E9B90BA' +
'7E74A3180CFE3E0200FDE18F27');
//^^ Stolen off Sumilions Rimmington Miner :p Hope he's okay with that.
end;
function FindFastRandoms: Boolean; // By WT-Fakawi. Shortened by ME!
var
i: Integer;
begin
for I := 1 to 11 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: begin
if(InBlack)then
begin
Result := True;
Players[CurrentPlayer].loc := 'InBlack';
Logout;
Exit;
end;
end;
9 : if(RC)then Result := True;
10 : if(FindFight)then
begin
Result := True;
RunTo(Players[CurrentPlayer].Strings[2], Players[CurrentPlayer].Booleans[0]);
Wait(2000+Random(356))
RunBack(1, 4);
end;
11: if(FindTalk)then Result := True;
end;
Wait(1);
end;
end;
function GetAntiRandoms : Boolean;
var p : integer;
begin
for p:= 1 to 4 do
begin
case p of
1: FindFastRandoms;
2: FindNormalRandoms;
3: FindLamp(Players[CurrentPlayer].Strings[1]); //Middle of the script!
4: begin
if(not(FindPickHeadColor)) then FindPick;
end;
end;
end;
end;
function IP_DetectAxe: String;
begin
if(not(LoggedIn)) then Exit;
GameTab(5);
if(FindDTM(ABronze,x,y,556,282,615,333)) then
begin
MMouse(x,y,3,2);
Result:='AB';
end;
if(FindDTM(AIron,x,y,556,282,615,333)) then
begin
MMouse(x,y,3,5);
Result:='AI';
end;
if(FindDTM(ASteel,x,y,556,282,615,333)) then
begin
MMouse(x,y,3,3);
Result:='AS';
end;
if(FindDTM(AMith,x,y,556,282,615,333)) then
begin
MMouse(x,y,3,1);
Result:='AM';
end;
if(FindDTM(AAddy,x,y,556,282,615,333)) then
begin
MMouse(x,y,1,2);
Result:='AA';
end;
if(FindDTM(ARune,x,y,556,282,615,333)) then
begin
MMouse(x,y,2,3);
Result:='AR';
end;
if (not(Result='AB')) or (not(Result='AI')) or (not(Result='AS')) or (not(Result='AM')) or (not(Result='AA')) or (not(Result='AR')) then
begin
Result:='UW';
end;
GameTab(4);
end;
function IP_RandomRotate:Boolean;
begin
case random(5) of
0: begin
MakeCompass('N');
Writeln('Changed the compass to North');
Result:=True;
end;
1: begin
MakeCompass('S');
Writeln('Changed the compass to South');
Result:=True;
end;
2: begin
MakeCompass('E');
Writeln('Changed the compass to East');
Result:=True;
end;
3: begin
MakeCompass('W');
Writeln('Changed the compass to West');
Result:=True;
end;
4: begin
Writeln('Did not change the compass angle.');
Result:=True;
end;
end;
end;
procedure IP_RockWait;
begin
if(not(LoggedIn)) then Exit;
GetAntiRandoms;
case Random(15) of
0: RandomRClick;
1: GameTab(1+Random(7));
2: BoredHuman;
3: PickUpMouse;
4: AlmostLogOut;
5: RandomMovement;
6: HoverSkill('mining', False);
7: IP_RandomRotate;
8: AlmostLogout;
9: TypeSend('Oh My God!');
10: TypeSend('OMG!!!');
11: TypeSend('Mining is boring');
12: TypeSend('Mining is bworing.');
13: TypeSend('Mining is fun, yay!');
14: TypeSend('this TAkes forever...');
end;
GetAntiRandoms;
end;
var
LoadsDone, OresMined : Integer;
TotalOres, TotalLoads : Integer;
procedure IProgress;
begin
Writeln(' /======================================================\');
Writeln('| IP-owerMiner Progress Report |');
Writeln('| Created by IP-Drowner |');
Writeln('|--------------------------------------------------------|');
Writeln('| Current Players Report: |')
Writeln('| Player Name: '+Players[CurrentPlayer].Nick);
Writeln('| Loads Completed: '+IntToStr(LoadsDone));
Writeln('| Ore''s Mined: '+IntToStr(OresMined));
Writeln('| Current Mining Level: '+IntToStr(Players[CurrentPlayer].Level[15]));
Writeln('|--------------------------------------------------------|');
Writeln('| Total Players Progress Report |');
Writeln('| Script Run Time: '+TimeRunning);
Writeln('| Total Completed Loads: '+IntToStr(TotalLoads));
Writeln('| Total Ores Mined: '+IntToStr(TotalOres));
Writeln('| Player''s Being Used: '+IntToStr(HowManyPlayers));
Writeln('|--------------------------------------------------------|');
Writeln('| IP-owerMiner Progress Report |');
Writeln('| Created by IP-Drowner |');
Writeln(' \======================================================/');
end;
function SetSecondToMSec(IntNum: Integer): Integer;
begin
Result:=Players[CurrentPlayer].Integers[IntNum]*1000;
end;
procedure CaseRandom;
begin
if(not(LoggedIn)) then Exit;
case Random(2) of
0: begin
SendMouse(x+random(1),y+random(4),3,5);
Wait(451+Random(324))
SendClick(True);
end;
1: begin
MMouse(x+random(3),y+random(4),2,4);
Wait(412+Random(413))
Mouse(x+random(1),y+random(2),3,1,True);
end;
end;
end;
function FindColorsMulti(Color1, Color2, Color3, Color4, Color5, xs, ys, xe, ye, ToleranceLevel: Integer): Boolean;
begin
if(FindColorTolerance(x,y,Color1,xs,ys,xe,ye,ToleranceLevel)) or
(FindColorTolerance(x,y,Color2,xs,ys,xe,ye,ToleranceLevel)) or
(FindColorTolerance(x,y,Color3,xs,ys,xe,ye,ToleranceLevel)) or
(FindColorTolerance(x,y,Color4,xs,ys,xe,ye,ToleranceLevel)) or
(FindColorTolerance(x,y,Color5,xs,ys,xe,ye,ToleranceLevel)) then Result:=True;
end;
function IP_FindRock: Boolean;
begin
if(FindColorsMulti(RColour[1], RColour[2], RColour[3], RColour[4], RColour[5], 0, 0, 500, 700, IPOreTolerance)) then Result:=True;
end;
function IP_GetGas: Boolean;
var g, i: integer;
begin
for i:=1 to 10 do
begin
if(FindColorTolerance(x,y,GColour[i],0,0,515,339,IPGasTolerance)) then g:=g+1;
end;
if(g>=5) then Result:=True;
end;
function IP_GetGems: Boolean;
begin
if(FindBitmapToleranceIn(GemMask,x,y,563,212,735,459,1)) then Result:=True;
end;
procedure IP_DropOres;
begin
if(not(LoggedIn)) then Exit;
if(IP_DetectAxe='UW') then
begin
DropToPosition(2,28);
LoadsDone:=LoadsDone+1;
OresMined:=OresMined+27;
ReportVars[0]:=ReportVars[0]+1;
ReportVars[1]:=ReportVars[1]+27;
end;
if(not(IP_DetectAxe='UW')) then
begin
DropAll;
LoadsDone:=LoadsDone+1;
OresMined:=OresMined+28;
ReportVars[0]:=ReportVars[0]+1;
ReportVars[1]:=ReportVars[1]+28;
end;
end;
procedure WalkToSymbol; forward;
procedure IP_MineOres;
begin
if(not(LoggedIn)) then Exit;
IP_DropOres;
if(IP_FindRock) then
begin
Mouse(x,y,3,5,True);
GetMousePos(x, y);
Wait(400+Random(800))
IP_RockWait;
if(IP_GetGas) or (FindGas(x, y)) then
begin
case Random(2) of
0: begin
WalkToSymbol;
Writeln('Found attempted gas. Walking to mining symbol.');
end;
1: begin
if(FindColorTolerance(x,y,16777215,648,82,648,84,1)) then
begin
CaseRandom;
Writeln('Found attempted gas. Moving away.');
end;
end;
end;
if(IP_GetGems) then
begin
ReportVars[2]:=ReportVars[2]+1;
end;
end;
Wait(SetSecondToMSec(1));
end;
IP_DropOres;
end;
procedure WalkToSymbol;
var w: integer;
begin
if(not(LoggedIn)) then Exit;
for w:=1 to 4 do
begin
if(FindBitmapToleranceIn(MSymbol[w],x,y,548,5,730,157,3)) then
begin
CaseRandom;
end;
end;
IP_MineOres;
end;
procedure GetCompassChange(Angle: String);
begin
case LowerCase(Angle) of
'n' : if(FindCompassAngle=0) then Writeln('Compass Angle is already at specified point.') else MakeCompass('n');
's' : if(FindCompassAngle=180) then Writeln('Compass Angle is already at specified point.') else MakeCompass('s');
'w' : if(FindCompassAngle=90) then Writeln('Compass Angle is already at specified point.') else MakeCompass('w');
'e' : if(FindCompassAngle=270) then Writeln('Compass Angle is already at specified point.') else MakeCompass('e');
end;
end;
procedure SetupScript;
begin
LoadsDone := 0;
TotalLoads := 0;
OresMined := 0;
TotalOres := 0;
LoadDTMS;
LoadExtraImages;
IP_OssibleSymbols;
SetupSRL;
DeclarePlayers;
ScriptID:='582';
ActivateClient;
Wait(1261+Random(761));
if(not(LoggedIn)) then LoginPlayer;
if(not(LOggedIn)) then ReportVars[4]:=ReportVars[4]+1;
NickNameBMP := CreateBitmapMaskFromText(Players[CurrentPlayer].Nick, UpChars)
if(not(LoggedIn)) then Wait(1000+Random(497))
GetCompassChange('n');
Wait(100+Random(249))
HighestAngle;
Wait(10+random(159))
IP_DetectAxe;
Wait(812+Random(321))
end;
procedure BasicLoop;
begin
IP_MineOres;
if(not(LoggedIn)) then NextPlayer(False);
if(LoadsDone=Players[CurrentPlayer].Integers[0]) then
begin
LogOut;
TotalLoads:=TotalLoads+LoadsDone;
LoadsDone:=0;
Players[CurrentPlayer].Active := False;
NextPlayer(False);
ReportVars[3]:=Reportvars[3]+1;
NickNameBMP := CreateBitmapMaskFromText(Players[CurrentPlayer].Nick, UpChars)
end;
SRLRandomsReport;
IProgress;
end;
function GetActivePlayers: Boolean;
var p, v: integer;
begin
for p:=CurrentPlayer to HowManyPlayers-1 do
begin
if(Players[p].Active=False) then v:=v+1;
end;
if(v=p) then Result:=True;
end;
procedure FreeEverything;
begin
FreeDTM(ARune);
FreeDTM(AAddy);
FreeDTM(AMith);
FreeDTM(ASteel);
FreeDTM(AIron);
FreeDTM(ABronze);
FreeBitmap(MSymbol[1]);
FreeBitmap(MSymbol[2]);
FreeBitmap(MSymbol[3]);
FreeBitmap(MSymbol[4]);
end;
begin
SetupScript
repeat
BasicLoop;
Until(GetActivePlayers);
FreeEverything;
IProgress;
Wait(1000)
Writeln('Thanks you for using my script :)');
Writeln('Please post the above progress report where you got this');
Writeln(' this script from.');
end.