В общем был нубом в инжекте, но разобрался и теперь могу без особых трудностей там написать разные скрипты. А вот со стелсом беда. Видимо так малая часть мозгов повернута не правильно, и я ну совсем не понимаю как работать. Но тем не менее что-то пытаюсь все равно.
В общем дело такое:
Несколько чаров стоят на одном и том же тайле. В радиусе 2х тайлов от них есть овечки (более 200 штук), которые так же стоят все на одном и том же тайле.
Механика: поиск овечки с шерстью, даблклик на дагер в сумке и таргет на найденную овечку на земле. И так до тех пор пока в сумке не будет 150 комков шерсти (с одной овечки 3 компа шерсти).
Далее переработка шерсти в комочки ниток. Даблклик по шерсти в сумке и таргет на колесо (Spining Wheel) в сумке. [тут бывает глюк иногда и это колесо зависает с другим типом. Исправление - один раз так же использовать на нее комок шерсти].
Далее переработка ниток в рулоны ткани. Даблклик по ниткам в сумке и таргет на Loom возле чара на земле.
Ну и дальше проверка на вес. Если вес больше 20к, то сбрасываем под ноги рулоны ткани.
Вот скрипт стелсовый который слепил из чужих других. Уверне что вы увидите там много ужасного и недопустимого. Сразу сори, но не могу я понять паскаль((
Code: Select all
Program ovechki;
{$Include 'all.inc'}
VAR t : Integer;
Begin
while true do
begin
IgnoreReset;
while not connected do
begin
AddToSystemJournal('Нет конекта');
wait(1000);
end;
while connected do
begin
wait(10000)
uosay('.pray');
t:= 0;
repeat
FindType($00CF,ground);
if (findcount > 0) then
begin
WaitTargetObject(finditem);
UseObject(FindType($0F51,Backpack));
wait(100);
t:= t + 1;
end;
if targetpresent then
begin
targettoobject(self);
end;
Until (findcount<1) or (count($0DF8)>5) or (t > 200);
repeat
FindType($0DF8,Backpack);
if (findcount > 0) then
begin
if (count($1016)>0) then
begin
WaitTargetObject(FindType($1016,Backpack));
UseObject(finditem);
t:= 0;
ClearJournal;
uosay('Нашел порченное колесо. Исправляем.');
repeat
wait(100);
t:= t + 1;
Until (injournal('create')<>-1) or (t > 200);
if targetpresent then
begin
targettoobject(self);
end;
end;
WaitTargetObject(FindType($1015,Backpack));
UseObject(FindType($0DF8,Backpack));
t:= 0;
ClearJournal;
repeat
wait(100);
t:= t + 1;
Until (injournal('create')<>-1) or (t > 200);
if targetpresent then
begin
targettoobject(self);
end;
end;
Until (findcount<1);
repeat
if (count($0E1F) > 4) then
begin
WaitTargetObject(FindType($105F,ground));
UseObject(FindType($0E1F,Backpack));
t:= 0;
ClearJournal;
repeat
wait(100);
t:= t + 1;
Until (injournal('cloth')<>-1) or (t > 200);
if targetpresent then
begin
targettoobject(self);
end;
end;
Until (count($0E1F) < 4);
if (weight > 20000) then
begin
Findtype($0F95,Backpack);
MoveItem(finditem,findquantity,ground,0,0,0);
wait(1000);
end;
end;
end;
end.
Сразу отвечу почему не остаюсь на инжекте. Там не удается реализовать реконнектор, так как зачастую серверные скрипты шарда зависают и получается шляпа. Ну и ресурс компа клиентами кушать нет возможности.
Проблема с существующим скриптом. В общем непонимаю в чем причина... чар щипает овечек как положенно... перерабатывает шерсть... то бишь все делает один полный цикл правильно, а вот при втором круге цикла зависает, потом начинает реконнектиться.. и впринципе вссе на этом. Овечки стоят нещипанные, макросы стоят тупят. Помогите пожалуйста.
З.Ы. Почему тут спойла нет?(