Code: Select all
program Fishing; {(c)Made by Slak}
type FishR = record
Tile:word;
X,Y,Z:integer;
end;
const
FishFile = 'Tiles.txt'; // {Имя файла с координатами тайлов...скинуть в папку где сам скрипт}
pole = $0DBF; //тип удочки
dagger = $0f51; //тип дагера
var FishP: array [0..333] of FishR;
CountDim,i : Integer;
stime : TDateTime;
{$Include 'all.inc'}
procedure GetRail(FileNam : String);
var
List : TStringList;
i : integer;
s : string;
begin
List := TStringList.Create;
List.LoadFromFile(FileNam);
for i := 0 to List.Count-1 do
begin
s := List.strings[i] + ' ';
FishP[i].Tile := StrToInt(Copy(s,1,Pos(' ',s)-1));
Delete(s,1,Pos(' ',s));
FishP[i].X := StrToInt(Copy(s,1,Pos(' ',s)-1));
Delete(s,1,Pos(' ',s));
FishP[i].Y := StrToInt(Copy(s,1,Pos(' ',s)-1));
Delete(s,1,Pos(' ',s));
FishP[i].Z := StrToInt(Copy(s,1,Pos(' ',s)-1));
Delete(s,1,Pos(' ',s));
end;
CountDim := i-1;
end;
procedure moved;
var bag : Cardinal;
Begin
repeat
findtype($0e75,ground);
if (FindCount >= 1) and (GetDistance(finditem) <=2) and (GetDistance(finditem) >=0) and connected and (not dead) then begin
bag := finditem;
useobject(bag); wait(1000);
grab(findtype($0EED,bag),0); wait(500);
Ignore(bag);
findtype($0e75,ground);
end;
until (FindCount < 1) or dead;
{wait (1000);
FindType($099f, backpack);
while (FindCount > 0) do
begin
DropHere(FindItem);
wait(600);
end;}
End;
Begin
SetARStatus(true);
Hungry(2,backpack);
clearjournal;
IgnoreReset;
GetRail(FishFile);
while true do
begin
while Connected and (not dead) do
begin
useobject(backpack);
if ( GetType(ObjAtLayer(RhandLayer))<>dagger ) and Connected and (not dead) then
begin
if ObjAtLayer(LhandLayer)<>0 then unequip(LhandLayer); wait(1000);
if ObjAtLayer(RhandLayer)<>0 then unequip(RhandLayer); wait(1000);
useobject(backpack); wait(1000);
findtype(dagger, backpack);
if (FindCount > 0) then Equip(RhandLayer,finditem); wait(1000);
end;
for i := 0 to CountDim do
begin
repeat
stime := Now;
CheckSave;
usetype(pole,$FFFF);
WaitForTarget(5000);
if TargetPresent then TargetToTile(FishP[i].Tile,FishP[i].X,FishP[i].Y,FishP[i].Z); //координату z на свою менять нада!!!
CheckTargetError(5,2);
WaitJournalLine(now,'seem to|stop|far away|t use that',30000);
moved;
until (InJournalBetweenTimes('seem to|far away|t use that', stime, Now) >= 0) or dead;
end;
Hungry(2,backpack);
end;
wait(100);
end;
End.
Имеется вот такой скриптик. Хотелось что бы при произнесении определенной фразы, например give me my fish, чар скидывал на землю нарезаную рыбу которую он наловил.

помогите пожжалуста.