SCAR Code:
{ //-------------------------------------------------------------\\
|| INSTRUCTIONS ||
||-------------------------------------------------------------||
|| BY: Kooldude ||
|| ||
|| 1. Axe Wielded! ||
|| 2. Start Next To Oak East of Draynor Bank! ||
|| 3 Setup Lines are 24, 66 ||
|| 4. Drag Crosshair into RS window. ||
|| 5. Hit play and fill out forms. ||
|| ||
||-------------------------------------------------------------||
|| INSTRUCTIONS ||
\\-------------------------------------------------------------//
}
program RayzOakBanker;
{.include srl/srl.scar}
{.include srl/srl/skill/Woodcutting.scar}
var
OakBit: integer;
OakLog: integer;
Banker: integer;
const
BankColor =
////////////////declaring Players////////////////////////
procedure DeclarePlayers;
begin
HowManyPlayers := 6; //Number of PLAYERS. active or not.
NumberOfPlayers(HowManyPlayers);
CurrentPlayer := 0; //Player to start on.
//set all user names, passwords and nicks correctly please.
Players[0].Name := 'Username';
Players[0].Pass := 'Password';
Players[0].Nick := 'dsev';
Players[0].Active := True;
Players[1].Name := 'UserName';
Players[1].Pass := 'Password';
Players[1].Nick := '3-4 letters of UserName';
Players[1].Active := False;
Players[2].Name := 'UserName';
Players[2].Pass := 'Password';
Players[2].Nick := '3-4 letters of UserName';
Players[2].Active := False;
Players[3].Name := 'UserName';
Players[3].Pass := 'Password';
Players[3].Nick := '3-4 letters of UserName';
Players[3].Active := False;
Players[4].Name := 'UserName';
Players[4].Pass := 'Password';
Players[4].Nick := '3-4 letters of UserName';
Players[4].Active := False;
Players[5].Name := 'UserName';
Players[5].Pass := 'Password';
Players[5].Nick := '3-4 letters of UserName';
Players[5].Active := False;
NickNameBMP := CreateBitmapMaskFromText(Players[CurrentPlayer].Nick, UpChars);
end;
////////////////////////////BitMaps///////////////////////
Procedure BitmapsAndDMTs;
OakBit := BitmapFromString(29, 1, '38401E48502A60604430380C' +
'50602C60702E58603660703850603030401B28301A30381A50601' +
'A50581828301A38481A5860186060365860184850264850163840' +
'2428281B30381A40481A48502650583050603030380A');
OakLog := DTMFromString('78DA6314666060106440017921460CBF80342' +
'310FF0702460E20831B554DAEBF2A986684F21959808418013520' +
'794954355D59F6A86AA481043FAA9AEC200354352033D850D5843' +
'9A9A3AA910712A2A86A1A93AD50D40000FCCF0CB5');
Banker := BitmapFromString(33, 27, 'z78DAED576DAEE3200CBC12' +
'5FB6E12721E4FE475A97A192235EDE4AEDBEDD465A50472922C98' +
'C196CE2DCFF76A7C69583F605638D14E906FC1B27ED572A248678' +
'427B2F1D54B40FE4488D1AF0EFAB10C79933F04A4BF2B1C576E23' +
'CC6D77B2953D01E53D35E13691FB8BE37490ADA0DBEA522F0C69B' +
'10EFBC4F56BBE86381B493681F68C7E75D87B0768B5084F5050A7' +
'B3ABEC7D4534E191C5E54217C7097225E9ED7E0B34994B0623DB2' +
'70C275F69225034F71B05A3A3FDA8A833FB9B4A58AB543645E540' +
'18626CE276E56C550D77279FCB333A354ED9833F84F565084C82C' +
'38FDB93D4C071FBEA5027C0693C98AA549FB0D1AFE7664AA8003A' +
'F5C3770AED4C80676FE6B2A2613C413EFB538E276E23F66362E3A' +
'7BE7BA65066AD0BB4C47C12DD3636635BFF01851A71D5A70EF6B2' +
'A48F7952B2BA61E8F27CEC80F9ED0A2AF2FAED42407F5964A16BF' +
'B5E2B901674CE09FA1657A06BB6FC1A9FA0D156845234569CBF9E' +
'0FA85EB8C1372C9FA1FA84E08AE80B96659766545F09C2AACAFCC' +
'1EC1BAFC0115AC5995F75459FA65367EE65E656EB1BBBD75B78E4' +
'F440579D691A4230BDA757F4B85EE00CA88EA6536C61EC12EB6B5' +
'C3A2CDB4DFD6F1DD55AF256820DEFEE3F5FD8AF39A0D1644FE599' +
'F09F76E316F2C70C20F9EB2460EB9CAF9F0F3E95CA1A7C7E0A924' +
'1F2AF073CEBAB6A259BC3AFF10C71EB2C57FAC02D903D97E3925D' +
'EE5BB633ADC562E54DB71FEB98D0ABB178C976EF60D684F0BF0D2' +
'A8B377E1AF35A884089CA71D83775141FACD1DD8A2FEAA6FF7F29' +
'2CDF99F93F9DFE19F2806DF6FAC627849AFFA4D557C4CE545FB05' +
'D88A24B9');
end;
/////////////////////Oak Cutting/////////////////////////
Procedure OakCutting;
var
x, y: Integer;
begin
if FindBitmap(Oakbit, x, y, 2, 2) then
begin
Writeln('Found Oak!')
Mmouse(x, y, 1, 1, True)
if(IsUpText('illow'))then
begin
Mouse(x,y,2,2,true)
Writeln('Clicked Tree!')
Until(InventoryFull)
end;
/////////////////Banking////////////////////
Procedure OakBanking;
var
x, y, m , n: Integer;
begin
If FindColorTolerence(m, n, BankColor, 546, 5, 746, 161, 2) then
Mouse(m, n, 2, 2, true)
Flag;
if FindbitMap(Banker, x, y, 2, 2) then
begin
Mouse(x, y, 1, 1, False)
bank:= FindBitmapMaskFromText('Bank' upchars);
if (FindBitmapMaskTolerance(bank, MX1, MY1, MX2, MY2, 2, 2)) then
MMouse(MX, MY, 1, 1, true)
repeat
findinvdtm(oaklog,x,y);
mouse(x,y,1,1,false);
popup('all');
until(findinvdtm(oaklog,x,y)=false);
if(not(LoggedIn))then
Exit;
end;
end;
/////////////////Ent//////////////////// <--- Credits goto _Charm Willow raper
Function CharmEnt(ex, ey: Integer): Boolean;
Var
Xe, Ye: Integer;
Begin
Status('FindEnt');
If(FindColorSpiralTolerance(Xe, Ye, 5535856, ex - 20, ey - 20, ex + 20, ey + 20, 12))then
Begin
MMouse(Xe, Ye, 5, 5);
Wait(100+Random(50));
End else
Begin
Exit;
End
If(IsUpTextMulti('hop down Will', 'down Willow', 'own Wil')) or (IsUpTextMulti('illow', 'low', 'Will'))then
Begin
If(FindColorSpiralTolerance(Xe, Ye, 383705, 1, 1, 180, 39, 20))or
(FindColorSpiralTolerance(Xe, Ye, 65535, 1, 1, 200, 40, 20))or
(FindColorTolerance(Xe, Ye, 55769, 85, 15, 115, 15, 20))then
Begin
EntsAvoided:= EntsAvoided + 1;
Result:= True;
End else
Result:= False;
Exit;
End
End;
//////////////AntiRandoms Wt-Fawki////////////////////
function FindNormalRandoms: Boolean;
var
i: Integer;
begin
for i := 1 to 16 do
begin
case I of
1: CloseWindow;
2: if FindTalk then
Result := True;
3: if FindDead then
Result := True;
4: if FindMod then
Result := True;
5: if FindMime then
Result := True;
6: if FindMaze then
Result := True;
7: if FindQuiz then
Result := True;
8: if FindDemon then
Result := True;
9: if FindScapeRune then
Result := True;
10: if FindTalk then // Call it twice
Result := True;
11: if FindLamp(LampSkill) then // Maybe we missed it?
Result := True;
12: if (FindNewBox) then
begin
Result := True;
if (UseBoxSolver) then
SolveBox
else
GambleNewBox;
end;
13: if FindTrade then
Result := True;
14:
begin
if NoGameTab then
begin
Result := True;
Players[CurrentPlayer].loc := 'No GameTab';
Logout;
Exit;
end;
end;
15: SaveToChatLog;
16: if RC then
Result := True;
end;
Wait(1);
end;
end;
////////////////////////AntiBan//////////////////////////////
procedure AntiBanage;
begin
if(not(LoggedIn))then
Exit;6
case Random(7) of
0: RandomClickEvery(5000 +Random(1000))
1: begin
hoverSkill('Mining')
Wait(1250 +random(500))
Gametab(4)
end;
2: RandomChatEvery(4 + Random(4));
3: LeaveScreenEvery(10 + Random(4));
4: PickUpMouse;
5: BoredEvery(10 + Random(5));
end;
//////////////MainLoop//////////////////
Procedure Mainloop;
begin
SetupSrl;
OakCutting;
AntiBan;
AntiRandoms;
OakBanking;
if(not(LoggedIn))then
Exit;
end.