NCDS
2010-09-27 21:01:02
Fixed an endless loop that I believe was caused by IsMoving returning a false positive, with a timer and extra check.
Also added a MSI_FindRandoms check as I don't believe there are any randoms checks while walking prior to this.
New MSI_Flag:
Also added a MSI_FindRandoms check as I don't believe there are any randoms checks while walking prior to this.
New MSI_Flag:
procedure MSI_Flag;
var
t: Integer;
begin
repeat
if (FindNPCChatText('erous', Nothing)) then // Only if total level < 60
begin
ClickContinue(True, True);
t := GetSystemTime + 5000;
while (GetSystemTime < t) do
begin
Wait(500 + Random(300));
if (FindNPCChatText('eave', ClickLeft)) then
Break;
end;
end;
Wait(RandomRange(200, 500));
t := (GetSystemTime + 12000);
if ((not FlagPresent) and (IsMoving)) then
begin
MSI_Antiban(RandomRange(300, 1000), ANTI_BAN_CHANCE);
Continue;
end;
MSI_FindRandoms;
MSI_AntiBan(RandomRange(200, 800), ANTI_BAN_CHANCE);
if (FlagDistance <= TOLERANCE_FLAG) then
Exit;
until((not (FlagPresent)) and (not (IsMoving))) or (t < GetSystemTime);
end;