Forum in READ ONLY mode! All questions and discussions on Discord official server, invite link: https://discord.gg/VxsGzJ7

отмена гампа при экзепте...

тут можно задать вопрос по скриптингу
Post Reply
Flash
Posts: 5
Joined: 03.11.2006 17:39

отмена гампа при экзепте...

Post by Flash »

У нас на шарде, когда делаешь исключительную вещь вылазит гамп, где спрашивается хотите ли вы пометить вещь своим именем... собвстенно пока не нажмешь на ОК или Cancel крафт работу прекращает.
У меня есть скрипт на инже...

Code: Select all

sub ex()

uo.recall('self','1')

while not uo.dead()

if uo.injournal("You make an exceptional") or uo.injournal("exceptional item in you")then

uo.deletejournal()

uo.recall('self','1')

wait(500)

end if

wait(1000)

wend

end sub
И вот мой вопрос... Какой в стелзе есть аналог функции uo.recall('self','1') инжектовской? И есть ли такая?
в инже она имеет формат uo.recall('рунбука','номер руны'), а как в стелзе?
Alex
Moderator
Moderator
Posts: 351
Joined: 07.04.2005 4:41

Post by Alex »

waitgump('1234')

что бы отменить пойманный гамп waitgump('0')
Flash
Posts: 5
Joined: 03.11.2006 17:39

Post by Flash »

Alex wrote:waitgump('1234')

что бы отменить пойманный гамп waitgump('0')
Спасибо, постараюсь сделать :)
DerMeister
Novice
Novice
Posts: 54
Joined: 19.11.2006 17:35

Post by DerMeister »

И не стоит забывать, что еще бы неплохо сам процес крафта чего либо из стелса запустить... Хотя можно запустить через обчниый клиент, а потом стел оперативно подсоединить...
Вот моё решение (для крафта банок):

Code: Select all

program craft_autoexept;

{$Include 'all.inc'}

const
TT      =  $1EBC;
Pesok   =  $1BF5;
eb      =  $0F0E;

Begin
 wait(1000);
 waitconnection(10000);
 checksave;
 CancelMenu;
 WaitMenu('What', 'Alchemical Tools'); 
 WaitMenu('make', 'Empty Bottle'); 
 if TargetPresent then CancelTarget; 
 WaitTargetType(Pesok);
 usetype(TT,$ffff);
 wait(1000);

 while ((count(Pesok) > 0) or not(Connected)) do
  begin
   waitconnection(10000);
   checksave;
   WaitGump('0001');
   FindType(eb,backpack);
   if (FindCount > 5) then Grab(FindItem,0);
   wait(1000);
  end;
 AddToSystemJournal('End of script');
END.
Только реконнектор нужно секунд на 20 ставить, иначе если крафт банок прекратится, что нужно будет скрипт заного заускать.
Tin
Posts: 3
Joined: 12.01.2007 22:27

Post by Tin »

ну это не выход, на самом деле скрипт не срабатывает (т.е. waitgump не срабатывает) ты висишь некоторое время с гампом, пока тебя не дисконнектит за бесдействие и после реконнекта гампа уже нет, а ты со шмоткой без имени... (тестил сам лично, играю на томже шарде)
всёже вопро к опытным программерам, можно ли automenu применить?
и вообще как заставить waitgump работать?


_____infogump_______
serial 0x000b3cc6
gumpid 0x3c4353e9
X 0
Y 0
175 packet size
0 reply packet size
Buttons: ________
page 0
1 [ 1] image=0x0851 at 30:75
2 [ 0] image=0x0848 at 90:75
Checks&Radios: __
Entryes: ________
All commands: ____
1] page 0
2] gumppic 0 0 2070
3] button 30 75 2130 2129 1 0 1
4] button 90 75 2119 2120 1 0 0
5] text 40 30 1355 0
Text: ____________
0] Add Builder Mark?

реплай 0001 и 0000
Miralex
Developer
Developer
Posts: 656
Joined: 11.03.2005 19:12
Contact:

Post by Miralex »

Автоменю - это совсем другое. К гампу оно не имеет ни малейшего отношение. Просьба их не путать.

Если надо отменить гамп, то WaitGump('0');
SLAK
Novice
Novice
Posts: 65
Joined: 15.01.2006 3:20

Post by SLAK »

WaitGump('0') - чего-то нефурычило на этом меню ещё с 0,95ь версии
Я всегда использовал поэтому WaitGump('1'), и ничё - работало.
Post Reply