Program Fishing var Boxes Unloadtype array of Word const Loc1x 111 Loc

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
Program Fishing;
var
Boxes, Unloadtype:array of Word;
const
Loc1x =111 ; Loc1y =112 ;
Loc2x =222 ; Loc2y =223 ;
Loc3x =333 ; Loc3y =334 ;
Loc4x =444 ; Loc4y =445 ;
Loc5x =555 ; Loc5y =556 ;
Loc6x =666 ; Loc6y =667 ;
Loc7x =777 ; Loc7y =778 ;
BankX =888 ; BankY =889 ;
Procedure Unload;
var
i:integer;
begin
boxes := [$0E3E, $09AA, $0E3F];
for i:=0 to (GetArrayLength(boxes)-1) do
while FindType(boxes[i],BackPack) > 0 do
begin
Useobject(FindItem);
wait(500);
end;
UnloadType := [$3B03, $175D, $1078, $3B03, $175D];
for i:=0 to (GetArrayLength(UnloadType)-1) do
while FindType(UnloadType[i],BackPack) > 0 do
begin
MoveItem(finditem,0,ObjAtLayer(BankLayer),0,0,0);
wait(1000);
end;
end;
procedure ToHide;
begin
if not Hidden then
begin
UseSkill('Hiding');
WaitJournalLine( Now, 'You have|You can', 5000 );
AddToSystemJournal('Hiding') ;
end;
end;
Procedure Loot;
var
e : integer;
Loottype: array of Cardinal;
begin
FindDistance:= 1;
Loottype := [$0E3E, $0E3E, $3B03, $09AA];
for e := 0 to Length(Loottype) -1 do
begin
if FindType(Loottype[e],ground) > 0 then
begin
MoveItem(finditem,0,BackPack,0,0,0);
wait(500);
end;
end;
end;
procedure Fish;
var
ex, x, y : Integer;
sTime : TDateTime;
CurrentX, CurrentY : Word;
begin
for x:=-4 to 4 do
begin
for y:=-4 to 4 do
begin
repeat
ToHide;
sTime := Now;
UseType($0DBF,$FFFF)
WaitForTarget(5000);
TargetToTile( 1341,( GetX( Self ) + x ),( GetY( Self ) + y ),0 );
WaitJournalLine( sTime, 'no fish|location|Far|in water|elsewhere|perform|fish into|so close', 150000);
ex := InJournalBetweenTimes( 'no fish|location|Far|in water|elsewhere|Target cannot|fish into|seem to be biting here|so close', sTime, Now );
until ( ex >= 0 );
loot;
if Weight >= MaxWeight-100 then
begin
CurrentX:= GetX(self);
CurrentY:= GetY(self);
NewMoveXY(Bankx, Banky,True,0,True);
UOSAY('Bank')
wait(1000);
Unload;
NewMoveXY(CurrentX, CurrentY,True,0,True);
end;
end;
end;
end;
begin
SetPauseScriptOnDisconnectStatus(True);
SetARStatus(True);
while not dead do
begin
NewMoveXY(Loc1x, Loc1y,True,0,True);
Fish;
NewMoveXY(Loc2x, Loc2y,True,0,True);
Fish;
NewMoveXY(Loc3x, Loc3y,True,0,True);
Fish;
NewMoveXY(Loc4x, Loc4y,True,0,True);
Fish;
NewMoveXY(Loc5x, Loc5y,True,0,True);
Fish;
NewMoveXY(Loc6x, Loc6y,True,0,True);
Fish;
NewMoveXY(Loc7x, Loc7y,True,0,True);
Fish;
end;
end.