Code: Select all
...
var
...
r_cave : array[1..16] of integer;
j : integer;
rune : integer;
...
procedure recal_rb(rune : integer);
var tmpr : Integer;
mx, my, k, Res : Integer;
begin
repeat
Res := 0;
tmpr := rune;
UseObject(runebook_cave);
while GetGumpID(GetGumpsCount-1) <> $01CC do
wait(550);
waitgump(IntToStr(tmpr));
wait(1000)
mx := GetX(self);
my := GetY(self);
k := 0;
repeat
wait(500)
k := k + 1;
until (mx<>GetX(self)) or (my<>GetY(self)) or Dead or (k = 20)
if (mx<>GetX(self)) or (my<>GetY(self)) then Res := 1;
until Res = 1;
end;
...
begin
ScriptStartTime := Now;
HowManyDischarge := 0;
StartFlag := 1;
j:=1;
r_cave[1]:=7;
r_cave[2]:=13;
r_cave[3]:=19;
r_cave[4]:=25;
r_cave[5]:=31;
r_cave[6]:=37;
r_cave[7]:=43;
r_cave[8]:=49;
r_cave[9]:=55;
r_cave[10]:=61;
r_cave[11]:=67;
r_cave[12]:=73;
r_cave[13]:=79;
r_cave[14]:=85;
r_cave[15]:=91;
r_cave[16]:=97;
repeat
CheckDead;
rune := r_cave[j];
recal_rb(rune);
repeat
CheckDead;
if Dead then break;
checkPickaxe;
minret := MiningAround;
CheckDead;
if Dead then break;
if minret = 4 then checkpickaxe;
if minret = 1 then j:=j+1;
until minret = 2;
CheckDead;
recal_rb(r_home);
if not Dead then
...
end.