SCAR Code:
Program RyasPowerMiner;
{.include SRL/SRL.scar}
Var x, y, Rock, FailedFinding, W, OreDTM, InvC, ha, LoadsDone, tt, ab:integer;
procedure DeclarePlayers;
begin
HowManyPlayers := 1;
NumberOfPlayers(HowManyPlayers);
CurrentPlayer := 0;
Players[0].Name := '';
Players[0].Pass := '';
Players[0].Nick := '';
Players[0].Active := True; // Use this account??
Players[0].Integers[1]:= 100; // How many Loads
Players[0].Booleans[0]:= false//Is the pixaxe in the inv
Players[0].strings[0]:='iron';//what ore?? copper tin iron gold
Players[0].Strings[1]:='true';//Is pixaxe in inv
End;
{Procedure CheckLevels;
Begin
End;}
Procedure AskLevels;
Begin
Inc(tt);
Case Random(40) of
0: TypeSend('Mining Lvls');
1: TypeSend('Lvls');
2: TypeSend('Whats your minning lvls');
3: Begin
TypeSend('Woodcutting Lvls?');
TypeSend('soz Mining Lvls?');
End;
4: TypeSend('mining lv');
5: TypeSend('Who has the best minning lvl?');
6: TypeSend('Whats every body minning?');
End;
End;
Procedure RandomTalk;
Begin
Inc(tt);
Case Random(30) of
0: TypeSend('I cant wait to mine faster');
1: TypeSend('I like the mining skill cape');
2: TypeSend('Why does levevling mining take for ever');
3: TypeSend('Someone told me this was the best way to level up but it takes for ever');
End;
End;
Procedure AntiRandoms;
Begin
SolveNonTalkingRandoms;
FindTalk;
FindNonInventoryRandoms;
If FindBox then
SloveBox;
SolveSandWich;
End;
Procedure AntiBan;
Begin
Inc(ab);
Case Random(100) of
0..9: HoverSkill('Random', false);
10..14: PickUpMouse;
15..29: BoredHuman;
30: AskLevels;
31..40: RandomRClick;
41..49: RandomMovement;
50..79: Wait(5000+random(5000));
80..99: MMouse(230,230,500,500);
100: RandomTalk;
End;
End;
Procedure SetRocks;
Begin
OreDTM := DTMFromString('78DA6374636660E06562400646B262609A11C' +
'A673401AA114155039385AB0902AAE123A0C605A8469A801A07A0' +
'1A36026AEC8830C71FA84614BF1A00C0AF02FA');
End;
procedure Drop;
Var i:integer;
begin
Inc(LoadsDone);
case lowercase(Players[CurrentPlayer].Strings[1]) of
'false': begin
DropAll;
end;
'true': begin
for i:= 2 to 28 do
DropItem(i);
end;
end;
AntiBan;
AntiRandoms;
end;
Procedure AreWeStillMining;
Begin
// InvC := CountItems;
AntiBan;
// While (InvC = CountItems) do
Wait(600+random(600));
End;
Procedure CheckForMine;
Begin
End;
Procedure MineRock;
Begin
If (not LoggedIn) then
Exit;
Repeat
SetRocks;
If FindColorSpiralTolerance(x, y, Rock, MSX1, MSY1, MSX2, MSY2, 39) Then
Begin
MMouse(x,y,5,5);
AntiBan;
If IsUpTextMultiCustom(['Rock', 'ock', 'ck']) Then
If (Random(7)=4) then
Begin
Mouse(x,y,0,0,True);
End Else
Begin
Mouse(x,y,0,0,False);
ChooseOption('ine');
End;
AreWeStillMining;
AntiBan;
If not(FindColorSpiralTolerance(x, y, Rock, MSX1, MSY1, MSX2, MSY2, 39)) Then
W := 0;
Repeat
AntiBan;
Wait(400+random(300));
Inc(W);
Until (FindColorSpiralTolerance(x, y, Rock, MSX1, MSY1, MSX2, MSY2, 39)) or (W = 10);
If (W = 10) then
While not (FindColorSpiralTolerance(x, y, Rock, MSX1, MSY1, MSX2, MSY2, 39)) Do
CheckForMine;
End;
Until (InvFull)
If (InvFull) Then
Inc(loadsDone);
End;
Procedure Intro;
Begin
Writeln(' __________ ____ ______ _______ ');
Wait(75);
Writeln(' | | \ \ / / / \ ');
Wait(75);
Writeln(' | ____ | \ \ / / / __ \ ');
Wait(75);
Writeln(' | | | | \ \ / / / / \ \ ');
Wait(75);
Writeln(' | |___| \ \ \ / / / / \ \ ');
Wait(75);
Writeln(' | _____ \ \ \/ / / /______\ \ ');
Wait(75);
Writeln(' | | \ \ \ / / / \ \ ');
Wait(75);
Writeln(' | | \ \ \ / / / \ \ ');
Wait(75);
Writeln(' | | \ \ \ / / / \ \ ');
Wait(75);
Writeln(' |_| \ __\ / / /___/ \___\ ');
Wait(75);
Writeln(' / / ');
Wait(75);
Writeln(' / / ');
Wait(75);
Writeln(' / / ');
Wait(75);
Writeln(' /____/ __ ______ ');
Wait(75);
Writeln(' _ || / ___ \ ');
Wait(75);
Writeln(' |_| _____ | / / \ \ ');
Wait(75);
Writeln(' _ /\ / / / ___ \ | | \__\ ');
Wait(75);
Writeln(' /\ /\ | | / \ / / / /____\\ | | ');
Wait(75);
Writeln(' //\\ //\\ | | //\ \ / / / ________\ | | ');
Wait(75);
Writeln(' // \\ // \\ | | // \ \ / / / / | | ');
Wait(75);
Writeln(' // \\ // \\ | | // \ \ / / | /______ | | ');
Wait(75);
Writeln(' // \\// \\ |_| // \ \/ / \_______\ |__| ');
Wait(75);
Writeln(' Please Post Progys and Bugs ');
Wait(75);
Writeln(' Have Fun Mining ');
Wait(75);
Writeln(' Rya ');
Wait(1000);
End;
Procedure Proggy;
begin
ClearDebug;
Writeln('{===========================================}');
Writeln('{===== Time Running : ' + TimeRunning + ' =========}');
Writeln('{===== Rocks Mined : ' + IntToStr(Loadsdone*27) + ' =================}');
Writeln('{===== Loads Done : ' + IntToStr(LoadsDone) + ' =================}');
Writeln('{===== Times Talked : ' + IntToStr(tt) + ' =================}');
Writeln('{===== AntiBan used ' + IntToStr(ab) + ' times ===============}');
Writeln('{===== Please Proggys to get things updated}');
Writeln('{============================================}');
end;
Procedure ScriptTerminate;
Begin
Proggy;
Logout;
End;
begin
SetupSRL;
declareplayers;
cleardebug; }
Intro;
if(not(loggedin))then
Loginplayer;
Repeat
MineRock;
Drop;
Until (LoadsDone = (Players[CurrentPlayer].Integers[1]));
LogOut;
Proggy;
end.
How can i make it shorter