SCAR Code:
{=========================================================================]
[ ~dushii's water rune crafter~ ]
[ ~Version: 0.1~ ]
[=========================================================================]
|~Description: |
| A script that crafts waterrune | |
|~Instructions: |
| 1. Set the Runescape brightness to V-bright, |
| 2. Set the Runescape quality to LOW, |
| 3. Need SCAR version 3.11 |
| 4. Need SRL version 4. |
| 5. Setup Lines 30-37. |
| 6. All players must be in draynorbank. |
| 7. Start with a water tiara wielded. |
| 8. have your essence in he first bank slot | |
| |
| |
| |
[=========================================================================]
| |
| |
| |
[=========================================================================}
program New;
{.Include SRL/SRL.SCAR}
procedure DeclarePlayers;
begin
HowManyPlayers := 1; //Number of players
NumberOfPlayers(HowManyPlayers);
CurrentPlayer:= 0;
Players[0].Name :='';
Players[0].Pass :='';
Players[0].Nick :='';
Players[0].Active:=True;
end;
////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
function RadialToleranceWalk(TheColor: Integer; StartRadial, EndRadial: Integer;
Radius: Integer; Xmod, Ymod, Tol: Integer): Boolean; // By Wizzup? and WT-Fakawi.
var
i, X1, Y1, x, y: Integer;
begin
if (RoadColorChecker) then
if (DebugRadialRoad) then
WriteLn(' THROUGH RADIALROADWALK= ---> ' + IntToStr(RoadColor));
if (StartRadial = EndRadial) then
begin
WriteLn('Using LinearRoadWalk, equal values.')
if LinearRoadWalk(TheColor, StartRadial, Radius, Xmod, Ymod) then
Result := True;
end
else if (StartRadial < EndRadial) then
begin
repeat
for i := StartRadial to EndRadial do
begin
x1 := Round(Radius * Sine(i)) + 646;
y1 := Round(-Radius * Cose(i)) + 84;
if (FindColorTolerance(x, y, TheColor, X1, Y1, X1 + 1, Y1 + 1, Tol)) then
begin
MouseFindNoFlag(X,Y,Xmod,Ymod);
Result := True;
CountFlag(10);
Exit;
end;
end;
Radius := Radius - 4;
until (Radius <= 1);
end else
if (StartRadial > EndRadial) then
begin
repeat
for i := StartRadial downto EndRadial do
begin
x1 := Round(Radius * Sine(i)) + 646;
y1 := Round(-Radius * Cose(i)) + 84;
if (FindColorTolerance(x, y, TheColor, X1, Y1, X1 + 1, Y1 + 1, Tol)) then
begin
MouseFindNoFlag(X,Y,Xmod,Ymod);
Result := True;
CountFlag(10);
Exit;
end;
end;
Radius := Radius - 4;
until (Radius <= 1);
end
end;
procedure WithdrawRuneEssence;
var RuneEssence: Integer;
x1, y1: Integer;
begin
if (not (LoggedIn)) or (InvFull) then
begin
Exit;
end;
RuneEssence := DTMFromString('78DA634C626060506100036608C5101F19C92' +
'007A41981F83F1030660319D2A86AA67675C1D58000630A903040' +
'55E3EEE484AA260C48281250130124B451D538DAD8A0AAC90712A' +
'AA86A1A2B2A50D400006E2C0E77');
if (FindDTM(RuneEssence, x1, y1, 45, 30, 115, 95)) then
begin
Mouse(x1, y1, 1, 1, false);
if (chooseOption('All')) then
wait(1000 + random(100));
end;
FreeDTM(RuneEssence);
wait(100+random(50));
end;
////////////////////////////////////////////////////////////////////////////////
///////////////////////////////starts walking ect.//////////////////////////////
////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
procedure walktoaltar;
begin
FindroadColor;
findwatercolor;
RadialroadWalk(roadColor, 120, 110, 70, -15, 5);
WriteLn('left bank');
flag;
RadialRoadWalk(RoadColor, 165, 120, 60, 2,2);
WriteLn('Clicked 0');
flag;
RadialRoadWalk(RoadColor, 175, 120, 70, 1, 1);
WriteLn('Clicked 1');
flag;
RadialWalk(waterColor, 110, 90, 60, 1, 1);
WriteLn('Clicked 2');
flag;
RadialToleranceWalk(1798225, 135, 110, 70, 1, 1, 30)
WriteLn('Clicked 3');
flag;
RadialToleranceWalk(1797211, 120, 150, 70, 1, 3, 30)
WriteLn('Clicked 4');
flag;
RadialToleranceWalk(2385980, 150, 120, 61, 1, 1, 30)
WriteLn('Clicked 5');
flag;
RadialToleranceWalk(2245196, 110, 130, 60, 2, 1, 30)
WriteLn('Clicked 6');
flag;
RadialToleranceWalk(2245196, 160, 130, 30, 2, 1, 30)
WriteLn('Clicked 7');
flag;
RadialToleranceWalk(5529634, 120, 140, 25, 2, 1, 30)
WriteLn('Clicked 8');
flag;
end;
Procedure OpenBankBooth;//from rogeruk's Oakbanker edit a lil bit
var
x, y, BoothDTM, QBankDTM : integer;
z : extended;
begin
HighestAngle;
makecompass ('W')
QBankDTM := DTMFromString('78DA63FCCBC0C070890105FCFFFF1F4C33023' + '11788E603B2AEE15603A69F301056F31C489C23A04601C8BACC80' + '15C0D59803596719D00D4255E38FE9E6D810775435518C187EC73' + '0470BC8BA45C0CD6C44A879C880E1667435001FFF2803');
BoothDTM := DTMFromString('78DA6364666460A8634001D5B9610C22401A2' + '8C3F01F08185981AC62543556A6A60C1A503520C0F8074814A0AA' + 'F1B7E1809B0356C3C348580D1FA67BEA0A2251D5FC021235A86A5' + 'A4AC231D5B4A3AA494888467533C83DAD686A224251D53001597D' + '04DCFC9381B01A3E22CC6103B2BA08B8E73F90E8C4AF060048511' + 'CE0');
x:= 600;
y:= 100;
if findDTMRotated(BoothDTM, x, y, 0, 0, 514, 336, 0, 360, 0.5, z)then
begin
mouse(x, y, 10, 10, false);
wait(500 + random(500));
if findDTM(QBankDTM, x, y, x - 200, y - 200, x + 200, y + 200)then
begin
mouse(x - 20, y - 2, 80, 4, true);
CountFlag(0);
wait(1000 + random(1500));
end;
if not getcolor(249, 40) = 2070783 then
exit;
writeln('Found booth successfully');
begin
If pinscreen Then InPin('PlayerPin');
Deposit(1, 28, 2);
WithdrawRuneEssence;
CloseBank;
makecompass ('N')
end;
repeat
wait(500 + random(500));
makecompass ('N')
until (not BankScreen);
end
else
begin
writeln('Omg error with finding booth!');
end;
end;
////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
procedure FindAltar;
var
x, y : Integer;
begin
repeat
If FindObj(X, Y, 'ruins', 5266277, 5) Then // Case Sensitive!
begin
MMouse(X,Y,0,0)
writeln('Entering');
Flag;
Wait(500 + Random(350)); end;
until (FindObj(X, Y, 'ruins', 5266277, 5));
begin Mouse(x, y, 0, 0,True);
Wait(150 + Random(350));
ChooseOption('Enter');
flag;
wait(2000+random(500))
end;
end;
procedure CraftAndTele;
var
x,y :integer;
begin
wait(2000+random(500))
RadialToleranceWalk(1665632, 290, 330, 50, 1, 1, 30);
begin
If FindObj(X, Y, 'raft', 5659999, 30) Then
begin
Mouse(x,y,0,0,true)
Wait(500+random(200))
if(IsUpText('raft'))then
begin
GetMousePos(x,y)
Writeln('Crafted runes')
end;
end;
end;
Wait(500+random(200))
begin
findwatercolor;
RadialWalk( watercolor , 120, 85, 70, 0, 0);
flag;
Wait(800+random(200))
begin
If FindObj(X, Y, 'ortal', 13942453, 30) Then
wait(500)
begin
Mouse(x,y,5,5,true)
Wait(500+random(200))
flag;
if(IsUpText('port'))then
Wait(1000+random(200))
begin
GetMousePos(x,y)
Writeln('teleporting ')
flag;
wait(2000+random(500))
end;
end;
end;
end;
end;
////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
procedure walktobank;
begin
Wait(1000+random(200))
flag;
RadialToleranceWalk(3166312, 310, 340, 70, 1, 1, 30);
flag;
RadialToleranceWalk(2383906, 300, 340, 70, 1, 1, 30);
flag;
RadialToleranceWalk(1598565, 270, 290, 70, 1, 1, 30);
flag;
findwatercolor;
RadialWalk(watercolor, 270, 330, 60, 1, 1);
flag;
RadialWalk(watercolor, 310, 360, 50, 1, 1);
Wait(1000+random(200))
RadialWalk(watercolor, 310, 360, 70, -5, -5);
Wait(1000+random(200))
flag;
findroadcolor;
RadialRoadWalk(RoadColor, 280, 350, 70, 1, 1);
flag;
RadialroadWalk(roadcolor, 310, 360, 75, 1, 1);
flag;
RadialRoadWalk(RoadColor, 340, 360, 70, 1, 1);
flag;
RadialRoadWalk(RoadColor, 260, 290, 60, 1, 1);
flag;
end;
////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
begin
SetUpSRL;
DeclarePlayers;
LoginPlayer;
HighestAngle;
OpenBankBooth
walktoaltar;
findaltar;
craftandtele;
walktobank;
end.