SCAR Code:
program UltimateRuneBuyer;
{.include SRL/SRL.scar}
{.include SRL/SRL/Misc/Amount.scar}
{.include SRL/SRL/Misc/Playerform.scar}
{This script will buy runes from the squire at pest control, from aubry
in varrock, or from betty in port sarim. It will then SWITCH WORLDS
and buy from a full shop. If you have any suggestions please
pm me, I'd appreciate it. Written and tested in SCAR 2.03.
-----------SETUP------------
1. Station the account with money at Aubry, Betty, or the Squire.
2. Complete the simple setup on lines 28-37
3. Run the script (push the green play button) and fill out the form
-Username
-Password
-3-4 letters from your name (for anti-random detection)
-*Location (leave this blank)
-Skill to raise if you get a genie
4. Push OK.
Credits
SoupyBastrd and the rs-resources community
SRL-Forums.com for making SRL
}
const
Version = '2.2';//version number, don't change
Shop = 'Aubry'; //Buy from Betty, Aubry, or Squire?
Chaos = 'True'; //Put true for the runes you want to buy
Death = 'True';
Mind = 'False';
Body = 'False';
Air = 'False';
Water = 'False';
Earth = 'False';
Fire = 'False';
TimeToBuy = 5; //Number of minutes you want to buy runes
var xx, yy, time:integer;
Function FindSquire:Boolean;
begin
wait(100+random(300));
if(findobj3(xx,yy,'Sq',1586243,5))then
begin
Mouse(xx,yy,2,2,False);
chooseoption(x,y,'Trade');
flag;
wait(2000+random(400));
if(ShopScreen)then
begin
Result := True;
end
end
else
Begin
Result := False;
end;
end;
Function FindBetty:Boolean;
begin
wait(100+random(300));
if(findobj3(xx,yy,'Bet',6359394,5))then
begin
Mouse(xx,yy,2,2,False);
chooseoption(x,y,'Trade');
flag;
wait(2000+random(400));
if(ShopScreen)then
begin
Result := True;
end
end
else
Begin
Result := False;
end;
end;
Function FindAubry:Boolean;
begin
wait(100+random(300));
if(findobj3(xx,yy,'Aub',1754335,4))then
begin
Mouse(xx,yy,3,3,False);
chooseoption(x,y,'Trade');
flag;
wait(2000+random(400));
if(ShopScreen)then
begin
Result := True;
end
end
else
Begin
Result := False;
end;
end;
Procedure AntiRandoms;
begin
if(InBlack)then
begin
Logout;
end;
FindLamp(LampSkill);
FindNormalRandoms;
SRLRandomsReport;
end;
Procedure FindShop;
var Zuchinni, carrot, mushroom: integer;
begin
if(Shop = 'Squire') then
begin
MarkTime(Zuchinni)
repeat
wait(50)
AntiRandoms;
If(TimeFromMark(Zuchinni)>2*60000)then
begin
WriteLn('Could not find Squire')
LogOut;
TerminateScript;
end;
until(FindSquire)
end;
if(Shop = 'Betty') then
begin
MarkTime(carrot)
repeat
wait(50)
AntiRandoms;
If(TimeFromMark(carrot)>2*60000)then
begin
WriteLn('Could not find Betty')
LogOut;
TerminateScript;
end;
until(FindBetty)
end;
if(Shop = 'Aubry') then
begin
MarkTime(mushroom)
repeat
wait(50)
AntiRandoms;
If(TimeFromMark(mushroom)>2*60000)then
begin
WriteLn('Could not find Aubry')
LogOut;
TerminateScript;
end;
until(FindAubry)
end;
end;
//RuneBuying Procedures
Procedure BuyFire;
begin
If(Fire = 'True') then
begin
If(((RuneAmount('shop','fire')) < 3500))then Exit;
Repeat
wait(10);
mouse(93,84,5,5,False);
wait(100+random(300));
mouse(93,158,6,6,True);
wait(100+random(300));
Until((RuneAmount('shop','fire')) < 3500);
end;
end;
Procedure BuyAir;
begin
If(Air = 'True') then
begin
If(((RuneAmount('shop','air')) < 3000))then Exit;
Repeat
wait(10);
mouse(187,87,5,5,False);
wait(100+random(300));
mouse(190,158,6,3,True);
wait(100+random(300));
Until((RuneAmount('shop','air')) < 3000);
end;
end;
Procedure BuyBody;
begin
If(Body = 'True') then
begin
If(((RuneAmount('shop','body')) < 3270))then Exit;
Repeat
wait(10);
mouse(330,87,5,5,False);
wait(100+random(300));
mouse(325,158,6,3,True);
wait(120+random(300));
Until((RuneAmount('shop','body')) < 3270);
end;
end;
Procedure BuyEarth;
begin
If(Earth = 'True') then
begin
If(((RuneAmount('shop','earth')) < 3270))then Exit;
Repeat
wait(10);
mouse(235,87,5,5,False);
wait(100+random(300));
mouse(230,155,6,3,True);
wait(120+random(300));
Until((RuneAmount('shop','earth')) < 3270);
end;
end;
Procedure BuyWater;
begin
If(Water = 'True') then
begin
If(((RuneAmount('shop','water')) < 3270))then Exit;
Repeat
wait(10);
mouse(142,87,5,5,False);
wait(100+random(300));
mouse(149,158,6,3,True);
wait(120+random(300));
Until((RuneAmount('shop','water')) < 3270);
end;
end;
Procedure BuyMind;
begin
If(Mind = 'True') then
begin
If(((RuneAmount('shop','mind')) < 10))then Exit;
Repeat
wait(10);
mouse(282,85,10,10,False);
wait(50+random(150));
mouse(280,155,40,4,True);
wait(50+random(150));
Until((RuneAmount('shop','mind')) < 10);
end;
end;
Procedure BuyChaos;
begin
If(Chaos = 'True') then
begin
If(((RuneAmount('shop','chaos')) < 10))then Exit;
Repeat
wait(20);
mouse(380,87,10,10,False);
wait(100+random(300));
mouse(385,158,30,3,True);
wait(100+random(300));
Until((RuneAmount('shop','chaos')) < 10);
end;
end;
Procedure BuyDeath;
begin
If(Death = 'True') then
begin
If(((RuneAmount('shop','death')) < 10))then Exit;
Repeat
wait(10);
mouse(420,87,5,5,False);
wait(100+random(300));
mouse(415,158,6,3,True);
wait(100+random(300));
Until((RuneAmount('shop','death')) < 10);
end;
end;
Procedure Done;
begin
Mouse(488,44,2,2,True);
wait(300+random(300));
Logout;
End;
Procedure SwitchWorlds;
begin
Mouse(53,484,10,10,True);
end;
Procedure SortWorlds;
begin
Mouse(412,11,2,2,True);
wait(300);
Mouse(632,10,2,2,True);
end;
Procedure PickAFreeWorld;
begin
If(Shop = 'Betty') or (Shop = 'Aubry')then
begin
if(findcolortolerance(xx,yy,9013641,65+ random(170),37+random(300),272,419,1))then
begin
Mouse(xx,yy,3,3,True);
Wait(1000);
end;
end;
end;
Procedure PickAMembersWorld;
begin
if(Shop = 'Squire')then
begin
if(findcolortolerance(xx,yy,1419709,65+ random(170),37+random(300),272,419,5))then
begin
Mouse(xx,yy,0,0,True);
Wait(2000);
end;
end;
end;
Procedure Greet;
begin
WriteLn('@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@')
WriteLn('@ Thank you for using alach11s RuneBuyer. Thanks to @')
WriteLn('@ Soupybastrd for writing a members runebuyer which @')
WriteLn('@ I used to make this. Please cheat responsibly. :) @')
WriteLn('@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@')
end;
begin
MarkTime(time);
SetupSRL;
SetupPlayers;
Greet;
repeat
LoginPlayer;
wait(1000)
AntiRandoms;
FindShop;
BuyFire;
BuyAir;
BuyMind;
BuyChaos;
BuyDeath;
BuyWater;
BuyBody;
BuyEarth;
Done;
SwitchWorlds;
SortWorlds;
PickAFreeWorld;
PickAMembersWorld;
Until(TimeFromMark(time) > (TimeToBuy*60000));
end.