XGM Forum
Сайт - Статьи - Проекты - Ресурсы - Блоги

Форуме в режиме ТОЛЬКО ЧТЕНИЕ. Вы можете задать вопросы в Q/A на сайте, либо создать свой проект или ресурс.
Вернуться   XGM Forum > Warcraft> Академия: форум для вопросов> Jass
Ник
Пароль
Войти через VK в один клик
Сайт использует только имя.

Закрытая тема
 
Diaboliko
Silenced by Diaboliko
offline
Опыт: 16,108
Активность:
Таймер/триггер/Help!
Прошу дать небольшой "урок" по таймерам(или что там вместо PolledWait используют...) С ПРИМЕРОМ!

Так же вопрос по оптимизации: вот если в GUI *If Then Else* обратить в текст, получается 2 функции... вопрос: Так можно ли это преобразовать в первое(например *function* zsdfbgrsb_Conditions *takes* nothing *return* nothing. Там будет условие, после которого или *return* false или *return* true. Так можно ли вместо *return* true поставить действия следующей функции (*function* zsdfbgrsb_Actions *takes* nothing *return* nothing))

Затем... Вот очень нужно понять как триггер сделать в триггере... У меня всегда ошибка... Например мне нужно, чтобы после... ну пусть будет после *call* UnitRemoveAbility(udg_unit, *'Bstu'*) и после этого мне надо сделать триггер с событием Периодическое 0,2. Вот каким образом и главное куда мне это засунуть?... Прошу показать пример.

Ну и наконец прошу помочь мне с этим.
Старый 01.10.2009, 16:54
NETRAT

offline
Опыт: 83,712
Активность:
Старый 01.10.2009, 17:01
_Red

offline
Опыт: 4,095
Активность:
Пиши в приват, помогу чем смогу
Старый 01.10.2009, 17:05
Diaboliko
Silenced by Diaboliko
offline
Опыт: 16,108
Активность:
NETRAT спасибо, но этого маловато будет...

Diaboliko добавил:
Мне просто нужно предельно оптимизированное все... поэтому хотелось бы сперва получить ответ на 2 вопрос...
Старый 01.10.2009, 17:09
NETRAT

offline
Опыт: 83,712
Активность:
я почти ниче не понял по вопросу, но преобразование гуи в жасс исключительно кривое, ручками нужно писать
да, очень часто триггеры пишут вообще без кондишна, кондишн запихивают в экшн в виде проверки типа
if <условие не выполняется> then return
NETRAT добавил:
по последнему абзацу - в триггере пишешь после твоего call UnitRemoveAbility(udg_unit, *'Bstu'*)
call TimerStart( MyTimer, time, false, function TimerFunc) - остальной код написан в первой теме
Старый 01.10.2009, 17:18
Diaboliko
Silenced by Diaboliko
offline
Опыт: 16,108
Активность:
Я поверхностно понял, что ты сказал, но можешь привести пример? И, кстати, может наоборот(не кондишн в экшн а наоборот)?
Старый 01.10.2009, 17:19
NETRAT

offline
Опыт: 83,712
Активность:
непонятно зачем тебе писать оптимизированно если ты вообще никак не можешь... сначала hello world с таймерами изучи а потом оптимизируй
Старый 01.10.2009, 17:19
Diaboliko
Silenced by Diaboliko
offline
Опыт: 16,108
Активность:
Посмотрим...
Старый 01.10.2009, 17:20
NETRAT

offline
Опыт: 83,712
Активность:
экшн переносить в кондишн - моветон, впрочем, я ни разу такого идиотизма не видел
Старый 01.10.2009, 17:20
Diaboliko
Silenced by Diaboliko
offline
Опыт: 16,108
Активность:
МНЕ НАДО МАПЫ ДЕЛАТЬ А НЕ ПАРИТЬСЯ ЛИШНИЙ РАЗ С ИЗучеНИЕМ! Понятно? З.Ы. Это не капс.

Diaboliko добавил:
Я тебя придушил(мысленно). НУ ПРИВЕДИ ПРИМЕР, ЕСЛИ ТАКОЙ УМНЫЙ))) Понимаешь, я оптимизацию только изучаю... Вот остатки надо познать..
[+] 5 пунктов от ScorpioT1000: Оскорбления + капс
Старый 01.10.2009, 17:22
_Red

offline
Опыт: 4,095
Активность:
я тебе все обьясню, смотри приват
Старый 01.10.2009, 17:23
Diaboliko
Silenced by Diaboliko
offline
Опыт: 16,108
Активность:
Гм... А мну в теме(последняя строка) писали про какую-то приват функшн...

Diaboliko добавил:
NETRAT как ты можешь это обусловить?
Старый 01.10.2009, 17:25
NETRAT

offline
Опыт: 83,712
Активность:
после того сообщения я начал троллить...
просто посмотри как это сделано у других и сделай так же
допустим, с PolledWait ты код написал, дальше тебе нужно избавиться от PolledWait, заменяешь его на
call TimerStart(CreateTimer(), time, false, function TimerFunc)
и переносишь оставшийся кусок кода в функцию
function TimerFunc
разумеется, что бы использовать общие переменные в разных функциях нужно либо глобальными переменными пользоваться либо кешем
NETRAT добавил:
private не относится к синтаксису Jass, это vJass и cJass
я тебе говорю что оптимизацию следует изучать уже после того как имеются хоть какие то познания в области - начинай с простых задач
Старый 01.10.2009, 17:32
Elf_Stratigo

offline
Опыт: 4,699
Активность:
а даёт ли какой-нибудь положительный/отрицательный прирост в быстродействии перенос кондишина в екшен?
Старый 01.10.2009, 19:46
Diaboliko
Silenced by Diaboliko
offline
Опыт: 16,108
Активность:
Не знаю, но просто в гуи (2 кондишна) в случае ошибки проверяется 2 функции, а в моем случае, проверяется лишь одна... Это не особо влияет, но тем- не менее... Ну и на этом спасибо... Нетрат... Я "немного" не понял твоих слов... Скажем так... >^_^< Ну вот пообщался я с РЕДом и он мне написал триггер, я его выкидывать сюда не буду, но тем, не менее там было такое:
Globals
private ...
endglobals
Ну он мне объяснил, но все-таки я не особо понял... Может кто- нибудь пример скинуть их использования что-ли???
Старый 09.10.2009, 10:00
JamesBlack
black mind
offline
Опыт: 6,595
Активность:
Дьяболико... Тебе нетрат уже раз 10 сказал. В статьях все написано, там же приведены примеры!!!

В статьях Jon'а, ADOLF'а все передельно ясно расписано!

Если тебе лень прочитать их и понять, то смысл, что кто-то будет убиваться тут ради тебя, объясняя элементарные вещи???
Старый 09.10.2009, 10:36
Diaboliko
Silenced by Diaboliko
offline
Опыт: 16,108
Активность:
Омг... Ладно... И на этом спасибо... Буду разбирать... Закрывайте тему.
Старый 09.10.2009, 12:25
Закрытая тема

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы можете скачивать файлы

BB-коды Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход



Часовой пояс GMT +3, время: 01:00.