Writeln('Summoning points too low for new familiar and no pot found');
Writeln('Summoning points too low for new familiar and no pot found');
Exit;
Exit;
End;
End;
Tries:=0;
Tries:=0;
If(FindDtm(Pouch, X, Y, MIX1, MIY1, MIX2, MIY2)) Then
If(FindDtm(Pouch, X, Y, MIX1, MIY1, MIX2, MIY2)) Then
Repeat
Repeat
If Debug Then
If Debug Then
Writeln('Found pouch, attempting to summon');
Writeln('Found pouch, attempting to summon');
If UsingFamiliar Then
If UsingFamiliar Then
Break;
Break;
CheckStuff;
CheckStuff;
HumanMMouse(X, Y, 5, 5);
HumanMMouse(X, Y, 5, 5);
ClickMouse2(False);
ClickMouse2(False);
WaitOption('Summon',500);
WaitOption('Summon',500);
Wait(RandomRange(1000,2000));
Wait(RandomRange(1000,2000));
If(FindBlackChatMessage('follower')) Then
If(FindBlackChatMessage('follower')) Then
Break;
Break;
Tries:= Tries + 1;
Tries:= Tries + 1;
If (Tries > 5) Then
If (Tries > 5) Then
Begin
Begin
If Debug Then
If Debug Then
Writeln('Failed to summon familiar');
Writeln('Failed to summon familiar');
Exit;
Exit;
End;
End;
Until(UsingFamiliar);
Until(UsingFamiliar);
MarkTime(SummoningTimer);
MarkTime(SummoningTimer);
Result:= UsingFamiliar;
Result:= UsingFamiliar;
End;
End;
Function StoreBOB: Boolean;
Function StoreBOB: Boolean;
Var
Var
T:integer;
T:integer;
Jumper: Boolean;
Jumper: Boolean;
Label
Label
Jump;
Jump;
Label
Label
Restart;
Restart;
Begin
Begin
If Debug Then
If Debug Then
Writeln('ENTERING STOREBOB FUNCTION');
Writeln('ENTERING STOREBOB FUNCTION');
Restart:
Restart:
Result:=False;
Result:=False;
Jumper:=False;
Jumper:=False;
CheckStuff;
CheckStuff;
If Not WaitLoggedIn(1000) Then
If Not WaitLoggedIn(1000) Then
Exit;
Exit;
If Not UsingFamiliar Then
If Not UsingFamiliar Then
Begin
Begin
If Debug Then
If Debug Then
Writeln('No familiar found, exiting function');
Writeln('No familiar found, exiting function');
Exit;
Exit;
End;
End;
If Not IsUpTextMultiCustom(['Take','ake','BoB']) Then
If Not IsUpTextMultiCustom(['Take','ake','BoB']) Then
MouseBox(697,134,712,151,Mouse_Right) Else
MouseBox(697,134,712,151,Mouse_Right) Else
ClickMouse2(False);
ClickMouse2(False);
If WaitOptionMulti(['act','Interact','eract'],1500) Then
If WaitOptionMulti(['act','Interact','eract'],1500) Then
Begin
Begin
If Debug Then
If Debug Then
Writeln('Found option to interact with familiar');
Writeln('Found option to interact with familiar');
MarkTime(T);
MarkTime(T);
Repeat
Repeat
Wait(100);
Wait(100);
If CheckStuff Then
If CheckStuff Then
Break;
Break;
If TimeFromMark(T)>5000 Then
If TimeFromMark(T)>5000 Then
Begin
Begin
If Debug Then
If Debug Then
Writeln('Failed to find NPC option');
Writeln('Failed to find NPC option');
Exit;
Exit;
End;
End;
Until FindNPCChatText('tore',Nothing);
Until FindNPCChatText('tore',Nothing);
If Not FindNPCChatText('tore',Nothing) Then
If Not FindNPCChatText('tore',Nothing) Then
GoTo Restart;
GoTo Restart;
TypeSendEx('2',False);
TypeSendEx('2',False);
End;
End;
MarkTime(T);
MarkTime(T);
Repeat
Repeat
InvMouse(RandomRange(6,10),3);
InvMouse(RandomRange(6,10),3);
If (TimeFromMark(T)>5000) Or (Checkstuff) Then
If (TimeFromMark(T)>5000) Or (Checkstuff) Then
Begin
Begin
If Debug then
If Debug then
Writeln('Failed to find bones in inventory');
Writeln('Failed to find bones in inventory');
Jumper:=True;
Jumper:=True;
Break;
Break;
End;
End;
Until WaitUpTextMulti(['ones','Bones','bones','one','Bon','nes','Bo','bo','ne','Drag','agon','drag','gon','Frost','rost','ost','Ashes','Ash','ash','hes'],RandomRange(200,250));
Until WaitUpTextMulti(['ones','Bones','bones','one','Bon','nes','Bo','bo','ne','Drag','agon','drag','gon','Frost','rost','ost','Ashes','Ash','ash','hes'],RandomRange(200,250));
If Jumper Then
If Jumper Then
GoTo Jump;
GoTo Jump;
If Debug then
If Debug then
Writeln('Found bones in inventory');
Writeln('Found bones in inventory');
If WaitUpTextMulti(['Store','tore'],RandomRange(5000,6000)) Then
If WaitUpTextMulti(['Store','tore'],RandomRange(5000,6000)) Then
Begin
Begin
If Debug then
If Debug then
Writeln('Found option to store in BOB');
Writeln('Found option to store in BOB');
ClickMouse2(False);
ClickMouse2(False);
If WaitOptionMulti(['re-A','-All','ll F','ll D','ll B'],RandomRange(2000,3000)) Then
If WaitOptionMulti(['re-A','-All','ll F','ll D','ll B'],RandomRange(2000,3000)) Then
Begin
Begin
If Debug then
If Debug then
Writeln('Found option to deposit all');
Writeln('Found option to deposit all');
WaitInvCountDec(4000);
WaitInvCountDec(4000);
Result:=True;
Result:=True;
BankTime:=2;
BankTime:=2;
End;
End;
End;
End;
Jump:
Jump:
MouseBox(420,38,430,46,Mouse_Move);
MouseBox(420,38,430,46,Mouse_Move);
If Debug then
If Debug then
Writeln('Trying to close BOB menu');
Writeln('Trying to close BOB menu');
If WaitUpTextMulti(['Close','lose'],2000) Then
If WaitUpTextMulti(['Close','lose'],2000) Then
ClickMouse2(True);
ClickMouse2(True);
MarkTime(T);
MarkTime(T);
Repeat
Repeat
Wait(100);
Wait(100);
If CheckStuff Then
If CheckStuff Then
Break;
Break;
If TimeFromMark(T)>10000 Then
If TimeFromMark(T)>10000 Then
Begin
Begin
If Debug Then
If Debug Then
Writeln('Probably failed to close summoning interface');
Writeln('Probably failed to close summoning interface');
Break;
Break;
End;
End;
Until Not IsUpTextMultiCustom(['Close','lose']);
Until Not IsUpTextMultiCustom(['Close','lose']);
End;
End;
Function TzBank: Boolean;
Function TzBank: Boolean;
Var
Var
X,Y,H,I,CTS: Integer;
X,Y,H,I,CTS: Integer;
TPA: TPointArray;
TPA: TPointArray;
ATPA: T2DPointArray;
ATPA: T2DPointArray;
Begin
Begin
If Debug Then
If Debug Then
Writeln('ENTERING TZHAAR BANK FUNCTION');
Writeln('ENTERING TZHAAR BANK FUNCTION');
Result:=False;
Result:=False;
CheckStuff;
CheckStuff;
If Not WaitLoggedIn(1000) Then
If Not WaitLoggedIn(1000) Then
Exit;
Exit;
MouseSpeed := RandomRange(18, 23);
MouseSpeed := RandomRange(18, 23);
If FindDTMRotated(TzhaarDTM,X,Y,MSX1,MSY1,MSX2,MSY2,-Pi,Pi,Pi/30,aFound) Then
If FindDTMRotated(TzhaarDTM,X,Y,MSX1,MSY1,MSX2,MSY2,-Pi,Pi,Pi/30,aFound) Then
Begin
Begin
If Debug Then
If Debug Then
Writeln('Found DTM Tzhaar');
Writeln('Found DTM Tzhaar');
HumanMMouse(X,Y,4,4);
HumanMMouse(X,Y,4,4);
If (WaitUpTextMulti(['Mej','Talk','Jal'],RandomRange(200,250))) Then
If (WaitUpTextMulti(['Mej','Talk','Jal'],RandomRange(200,250))) Then