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

Управление из одного скрипта другим

Only working scripts
sadX_Xface
Neophyte
Neophyte
Posts: 34
Joined: 10.04.2012 11:28

Re: Управление из одного скрипта другим

Post by sadX_Xface »

последний вопрос по теме)
правильно ли я понял логику?
1) В начале скрипта ставим "ловушку" на евент

Code: Select all

SetEventProc(evDrawObject,'awareness');
2) далее в духе:

Code: Select all

playertype[1] := $0190;
playertype[2] := $0191;
finddistance := 20;
//

procedure awareness(ID : Cardinal);
begin
//далее GetType по ID сравнение с заранее задаными типами и если нужно действие.
end;
Так вот еще один мини-вопрос. В этом конкретном случае, т.к. Эвент и вызов процедуры соответственно будет выполняться вне основного цикла скрипта, как основной скрипт поставить на паузу? В упор не могу найти... или у меня тут не правильная логика? можно конечно использовать какой-нибудь глобальный флаг и каждый раз в теле скрипта смотреть не пора ли спрятаться и затаиться на Х-секунд. Как наиболее правильно реализовать эту задачу (по эвенту отрисовки перса определить пк или нет и захайдится и затаиться на х-секунд)?
User avatar
Vizit0r
Developer
Developer
Posts: 3958
Joined: 24.03.2005 17:05
Contact:

Re: Управление из одного скрипта другим

Post by Vizit0r »

чисто технически, ивент отрабатывается во время вызова Wait. Причем стоит учесть, что wait выполняется внутри многих скриптовых методов, типа WaitJournalLine и прочее.

а насчет задержки в основном скрипте - ну да, проверками. Других вариантов вобщем-то нет, и не может быть технически.
"Пишите код так, как будто сопровождать его будет склонный к насилию психопат, который знает, где вы живете". (с) Макконнелл, "Совершенный код".
nah nah
Developer
Developer
Posts: 414
Joined: 13.07.2011 11:23
Contact:

Re: Управление из одного скрипта другим

Post by nah nah »

не забудь снять обработчик на время проверок
sadX_Xface
Neophyte
Neophyte
Posts: 34
Joined: 10.04.2012 11:28

Re: Управление из одного скрипта другим

Post by sadX_Xface »

Vizit0r wrote:чисто технически, ивент отрабатывается во время вызова Wait. Причем стоит учесть, что wait выполняется внутри многих скриптовых методов, типа WaitJournalLine и прочее.
что-то у меня теперь сомнения что с ивентом будет лучше чем с простым поиском...
nah nah
Developer
Developer
Posts: 414
Joined: 13.07.2011 11:23
Contact:

Re: Управление из одного скрипта другим

Post by nah nah »

sadX_Xface wrote:
Vizit0r wrote:чисто технически, ивент отрабатывается во время вызова Wait. Причем стоит учесть, что wait выполняется внутри многих скриптовых методов, типа WaitJournalLine и прочее.
что-то у меня теперь сомнения что с ивентом будет лучше чем с простым поиском...
у лесорубов? когда они ходят, рубят, ждут рекола и т.д. по-моему и секунды не проходит без wait'а
User avatar
Vizit0r
Developer
Developer
Posts: 3958
Joined: 24.03.2005 17:05
Contact:

Re: Управление из одного скрипта другим

Post by Vizit0r »

для простых скриптеров стоит считать, что ивенты срабатывают моментально, и действовать соответственно.
"Пишите код так, как будто сопровождать его будет склонный к насилию психопат, который знает, где вы живете". (с) Макконнелл, "Совершенный код".
drabadan
Expert
Expert
Posts: 730
Joined: 13.12.2012 17:35
Contact:

Re: Управление из одного скрипта другим

Post by drabadan »

Vizit0r wrote:для простых скриптеров стоит считать, что ивенты срабатывают моментально, и действовать соответственно.
да для любых я думаю, быстрее пинга же один хер оно случится. Какой смысл учитывать условности быстрее пинга.
Post Reply