| Yoko http://forum.yoko.com.ua/ |
|
| Защита запуска. http://forum.yoko.com.ua/viewtopic.php?f=20&t=7687 |
Page 1 of 2 |
| Author: | Krelyn [ 2006-05-15 14:55:18 ] |
| Post subject: | Защита запуска. |
Я не хочу чтобы скрипт запускался более чем в одном экземпляре т.е. как бы я не хитрил с переменными - заблокировать запуск скритов - всегда можно запустить второ скрипт просто зажав кнопку.... Пример того что должно быть саб Вася() иф саб Вася уже включен конец скрипта элс уо.мсг("Хай, я Вася,не килл плиз!") ендиф енд саб как можно сделать чтобы скрипт не запускался если аналогичный включен? |
|
| Author: | Scripts Writer [ 2006-05-15 16:11:06 ] |
| Post subject: | |
Тоже ранее замарачивался такой штукой, когда нужен был хайдинг в пвп-но частенько жмёшь 2 раза и один хайд другому мешает ... я выходил из этой ситуации биндом на кнопку-отключение скрипта. |
|
| Author: | Krelyn [ 2006-05-15 16:27:57 ] |
| Post subject: | |
я просто не весь скрипт выложил......я написал так что второй скрипт запустится только если зажать кнопку)т.е. независимо от скорости нажатия всёравно 2 открывается..не всегда но часто........для меня бинд на завершение скрипта- не выход =(...вот буду думать.... |
|
| Author: | Scripts Writer [ 2006-05-15 21:53:39 ] |
| Post subject: | |
Попробуй привязаться к журналу или же действию скрипта ... ( допустим при обкасте-привязка к увеличению брони , при лорах-привязка к месагам в журнале ). |
|
| Author: | Mihail [ 2006-05-16 00:21:49 ] |
| Post subject: | |
уо.сетГлобал уо.гетГлобал уо.сетИзиУо уо.гетИзиУо |
|
| Author: | Krelyn [ 2006-05-16 07:53:44 ] |
| Post subject: | |
Сет и Гет пробовал - работает, но второй всёранво проскакивает если кнопку зажать....... Может попробовать запуск скрипта из конфига УО? типа макрос в УО - Say ,exec bot там ненастолько сильно быстро залипание клавиш) или может что нить можно сделать с залипанием клавиш чтоб помедленнее?) |
|
| Author: | DerMeister =) [ 2006-05-16 08:17:17 ] |
| Post subject: | |
Krelyn wrote: Сет и Гет пробовал - работает, но второй всёранво проскакивает если кнопку зажать.......
Может попробовать запуск скрипта из конфига УО? типа макрос в УО - Say ,exec bot там ненастолько сильно быстро залипание клавиш) или может что нить можно сделать с залипанием клавиш чтоб помедленнее?) В настройках клавиатуры в виндовсе поставь задержку перед началом повтора побольше, а скорость повтора уменьши =) |
|
| Author: | Grin [ 2006-05-16 08:43:53 ] |
| Post subject: | |
при использовании глобальных переменых ничего никогда не проскочит... Но лутше всего устанавливать переменые на запрет на какоето время... не на все время действия это что бы избежать повторов при на чале действия (зажими и тд) а если не обходими обезопасить скрипт полностью до завершенито больше интервал ожидания ставим или по завержению фцнкциональной ычасти скрипта. в случаи таймера есть проблема в передачи параметров... Возникают сложности когда необходими гарантировать 100% передачу параметров Code: sub SetTimer() PS В новом скриптовом модуле планируется организзовать передачу параметров скриптам вызваных через exec |
|
| Author: | SLAK [ 2006-05-16 09:30:46 ] |
| Post subject: | |
Grin wrote: В новом скриптовом модуле планируется организзовать передачу параметров скриптам вызваных через exec
Это хорошо... |
|
| Author: | Krelyn [ 2006-05-16 22:03:48 ] |
| Post subject: | |
Grin wrote: при использовании глобальных переменых ничего никогда не проскочит...
Но лутше всего устанавливать переменые на запрет на какоето время... не на все время действия это что бы избежать повторов при на чале действия (зажими и тд) а если не обходими обезопасить скрипт полностью до завершенито больше интервал ожидания ставим или по завержению фцнкциональной ычасти скрипта. в случаи таймера есть проблема в передачи параметров... Возникают сложности когда необходими гарантировать 100% передачу параметров Code: sub SetTimer() PS В новом скриптовом модуле планируется организзовать передачу параметров скриптам вызваных через exec просто по привычке юзаю переменную Изи т.к. работаю тесно с ней...попробую через глобальную.......надеюсь помогет) спасибо |
|
| Author: | Grin [ 2006-05-16 22:24:32 ] |
| Post subject: | |
да хоть СетИзи разници почти 0 просто лезть в рееестор что бы хранить там переменые... помойму это бредовато;) куда ближе сетглобал;) |
|
| Author: | Edred [ 2006-05-17 00:13:03 ] |
| Post subject: | |
Grin wrote: лезть в рееестор что бы хранить там переменые... помойму это бредовато;) куда ближе сетглобал;)
Объясни это Дестракшену... |
|
| Author: | Savage [ 2006-05-17 08:28:16 ] |
| Post subject: | |
Это оправдано токо в одном случае, когда с переменной работают несколько запущенных инжектов. |
|
| Author: | Krelyn [ 2006-05-17 09:37:43 ] |
| Post subject: | |
sub healcast() if uo.GetGlobal("Cast")== "0" then uo.SetGlobal('Cast','1') uo.cast("Heal","self") var xmana = uo.mana while xmana == uo.mana wait(5) wend uo.SetGlobal('Cast','0') endif endsub как не пытаюсь.....если зажать кнопку с хилом проскакивают 2..... |
|
| Author: | Grin [ 2006-05-17 12:53:40 ] |
| Post subject: | |
страна почему он вообще работал;)) Просто в твоем случаи нужно проинициализировать глобальную переменую... а в скрипте в самом начале просто поставь задержку маленьку... хотястрано времени в полне должно хватать что бы запуск был только единожды... одно дело что утебя не много другая система магии и мана забирается сразуже Code: sub healcast() |
|
| Author: | Savage [ 2006-05-17 13:01:08 ] |
| Post subject: | |
Попробуй так что ли, но лучше наверное делать через очередь. Видел тут кто то кидал конвейер кастов. А может проще тренировать руки? Code: sub healcast() |
|
| Author: | Grin [ 2006-05-17 13:06:05 ] |
| Post subject: | |
Толку от конвеера? Если там и тут используются глобальные переменый которые почемуто не успевают выстовиться... |
|
| Author: | Savage [ 2006-05-17 13:32:26 ] |
| Post subject: | |
Ну если отрывисто нажимать кнопки но раньше времени окончания работы скрипта то все будет норм, а если зажимать то и никакая пауза в начале скрипта не поможет. А от конвейера будет толк - либо он удалит из очереди лишний вызов скрипта либо исполнит его. При зажимании хоткея просто очередь наполнится вызовами скрипта. А процедура обработки конвейера не станет два раза одновременно запускать один скрипт. Вообщем такой подход надежнее по моему. |
|
| Author: | Krelyn [ 2006-05-17 16:44:50 ] |
| Post subject: | |
я скрипт не себе пишу......я итак кастую далеко не медленно......уу меня на конекте руками быстрее намного т.к. заранее таргет кидаю ......а с этим лучше придумайте что нить) |
|
| Author: | Grin [ 2006-05-17 18:11:39 ] |
| Post subject: | |
Savage wrote: Ну если отрывисто нажимать кнопки но раньше времени окончания работы скрипта то все будет норм, а если зажимать то и никакая пауза в начале скрипта не поможет.
А от конвейера будет толк - либо он удалит из очереди лишний вызов скрипта либо исполнит его. При зажимании хоткея просто очередь наполнится вызовами скрипта. А процедура обработки конвейера не станет два раза одновременно запускать один скрипт. Вообщем такой подход надежнее по моему. ну а как потвойму очеред заполняетя?;)) Если тут в пары строчках глобаьная переменая не успеет востановится... то в конвеер она полюбомуц пройдет... только эфлеект может получится двойного каста... то он откастит нормально но потом все равно еще каст сделает;)) Выход это писать по мима имя скрипта еще и время что бы сравнивал с предыдущим. но как бы это не крак бы это не было плохо;) все зависет как очередь формируется... Если копированием срок то возможно и так все пройдет тосто одновременно сформируется 2 строки которые друг друга переапишут... вообще чушь какого фига глобальная переменая так медленно срабатывает;))) Krelyn там пару постов раньше я предложил тебе вариант с задержкой в начале попробуй его. |
|
| Page 1 of 2 | All times are UTC+02:00 |
| Powered by phpBB® Forum Software © phpBB Limited https://www.phpbb.com/ |
|