Fizzi
2007-08-17 01:16:35
Here is the current OpenBankQuiet:
I was looking at this part of the code, and something was bothering me:
I think that the positioning of these lines is incorrect:
The way it is now… if it finds the uptext and right clicks, but for some reason right clicks somewhere besides the bank booth (Which has happened to me before), it will still Exit the procedure. I think a better place to put it would be:
This way… it won't stop looking for the bank booth until it actually clicks the option 'uickly'.
By the way, the reason I posted this here is because I wasn't sure if this was intended or not.
function OpenBankQuiet(WhichBank: string): Boolean;
var
TheCounter, dx, dy, tol, Mark2, Mark3: Integer;
acc, accthres: Extended;
begin
case WhichBank of
'feb', 'fwb': TheCounter := BitmapFromString(1, 10, '6C583296897A948779948779736' +
'C63A59E968C7F6F9686749B8A7685663E');
// varrock west
'vwb': TheCounter:= BitmapFromString(10, 1, 'A0997F504A49504A49504A495E4' +
'F215E4F215E4F215E4F212C250EA0997F');
// varrock east
'veb': TheCounter := BitmapFromString(1, 10, '5E4D1589826D88806D88806D867' +
'F6C9996907C7664847D648C836891876B');
// draynor and this works too for alkharid
'akb', 'db', 'eb': TheCounter:= BitmapFromString(12, 1, '584209735C29735C29735C29605' +
'85558504D60504D58504D58504D58504D58504D605855');
end;
MarkTime(Mark3);
tol := 1;
accthres := 0.6;
repeat
if IsUpTextMulti('ank', 'Bo', 'ot') then
begin
GetMousePos(dx, dy);
Mouse(dx, dy, 0, 0, False);
if ChooseOption(dx, dy, 'uickly') then
begin
MarkTime(Mark2);
repeat
Wait(10);
if TimeFromMark(Mark2) > 20000 then
begin
WriteLn('couldnt find the bank. Exiting');
Break;
FreeBitmap(TheCounter);
Exit;
end;
until BankScreen;
FreeBitmap(TheCounter);
Exit;
end;
end;
FindDeformedBitmapToleranceIn(TheCounter, dx, dy, MSX1 + 50, MSY1 + 50, MSX2
- 50, MSY2 - 50, tol, 4, True, acc);
if (acc >= accthres) then
begin
MMouse(dx, dy, 0, 0);
if IsUpTextMulti('ank', 'Bo', 'ot') then
begin
GetMousePos(dx, dy);
Mouse(dx, dy, 0, 0, False);
if ChooseOption(dx, dy, 'uickly') then
begin
MarkTime(Mark2);
repeat
Wait(10);
if TimeFromMark(Mark2) > 20000 then
begin
WriteLn('couldnt find the bank. Exiting');
FreeBitmap(TheCounter);
Exit;
end;
until BankScreen;
end;
Result := True;
FreeBitmap(TheCounter);
Exit;
end;
end;
Wait(100);
FindNormalRandoms;
tol := tol + 4;
if tol >= 20 then
begin
tol := 1;
accthres := accthres - 0.1;
if accthres < 0.2 then
begin
WriteLn('couldnt find the bank. Exiting');
FreeBitmap(TheCounter);
Exit;
end;
end;
until TimeFromMark(Mark3) > 60000;
FreeBitmap(TheCounter);
end;I was looking at this part of the code, and something was bothering me:
FindDeformedBitmapToleranceIn(TheCounter, dx, dy, MSX1 + 50, MSY1 + 50, MSX2
- 50, MSY2 - 50, tol, 4, True, acc);
if (acc >= accthres) then
begin
MMouse(dx, dy, 0, 0);
if IsUpTextMulti('ank', 'Bo', 'ot') then
begin
GetMousePos(dx, dy);
Mouse(dx, dy, 0, 0, False);
if ChooseOption(dx, dy, 'uickly') then
begin
MarkTime(Mark2);
repeat
Wait(10);
if TimeFromMark(Mark2) > 20000 then
begin
WriteLn('couldnt find the bank. Exiting');
FreeBitmap(TheCounter);
Exit;
end;
until BankScreen;
end;
Result := True;
FreeBitmap(TheCounter);
Exit;
end;
end;I think that the positioning of these lines is incorrect:
Result := True;
FreeBitmap(TheCounter);
Exit;The way it is now… if it finds the uptext and right clicks, but for some reason right clicks somewhere besides the bank booth (Which has happened to me before), it will still Exit the procedure. I think a better place to put it would be:
FindDeformedBitmapToleranceIn(TheCounter, dx, dy, MSX1 + 50, MSY1 + 50, MSX2
- 50, MSY2 - 50, tol, 4, True, acc);
if (acc >= accthres) then
begin
MMouse(dx, dy, 0, 0);
if IsUpTextMulti('ank', 'Bo', 'ot') then
begin
GetMousePos(dx, dy);
Mouse(dx, dy, 0, 0, False);
if ChooseOption(dx, dy, 'uickly') then
begin
MarkTime(Mark2);
repeat
Wait(10);
if TimeFromMark(Mark2) > 20000 then
begin
WriteLn('couldnt find the bank. Exiting');
FreeBitmap(TheCounter);
Exit;
end;
until BankScreen;
Result := True;
FreeBitmap(TheCounter);
Exit;
end;
end;
end;
This way… it won't stop looking for the bank booth until it actually clicks the option 'uickly'.
By the way, the reason I posted this here is because I wasn't sure if this was intended or not.