Yoko

All sides of Injection
It is currently 2026-01-17 05:54:50

All times are UTC+02:00




Post new topic  Reply to topic  [ 1 post ] 
Author Message
 Post subject: Поесонинг
PostPosted: 2004-09-11 20:46:23 
Offline

Joined: 2004-08-23 22:00:18
Posts: 8
# Скрипты на поисонинг, версия 0.1
# © ZD aka [BaD]SensaDue)

# P.S. Некоторые скрипты используют особенность шарда DreamWorld (POL)
# и должны быть адаптированы для исопльзования на других шардах

# ------------ НАСТРОЙКИ СКРИПТА

var zd_poison_kegs_container="0x65FB269C";
var zd_empty_kegs_container="0x670F6EDF";
var zd_poison_object="0x67AB163A";

# ---------- ОБЪЯВЛЕНИЕ ТИПОВ

var food=0x097B;
var keg=0x1940;
var deadly_poison_potion=0x0F0A;
var empty_bottle=0x0F0E;

# ---------- ОБЪЯВЛЕНИЕ ВНУТРЕННИХ ПЕРЕМЕННЫХ

# Режим отладки: inject/client/off
var zd_debug_mode="inject";

# Время таймаута в 1/10 с
var zd_timeout_delay=100;
var zd_stuck_timer=0;

# Интервал между какими-либо вспомогательными действиями,
# совершаемыми клиентом. Например при кликах мышкой и т.п.
# Обычно нужен, что дождаться ответа от сервера. Рекомендуемое значение
1000-1500
# Устанавливается в миллисекундах, т.е. 1000=1 сек
var zd_pause_delay=1000;

var zd_skill_delay=11000;

UO.Set("finddistance","2");

# ---------- ОБЪЯВЛЕНИЕ ВСПОМОГАТЕЛЬНЫХ Ф-ЦИЙ

# Вывод необязательных вспомогательных сообщений, обычно в клиент, но можно
# их и "произносить" и писать в файл, например.
sub zd_debug(s)
if (zd_debug_mode=="inject") then
UO.Print(s);
endif
if (zd_debug_mode=="client") then
UO.ServerPrint(s);
endif
endsub

sub zd_detect_worldsave()
var i=UO.InJournal("Saving World State");
if i then
zd_debug("Сохранение мира ...");
wait(25000);
UO.DeleteJournal();
return 1;
endif
return 0;
endsub

# Если не найден - то будет пытаться поднять qty его с пола.
sub zd_has_type(type,name,min_qty,max_qty)
var tmp_count;

tmp_count=UO.Count(type);# Ф-ция проверяет, есть ли нужный тип в бэкпаке.

if tmp_count>=min_qty then
return 1;
endif

#ищем в сундуке
UO.FindType(type,-1,zd_poison_kegs_container);
if UO.FindCount()>0 then
zd_debug("Возьмём из сундука "+str(max_qty-tmp_count)+" "+name+", чтобы стало
"+str(max_qty)+" ...");
UO.Grab(str(max_qty-tmp_count),"finditem");
wait(zd_pause_delay);
else
zd_debug(name+" в сундуке не обнаружено !");

#ищем на земле
UO.FindType(type,-1,"ground");
if UO.FindCount()>0 then
zd_debug("Возьмём с пола "+str(max_qty-tmp_count)+" "+name+", чтобы стало
"+str(max_qty)+" ...");
UO.Grab(str(max_qty-tmp_count),"finditem");
wait(zd_pause_delay);
else
zd_debug(name+" в пределах досягаемости не обнаружено !");
endif

endif

tmp_count=UO.Count(type);
if tmp_count>=min_qty then
return 1;
endif

return 0;
endsub

# Ф-ция выкидывает type в container/"ground", возможно указать цвет
sub zd_drop_type(type,name,container,color)
var my_serial=0;
var my_color=-1;

UO.IgnoreReset();

if color==0 then
color="-1";
endif

while UO.Count(type)>0
UO.FindType(type,color,"backpack");
my_serial=UO.GetSerial("finditem");
my_color=UO.GetColor(my_serial);
if container=="ground" then
UO.FindType(type,my_color,"ground");
if UO.FindCount()>0 then
UO.MoveItem(my_serial,"0","finditem","0","0","0");
else
UO.DropHere(my_serial);
endif
else
UO.MoveItem(my_serial,"0",container);
endif
UO.Ignore(my_serial);
zd_debug("Скидываю "+name+" в сундук.");
wait(zd_pause_delay);
wend
endsub

# Независимая ф-ция, которая постоянно подкармливает персонаж, если он голоден.
sub zd_hungry()
var hungry=1;

while hungry==1
UO.DeleteJournal();
UO.ServerPrint(".hungry");
while not UO.InJournal("You")
wait(50);
wend
if not UO.InJournal("stuffed") then
if (zd_has_type(food,"Еды",1,20)) then
zd_debug("Кушаю ...");
UO.UseType(food);
wait(zd_pause_delay);
else
zd_debug("Я голоден, но у меня нет еды !!!");
hungry=0;
endif
else
hungry=0;
endif
wend
endsub

sub zd_action_failed()
if (UO.InJournal("already") or UO.InJournal("must wait") or
UO.InJournal("cancelled")) then
return 1;
endif

return 0;
endsub

sub zd_swap_kegs()

UO.FindType(keg,"-1","backpack");
if UO.FindCount()>0 then
# if UO.GetName("finditem")<>
else
zd_exchange_kegs();
endif


endsub

# ------------------------------------------------

sub zd_poisoning()
UO.AddType("poison",deadly_poison_potion);
zd_hungry();

start_poisoning:
UO.DeleteJournal();
zd_hungry()
UO.Poison(zd_poison_object);
wait(zd_skill_delay/2);
UO.UseType(keg);
wait(zd_skill_delay/2);


#проверяем, нужен ли новый кег
if UO.InJournal("is empty") or UO.InJournal("no item found") then
zd_hungry();
zd_drop_type(keg,"пустой кег",zd_empty_kegs_container,"0");
zd_has_type(keg,"кег пойсона",1,1);
endif

goto start_poisoning;
endsub

Помогите разобраться мне дали скрипт а я не шарю в инжэкте да такой степени что это все понять сделайте чтоб просто Инды и Тупы вставить и все ок


Top
   
Display posts from previous:  Sort by  
Post new topic  Reply to topic  [ 1 post ] 

All times are UTC+02:00


Who is online

Users browsing this forum: No registered users and 3 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
cron
Powered by phpBB® Forum Software © phpBB Limited