I know youre busy with the bloods at the minute!
The banking issue is actually runescape not letting the player bank my left clicking the bank. A right click on the guard has fixed this though
EDIT: this is for your mat.
For all other members, we have had to change the banking as the left click wasnt working.
program MatsAstralCrafterPro;
{$DEFINE SMART}
{.include srl/srl.simba}
{$i sps/sps.simba}
Var
Runs ,X ,Y ,Ess,RuneCount,Exp:integer;
ToAltar: TPointArray;
ToBank: TPointArray;
Clock: TIntegerArray;
ActionText: TStringArray;
Const
//SRL Stats
SRLStats_Username = '';
SRLStats_Password = '';
//Script Stuff.
UsePouches = True; //Using Pouches?
Summoning = False; //Using Summoning?
TeleNormal = True; //Normal Lunar Tele?
Procedure Commiter;
Var
ExpCount:Integer;
begin
ExpCount:=RuneCount + 2;
Exp := ExpCount * 9;
stats_IncVariable('Astral Runes (Crafted)', RuneCount);
stats_IncVariable('Runecrafting EXP (Gained)', Exp);
Stats_Commit;
Writeln('Stats Commited');
end;
procedure DeclarePlayers;
begin
HowManyPlayers := 1; // Number of Players to use
NumberOfPlayers(HowManyPlayers);
CurrentPlayer := 0; // Player to start with, first one is 0
Players[0].Name := ''; // Username
Players[0].Pass := ''; // Password
Players[0].Active := True; // True if you are using this player
Players[0].Pin := ''; // Bank Pin. Leave it if you don't have one.
Players[0].Integers[1] := 10000; // Number of loads
end;
Function AstralCounter: Integer;
Var
Astral, Count:Integer;
begin
Astral := BitmapFromString(4, 6, 'meJw7tf7UKQyUkZELYaSkZAARhJ2Q' +
'kJKUlAZkxMQkxMUlAblAdlRUHIQLAKx3KfU=');
If FindBitMapTolerancein(Astral, X, Y, MIX1, MIY1, MIX2, MIY2, 45) then
Count := GetAmount(X,Y);
Result:= Count;
FreeBitMap(Astral);
end;
procedure SmallReport(Action: Integer);
begin
ClearDebug;
ActionText := ['Banking','Running to Altar','Crafting', 'Teleporting', 'Resting'];
Clock := [0,0,0];
ConvertTime(GetTimeRunning,Clock[0],Clock[1],Clock[2]);
writeln('-*-*-*-*-*-*MatsAstralCrafter-*-*-*-*-*-*');
Writeln('Time Running ' +tostr(Clock[0])+':'+tostr(Clock[1])+':'+tostr(Clock[2]));
writeln('Current Process: '+ActionText[Action]);
Writeln('Runs Done:' +IntToStr(runs));
Writeln('Astrals Made:' +IntToStr(RuneCount));
end;
Procedure Shutdown;
begin
Writeln('Bot Shutting Down');
Wait(RandomRange(1000,1300));
CloseBank;
Logout;
TerminateScript;
end;
Procedure TeleToBank;
Var
TeleMulti,TeleSolo,Tele:Integer;
begin
TeleMulti := BitmapFromString(8, 6, 'meJxLSko6cexIe3vbyqULgQw4SoKJ' +
'b922DSICVDBl6lS4OJANEQcyIOJAlUAEZEBkgQygFm8fn4qycoghQ' +
'EG4gYwMDKq6unApOAIAWNtXbw==');
TeleSolo := BitmapFromString(6, 7, 'meJxbH8i0PpDJSJ6dkYEBiPjEeIHc' +
'PmsGCBcoztsqBhQJ1gYp4OLmBnIZZjDAtQDVw0Uw1cDN4TQVg5gDR' +
'IYwu4AIAPkkEyA=');
If TeleNormal then
Tele := TeleSolo else
Tele := TeleMulti;
If (LoggedIn) then
begin
If Not FindNormalRandoms then
begin
GameTab(Tab_Magic);
Wait(400);
If FindBitMapTolerancein(Tele,x,y,MIX1,MIY1,MIX2,MIY2,45)then
begin
SmallReport(3);
MMouse(x,y,5,5);
Wait(RandomRange(600, 800));
ClickMouse2(True);
end else
begin
ShutDown;
FreeBitMap(Tele);
end;
GameTab(Tab_Inv);
FreeBitMap(Tele);
end;
end;
end;
Procedure WalkingToBank;
begin
If (LoggedIn) then
begin
If Not FindNormalRandoms then
begin
SmallReport(0);
ToBank := [Point(269, 971), Point(265, 971),
Point(260, 971), Point(256, 971), Point(250, 970),
Point(249, 969), Point(244, 967), Point(240, 962),
Point(238, 957), Point(238, 955)];
SPS_WalkPath(ToBank);
Wait(500+Random(100));
end;
end;
end;
function BankFinder(x, y: Integer): Boolean;
var
CTS, I: Integer;
TPA: TPointArray;
ATPA: Array of TPointArray;
begin
CTS := GetColorToleranceSpeed;
ColorToleranceSpeed(2);
SetColorSpeed2Modifiers(0.25, 0.35);
FindColorsSpiralTolerance(MSCX, MSCY, TPA, 3830891, MSX1, MSY1, MSX2, MSY2, 18) // 3699048
ColorToleranceSpeed(CTS);
ATPA := TPAToATPAEx(TPA, 15, 15);
For I := 0 to High(ATPA) do
begin
MiddleTPAEx(ATPA[i], x, y);
MMouse(x, y, 2, 2);
Wait(200+Random(50));
If(IsUpTextMultiCustom(['anker'])) then
begin
Result := True;
GetMousePos(x, y);
Break;
end;
end;
end;
Procedure FindMoonBank;
begin
If (LoggedIn) then
begin
If Not FindNormalRandoms then
begin
Wait(RandomRange(700, 800));
If BankFinder(X,Y) then
begin
If IsUpText('anker') then
ClickMouse2(False);
Wait(100+Random(50));
ChooseOption('Bank Sir');
Repeat
Wait(50);
Until(PinScreen Or BankScreen);
If PinScreen then
InPin(Players[CurrentPlayer].Pin);
If BankScreen then
begin
end else
begin
FindMoonBank;
end;
end else
FindMoonBank;
end;
end;
end;
Procedure DepositEss;
begin
Wait(RandomRange(700, 800));
Ess := BitmapFromString(9, 11, 'meJx1zNEKgCAQRNGfDBMRERHbysq' +
'I/r+BIQmWYN7O3RXZRLZlObBaz32/sNZurJQVkzeAMgDlPGM6gMaY' +
'U5owBt/nISQog64MvI9Ufetc+FPQV/tnkLVeK8kYp5U/h2GkMoDyJ' +
'+gB5qx01w==');
If FindBitMapTolerancein(Ess, X, Y, MIX1, MIY1, MIX2, MIY2, 45) then
begin
MMouse(X, Y, 7, 7);
ClickMouse2(False);
Wait(Randomrange(100, 200));
ChooseOption('Deposit-5');
Wait(RandomRange(400, 600));
end;
FreeBitMap(Ess);
end;
Procedure DepositAstrals;
Var
Astral:integer;
begin
Wait(RandomRange(500, 600));
Astral := BitmapFromString(4, 6, 'meJw7tf7UKQyUkZELYaSkZAARhJ2Q' +
'kJKUlAZkxMQkxMUlAblAdlRUHIQLAKx3KfU=');
If FindBitMapTolerancein(Astral, X, Y, MIX1, MIY1, MIX2, MIY2, 45) then
begin
MMouse(X, Y, 7, 7);
ClickMouse2(False);
Wait(Randomrange(100, 200));
ChooseOption('Deposit-All');
Wait(RandomRange(400, 600));
end;
FreeBitMap(Astral);
end;
Procedure Eating;
Var
MonkFish, Eatingfood:Integer;
begin
MonkFish := BitmapFromString(7, 5, 'meJzr6V/k6hfl7BPu5BUKRA4ewUCy' +
'tn7R5Omr+iYu6eieCxevqV1Q17DEL6A0IKisqXUaUMTOLQAoCFTs5' +
'ZPv41fYP2lpbcMEGxe/yuq5FZWzgSREtqFxKZANAPTVLcc=');
Repeat
Inc(Eatingfood);
If FindBitMapTolerancein(MonkFish, X, Y, MIX1, MIY1, MIX2, MIY2, 45) then
begin
MMouse(X, Y, 7, 7);
ClickMouse2(False);
ChooseOption('Eat');
Wait(RandomRange(850, 921));
end;
Until(Eatingfood = 4);
FreeBitMap(MonkFish);
end;
Procedure WithdrawEss;
begin
Ess := BitmapFromString(9, 11, 'meJx1zNEKgCAQRNGfDBMRERHbysq' +
'I/r+BIQmWYN7O3RXZRLZlObBaz32/sNZurJQVkzeAMgDlPGM6gMaY' +
'U5owBt/nISQog64MvI9Ufetc+FPQV/tnkLVeK8kYp5U/h2GkMoDyJ' +
'+gB5qx01w==');
Wait(RandomRange(600, 700));
if BankScreen then
begin
if FindBitmapToleranceIn(Ess, X, Y, 35, 85, 480, 295, 20) then
begin
MMouse(X, Y, 5, 5);
ClickMouse2(False);
Wait(RandomRange(300, 400));
ChooseOption('All');
end else
begin
Writeln('No Ess Found');
ShutDown;
end;
end else
begin
WriteLn('No Bank Screen How Shit');
ShutDown;
end;
FreeBitMap(Ess);
end;
Procedure HealthChecker;
Var
MonkFish, Eat:Integer;
begin
If FindColorSpiralTolerance(X, Y, 2070783, 720, 25, 745, 40, 20) then
begin
MonkFish := BitmapFromString(7, 5, 'meJzr6V/k6hfl7BPu5BUKRA4ewUCy' +
'tn7R5Omr+iYu6eieCxevqV1Q17DEL6A0IKisqXUaUMTOLQAoCFTs5' +
'ZPv41fYP2lpbcMEGxe/yuq5FZWzgSREtqFxKZANAPTVLcc=');
Wait(RandomRange(300, 500));
DepositEss;
If FindBitMapTolerancein(MonkFish, X, Y, MSX1, MSY1, MSX2, MSY2, 45) then
begin
Repeat
Inc(Eat);
MMouse(X, Y, 7, 7);
ClickMouse2(True);
Wait(RandomRange(400, 500));
Until(Eat = 4);
Wait(randomrange(200, 300));
Eating;
repeat
If FindBitMapTolerancein(MonkFish, X, Y, MIX1, MIY1, MIX2, MIY2, 45) then
begin
MMouse(X,Y,7,7);
ClickMouse2(True);
Wait(randomRange(300, 321));
end;
until(not FindBitMapTolerancein(MonkFish, X, Y, MIX1, MIY1, MIX2, MIY2, 45));
Wait(RandomRange(800, 1000));
FreeBitMap(MonkFish);
end;
Wait(RandomRange(400, 600));
WithdrawEss;
CloseBank;
end;
end;
function AltarFinder(x, y: Integer): Boolean;
var
CTS, I: Integer;
TPA: TPointArray;
ATPA: Array of TPointArray;
begin
CTS := GetColorToleranceSpeed;
ColorToleranceSpeed(2);
SetColorSpeed2Modifiers(1.12, 0.39);
FindColorsSpiralTolerance(MSCX, MSCY, TPA,8617345, MSX1, MSY1, MSX2, MSY2, 1);
ColorToleranceSpeed(CTS);
ATPA := TPAToATPAEx(TPA, 15, 15);
For I := 0 to High(ATPA) do
begin
MiddleTPAEx(ATPA[i], x, y);
MMouse(x, y, 2, 2);
Wait(200+Random(50));
If(IsUpTextMultiCustom(['Altar'])) then
begin
Result := True;
GetMousePos(x, y);
Break;
end;
end;
end;
Procedure WalkingToAltar;
begin
if (LoggedIn) then
begin
SmallReport(1);
ToAltar := [Point(248, 970), Point(257, 972), Point(262, 970),
Point(266, 970), Point(271, 970), Point(276, 970), Point(280, 973),
Point(285, 973), Point(290, 977), Point(293, 984), Point(294, 990),
Point(296, 999), Point(296, 1007), Point(295, 1014), Point(295, 1022),
Point(292, 1030), Point(290, 1038), Point(289, 1044), Point(289, 1049),
Point(288, 1055), Point(287, 1061), Point(287, 1066), Point(287, 1072),
Point(287, 1078), Point(287, 1083), Point(287, 1088), Point(287, 1093),
Point(287, 1096), Point(289, 1101), Point(290, 1104), Point(292, 1107),
Point(296, 1110), Point(301, 1116), Point(305, 1122), Point(308, 1123),
Point(309, 1126), Point(313, 1129), Point(316, 1132), Point(320, 1134),
Point(326, 1138), Point(330, 1141), Point(326, 1137), Point(335, 1143),
Point(339, 1146), Point(343, 1146), Point(347, 1149), Point(350, 1151),
Point(353, 1153), Point(357, 1156), Point(361, 1156), Point(364, 1159),
Point(367, 1160), Point(370, 1163), Point(374, 1163), Point(376, 1166),
Point(378, 1168), Point(379, 1171), Point(379, 1174), Point(379, 1178),
Point(379, 1185), Point(382, 1187), Point(389, 1189), Point(393, 1190),
Point(397, 1192), Point(401, 1192), Point(405, 1193), Point(406, 1193),
Point(410, 1193), Point(412, 1193), Point(415, 1193), Point(418, 1193),
Point(420, 1193), Point(424, 1193), Point(428, 1192), Point(433, 1191),
Point(438, 1189), Point(442, 1187), Point(447, 1185), Point(452, 1183),
Point(460, 1176)];
SPS_WalkPath(ToAltar);
Wait(RandomRange(300, 400));
If Not (SPS_WalkPath(ToAltar)) then
begin
TeleToBank;
WalkingToAltar;
end;
end else
ShutDown;
end;
Procedure FindingAltar;
Var
AltarCount:integer;
begin
If (LoggedIn) then
begin
If AltarFinder(X,Y) then
begin
ClickMouse2(True);
Wait(RandomRange(700,800));
end else
begin
Repeat
Inc(AltarCount);
Writeln('Seeking Altar '+InttoStr(AltarCount)+' times');
FindingAltar;
If(AltarCount = 5) then
Begin
TeleToBank;
WalkingToAltar;
FindingAltar;
end;
AltarCount:=0;
Until(AltarFinder(X,y));
end;
end;
end;
Procedure AstralChecker;
Var
Astral:integer;
begin
Astral := BitmapFromString(4, 6, 'meJw7tf7UKQyUkZELYaSkZAARhJ2Q' +
'kJKUlAZkxMQkxMUlAblAdlRUHIQLAKx3KfU=');
If Not FindBitMapTolerancein(Astral, X, Y, MIX1, MIY1, MIX2, MIY2, 45) then
begin
Wait(RandomRange(400, 500));
FindingAltar;
FreeBitMap(Astral);
end else
begin
FreeBitMap(Astral);
WriteLn('Found the Astrals');
end;
end;
Procedure EssChecker;
Var
Ess:Integer;
begin
Ess := BitmapFromString(9, 11, 'meJx1zNEKgCAQRNGfDBMRERHbysq' +
'I/r+BIQmWYN7O3RXZRLZlObBaz32/sNZurJQVkzeAMgDlPGM6gMaY' +
'U5owBt/nISQog64MvI9Ufetc+FPQV/tnkLVeK8kYp5U/h2GkMoDyJ' +
'+gB5qx01w==');
if FindBitMapToleranceIn(Ess,X,Y,MIX1,MIY1,MIX2,MIY2,45)then
begin
FindingAltar;
Wait(RandomRange(700, 843));
EssChecker;
end;
FreeBitMap(Ess);
end;
Procedure WithDrawingEss;
begin
MMouse(710, 140, 4,4);//Summoning Icon
ClickMouse2(False);
Wait(RandomRange(200, 300));
ChooseOption('Take BoB');
end;
Procedure CraftingRunes;
Var
Giant, Large, Medium,Small:Integer;
AltarSpot:TPoint;
begin
SmallReport(2);
If UsePouches then
begin
Giant := BitmapFromString(9, 7, 'meJxLy8z29Q/08PZx8/B0dHFhYmAw' +
'sHICIkNrp4TklLjEpJCwcKCsi5s7UAoua+nsGRUbFxEdAyS1jc01D' +
'UzlVTUhCoBS5o7upvYuxjZO+ha2tvb2QFkVbX0JGXkrVx9kWaB2e0' +
'cniKyNux+abGBIKNBSoKydVyCmbFhEFNDBAIyLLPk=');
Large := BitmapFromString(11, 7, 'meJwzsHIyACNDa2cgycTAYAATMUC' +
'SAiKgFBDp2blAGMgqIVwTdz8hRU1BOTU4gqt0jU1zDE+wCYyy9A1F' +
'UwNEEMOBapyjU5wik+yCY4DKgOJAlRAEcQNQjY27H1AB0CigGqBp1' +
'v7hQJVAhOwSoBqgAvvQOKAaoAIIAgCPCyuY');
Medium := BitmapFromString(9, 12, 'meJxljtsKglAURKVPyA8osEASRCI' +
'q46SevKSJllaIqUgmVnQh+v+HBs5bwjzN2jN7eEHq9sW2eEEiUcq3' +
'KBzIyhsjKXHw52vHQvfjpbdjB8t9Boem1ZhQeUY6HMcoWYcL258aj' +
'qLqojKBD53r5v56l1WdnLJNEBJNZz5kRenr870+npfmZtoONS3NoD' +
'iAD6GTtSEIczCSEXH2GRANDvgFhAHbKJ6pi95QBIIYmq+8iWZhG2o' +
'RdI8FQxjJEBYiiFogyNwmQOwdOtO8cDf+D0I7S40=');
Small := BitmapFromString(8, 6, 'meJyzDY6xCYyCICv/cEvfUG1jCyYG' +
'Bht3v5j4BN+AQG9fP09vH6AIEBkbGwPFLZy9DK0cNA1NlTR1pRVVx' +
'KRlgVJ2XoFAcVN7V6B6CytrBTUtiBRcHKjFzdMLqAUi5eATDBQ3d3' +
'Q3tnUKDAkFagFKyamoAwAPTh7y');
FindingAltar;
Wait(RandomRange(800, 900));
AstralChecker;
If (LoggedIn) then
begin
If FindBitMapTolerancein(Giant,x,y,MIX1,MIY1,MIX2,MIY2,25)then
begin
MMouse(X, Y, 7, 7);
ClickMouse2(False);
Wait(RandomRange(300, 421));
ChooseOption('Empty');
end;
If FindBitMapTolerancein(Large,x,y,MIX1,MIY1,MIX2,MIY2,25)then
begin
MMouse(X, Y, 7, 7);
ClickMouse2(False);
Wait(RandomRange(300, 421));
ChooseOption('Empty');
end;
FindingAltar;
Wait(RandomRange(800, 900));
EssChecker;
If FindBitMapTolerancein(Medium,x,y,MIX1,MIY1,MIX2,MIY2,55)then
begin
MMouse(X, Y, 7, 7);
ClickMouse2(False);
Wait(RandomRange(300, 421));
ChooseOption('Empty');
end;
If FindBitMapTolerancein(Small,x,y,MIX1,MIY1,MIX2,MIY2,45)then
begin
MMouse(X, Y, 7, 7);
ClickMouse2(False);
Wait(RandomRange(300, 421));
ChooseOption('Empty');
end;
If Summoning then
WithDrawingEss;
FindingAltar;
Wait(RandomRange(900, 1000));
EssChecker;
AstralChecker;
FreeBitMap(Giant);
FreeBitMap(Large);
FreeBitMap(Medium);
FreeBitMap(Small);
TeleToBank;
end;
end else
begin
FindingAltar;
Wait(Randomrange(300, 321));
EssChecker;
TeleToBank;
end;
end;
Procedure NPCContact;
Var
Cosmic, NPCSpell, DarkMage, Air, Astral, Chat, Chat2:Integer;
begin
Cosmic := BitmapFromString(9, 8, 'meJxTuH5TARUVF1cAUWlpFbJgTk5h' +
'Xl5xfkFpYVE5UBYunpGRm5WVjyybkJACkUpLy0aTjYtLAoonJaWlp' +
'GQgywIFY2ISgLJAvciyEHOiouLQZOG2R0TEoMnCtQMAH95kyw==');
Air := BitmapFromString(10, 5, 'meJy7fv3B9esPMjJyr4MZEFRYVF5' +
'cXAFEQHZKSgayVF5ecX5BKYSdkJCCLJWVlZ+TUwjnxsUlwdlpadlo' +
'VsTEJAAVAE1ISkpDswKIAPPuZ90=');
NPCSpell := BitmapFromString(10, 7, 'meJx79fr1Kxzo19ODyAhN6tOh+it' +
'LFYAkBMEVQKQYGRiQEVAlxBAgA8g1sHICIWtnCAOiAGIOQhaiAIzg' +
'hqArQDUEggAzAmlG');
DarkMage := BitmapFromString(7, 7, 'meJzj4wOBzmVnIKhrxVkg4kMShIhA' +
'BNFEIIJwdvfK80DUs+oCUBDIEA5vgaKINiAXKCgUWCXoX4GMgIKC3' +
'sXy5i5AJGvqBEEALNs97Q==');
Astral := BitmapFromString(4, 6, 'meJw7tf7UKQyUkZELYaSkZAARhJ2Q' +
'kJKUlAZkxMQkxMUlAblAdlRUHIQLAKx3KfU=');
DepositEss;
Wait(RandomRange(300, 400));
If FindBitMapTolerancein(Cosmic,x,y,MSX1,MSY1,MSX2,MSY2,45)then
begin
MMouse(X,Y,7,7);
ClickMouse2(True);
Wait(RandomRange(400, 500));
If FindBitMapTolerancein(Astral,x,y,MSX1,MSY1,MSX2,MSY2,45) then
begin
MMouse(X,Y,7,7);
ClickMouse2(True);
Wait(RandomRange(400, 500));
end else
ShutDown;
If FindBitMapTolerancein(Air,X,Y,MSX1,MSY1,MSX2,MSY2,55)then
begin
MMouse(X,Y,7,7);
ClickMouse2(True);
Wait(RandomRange(100, 300));
ClickMouse2(True);
end;
end;
CloseBank;
Wait(RandomRange(1000, 1200));
GameTab(Tab_Magic);
Wait(RandomRange(800, 921));
If FindBitMapTolerancein(NPCSpell,x,y,MIX1,MIY1,MIX2,MIY2,45)then
begin
MMouse(x,y,4,4);
ClickMouse2(True);
GameTab(Tab_Inv);
Wait(Randomrange(1200, 1300));
MMouse(460, 240, 10, 10);
ClickMouse2(True);
Wait(RandomRange(300, 400));
If FindBitMapTolerancein(DarkMage,X,Y,MSX1,MSY1,MSX2,MSY2,45)then
begin
MMouse(x,y,5,5);
ClickMouse2(True);
Wait(RandomRange(6600,6700));
Repeat
Inc(Chat2);
ClickContinue(True,True);
FindNPCChatText('repair',Clickleft);
Wait(RandomRange(400, 500));
ClickContinue(True,True);
Until(Chat2 = 12);
end;
end;
FindMoonBank;
WithDrawEss;
FreeBitMap(Astral);
FreeBitMap(Cosmic);
FreeBitMap(Air);
FreeBitMap(DarkMage);
FreeBitMap(NPCSpell);
end;
Procedure Checker;
Var
Law:Integer;
begin
Law := BitmapFromString(7, 6, 'meJzLzi64oSyXn19SWFhWXFwBZMNR' +
'dnYBLvHc3CKIFFwwMysPLo6sGC6OLJiekQMRBwCtoDKH');
If FindBitMapTolerancein(Law, X, Y, MIX1, MIY1, MIX2, MIY2, 45) then
begin
end else
begin
WriteLn('No Laws');
FreeBitMap(Law);
ShutDown;
end;
FreeBitMap(Law);
end;
Procedure CheckerSum;
Var
AbyssPouch,SummoningPot, EmptyPot, Pot:Integer;
begin
If FindColorSpiralTolerance(x,y ,6322435 ,690 ,130 , 750, 160, 25) then
begin
AbyssPouch := BitmapFromString(6, 6, 'meJyr753cPGlGff/kpknTmqfMEFP1' +
'buifWt3dDxTRdusFIqBIRUcPkIRwISIQhEcEqyAArGMj1w==');
If findBitMapTolerancein(AbyssPouch,x,y,MIX1,MIY1,MIX2,MIY2, 45)then
begin
MMouse(x,y,6,6);
ClickMouse2(False);
Wait(RandomRange(100, 200));
ChooseOption('Summon');
FreeBitMap(AbyssPouch);
end else
begin
If BankScreen then
begin
DepositEss;
If FindBitMapTolerancein(AbyssPouch,x,y,MSX1,MSY1,MSX2,MSY2, 45) then
begin
MMouse(X,y,5,5);
ClickMouse2(True);
CloseBank;
FreeBitMap(AbyssPouch);
Wait(RandomRange(600, 800));
CheckerSum;
end;
end else
begin
FindMoonBank;
CheckerSum;
end;
end;
end else
If FindColorSpiralTolerance(x,y, 12309391,690, 130, 750, 160, 25) then
begin
end else
If FindColorSpiralTolerance(x,y,3623936,690, 130, 750, 160, 25) or FindColorSpiralTolerance(x,y,2902611,690, 130, 750, 160, 25) then
begin
SummoningPot := BitmapFromString(5, 6, 'meJzTNrTQNrRgYmC4e00eiJDZmFxk' +
'NkEuACs2JsU=');
EmptyPot := BitmapFromString(10, 7, 'meJxdjEEOgDAIBEnf401PvkQjLbT' +
'V/3/BRSJpSiYcmAmJiM/jVh15qiF8JSLsLgKmRpmXbUfgdmrC1pxb' +
'MbqUD2twhPUA/xHj4iUabLceBJ6NFqz/RPYC1gE51A==');
If PinScreen then
InPin(Players[CurrentPlayer].Pin);
If BankScreen then
begin
DepositEss;
If FindBitMapToleranceIn(SummoningPot,x,y,MSX1,MSY1,MSX2,MSY2, 45) then
begin
MMouse(X,y,6,6);
ClickMouse2(True);
CloseBank;
end;
end;
Wait(500+Random(300));
If FindBitMapToleranceIn(SummoningPot,x,y,MIX1,MIY1,MIX2,MIY2, 45) then
begin
MMouse(X,y,6,6);
Repeat
inc(Pot);
ClickMouse2(True);
Wait(RandomRange(900, 1200));
Until(Pot = 4);
end;
If FindBitMapTolerancein(EmptyPot,x,y,MIX1,MIY1,MIX2,MIY2, 45) then
begin
MMouse(X,y,6,6);
ClickMouse2(False);
Wait(RandomRange(100, 200));
ChooseOption('Drop');
end else
begin
If FindBitMapToleranceIn(SummoningPot,x,y,MIX1,MIY1,MIX2,MIY2, 45) then
begin
MMouse(X,y,6,6);
ClickMouse2(False);
Wait(RandomRange(100, 200));
ChooseOption('Drop');
end;
end;
FreeBitMap(SummoningPot);
FreeBitMap(EmptyPot);
CheckerSum;
end;
end;
Procedure Storing;
Var
Ess,x,y:Integer;
begin
MMouse(710, 140, 4,4);//Summoning Icon
Wait(300+Random(50));
ClickMouse2(True);
Wait(100+random(50));
If ChooseOption('Cancel') then
CheckerSum;
Repeat
Wait(50);
Until(FindNPCChatText('Store',ClickLeft));
ClickMouse2(True);
Wait(RandomRange(1200, 1400));
Ess := BitmapFromString(9, 11, 'meJx1zNEKgCAQRNGfDBMRERHbysq' +
'I/r+BIQmWYN7O3RXZRLZlObBaz32/sNZurJQVkzeAMgDlPGM6gMaY' +
'U5owBt/nISQog64MvI9Ufetc+FPQV/tnkLVeK8kYp5U/h2GkMoDyJ' +
'+gB5qx01w==');
If FindBitMapTolerancein(Ess, X, Y, MIX1, MIY1, MIX2, MIY2, 45) then
begin
MMouse(X, Y, 7, 7);
ClickMouse2(False);
Wait(Randomrange(100, 200));
ChooseOption('Store-All');
Wait(RandomRange(900, 1000));
CloseWindow;
end;
Wait(RandomRange(300, 400));
FindMoonBank;
FreeBitMap(Ess);
end;
Procedure PouchBank;
Var
Large, Giant, Medium,GiantDeg, LargeDeg, Small:Integer;
begin
If UsePouches then
begin
Giant := BitmapFromString(9, 7, 'meJxLy8z29Q/08PZx8/B0dHFhYmAw' +
'sHICIkNrp4TklLjEpJCwcKCsi5s7UAoua+nsGRUbFxEdAyS1jc01D' +
'UzlVTUhCoBS5o7upvYuxjZO+ha2tvb2QFkVbX0JGXkrVx9kWaB2e0' +
'cniKyNux+abGBIKNBSoKydVyCmbFhEFNDBAIyLLPk=');
Large := BitmapFromString(11, 7, 'meJwzsHIyACNDa2cgycTAYAATMUC' +
'SAiKgFBDp2blAGMgqIVwTdz8hRU1BOTU4gqt0jU1zDE+wCYyy9A1F' +
'UwNEEMOBapyjU5wik+yCY4DKgOJAlRAEcQNQjY27H1AB0CigGqBp1' +
'v7hQJVAhOwSoBqgAvvQOKAaoAIIAgCPCyuY');
Medium := BitmapFromString(9, 12, 'meJxljtsKglAURKVPyA8osEASRCI' +
'q46SevKSJllaIqUgmVnQh+v+HBs5bwjzN2jN7eEHq9sW2eEEiUcq3' +
'KBzIyhsjKXHw52vHQvfjpbdjB8t9Boem1ZhQeUY6HMcoWYcL258aj' +
'qLqojKBD53r5v56l1WdnLJNEBJNZz5kRenr870+npfmZtoONS3NoD' +
'iAD6GTtSEIczCSEXH2GRANDvgFhAHbKJ6pi95QBIIYmq+8iWZhG2o' +
'RdI8FQxjJEBYiiFogyNwmQOwdOtO8cDf+D0I7S40=');
Small := BitmapFromString(8, 6, 'meJyzDY6xCYyCICv/cEvfUG1jCyYG' +
'Bht3v5j4BN+AQG9fP09vH6AIEBkbGwPFLZy9DK0cNA1NlTR1pRVVx' +
'KRlgVJ2XoFAcVN7V6B6CytrBTUtiBRcHKjFzdMLqAUi5eATDBQ3d3' +
'Q3tnUKDAkFagFKyamoAwAPTh7y');
GiantDeg := BitmapFromString(10, 8, 'meJx1juEKgjAYRcXXiNAQBiOZc7S' +
'Gk2GskRpjFCJS7/8g3hhIBMFlP3YO936sluwrBaGHgqRJkuccuc/z' +
'ME0uBOt965zqOqF1pHV79cuypbFWGgPKlYLAtQ2vN/5jw+3xNH0fB' +
'dCPcFKYO1YCQfllHPFiGtntM9BNoGWFEFriNiYlBHHWkf4IaMA66D' +
'8BN6xpjDC+');
LargeDeg := BitmapFromString(9, 9, 'meJzTNTRxDQhw9PY2srJSUFYVl5Rm' +
'YmAwsHICIl1DE209Q3tPT1s3d21DQ1kFJSkZOaAsEEGkNLT11DS1I' +
'RohsiKi4shS1i4uBubmQCmILEQKIgu00czeHm4sshRQI9BSExsbDT' +
'09oCxQCtlMZCkDY3NkKYiZWKWc/fwgUkCnAgDtUirq');
If (LoggedIn) then
begin
If Not FindNormalRandoms then
begin
If FindBitMapTolerancein(Giant,x,y,MIX1,MIY1,MIX2,MIY2,25)then
begin
MMouse(X, Y, 7, 7);
ClickMouse2(False);
Wait(RandomRange(300, 321));
ChooseOption('Fill');
end else
begin
If FindBitMapTolerancein(GiantDeg,x,y,MIX1,MIY1,MIX2,MIY2,25)then
begin
NPCContact;
end else
begin
end;
If FindBitMapTolerancein(Giant,x,y,MIX1,MIY1,MIX2,MIY2,25)then
begin
MMouse(X, Y, 7, 7);
ClickMouse2(False);
Wait(RandomRange(300, 321));
ChooseOption('Fill');
end;
end;
If FindBitMapTolerancein(Large,x,y,MIX1,MIY1,MIX2,MIY2,25)then
begin
MMouse(X, Y, 7, 7);
ClickMouse2(False);
Wait(RandomRange(300, 321));
ChooseOption('Fill');
end else
begin
If FindBitMapTolerancein(LargeDeg,X,Y,MIX1,MIY1,MIX2,MIY2,25)then
begin
NPCContact;
end else
begin
end;
If FindBitMapTolerancein(Large,x,y,MIX1,MIY1,MIX2,MIY2,25)then
begin
MMouse(X, Y, 7, 7);
ClickMouse2(False);
Wait(RandomRange(300, 321));
ChooseOption('Fill');
end;
end;
WithdrawEss;
If FindBitMapTolerancein(Medium,x,y,MIX1,MIY1,MIX2,MIY2,45)then
begin
MMouse(X, Y, 7, 7);
ClickMouse2(False);
Wait(RandomRange(300, 321));
ChooseOption('Fill');
end;
If FindBitMapTolerancein(Small,x,y,MIX1,MIY1,MIX2,MIY2,45)then
begin
MMouse(X, Y, 7, 7);
ClickMouse2(False);
Wait(RandomRange(300, 321));
ChooseOption('Fill');
end;
If Summoning then
Begin
CheckerSum;
Storing;
end;
WithdrawEss;
end else
ShutDown;
end else
ShutDown;
FreeBitMap(Small);
FreeBitMap(Giant);
FreeBitMap(Large);
FreeBitMap(Medium);
FreeBitMap(GiantDeg);
FreeBitMap(LargeDeg);
end else
Wait(100+Random(50));
end;
Procedure Bank;
begin
Repeat
Wait(50);
Until(PinScreen Or BankScreen);
If PinScreen then
InPin(Players[CurrentPlayer].Pin);
If BankScreen then
begin
DepositAstrals;
Wait(RandomRange(300, 400));
WithdrawEss;
Wait(RandomRange(300, 400));
PouchBank;
end;
end;
begin
MouseSpeed := RandomRange(14,16);
smart_server := 16;
smart_members := false;
smart_signed := true;
smart_superDetail := false;
ClearDebug;
SetupSRL;
DeclarePlayers;
SetupSRLStats(666, SRLStats_Username, SRLStats_Password);
LoginPlayer;
ClickNorth(SRL_Angle_High);
If Not (GameTab(Tab_inv)) then
GameTab(Tab_Inv);
SPS_Setup(RUNESCAPE_SURFACE,['0_1','0_2','0_3','1_1','1_2']);
Repeat
WalkingToBank;
Checker;
FindMoonBank;
Bank;
HealthChecker;
WalkingToAltar;
CraftingRunes;
Inc(Runs);
IncEx(RuneCount, AstralCounter);
Commiter;
Until(Not (Loggedin));
end.