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

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

Ответ
 
senatus
тихий и скромный...
offline
Опыт: 7,423
Активность:
Вот у меня трабл со временем
Создаю тригер след вида
События:
  • Каждые 41.00 сек игры
Действия:
  • такие-то.
Мне обязательным образом надо было изменить событие. Хотел написать 41.00 как арифметическую функцию: 41,00 - какая-то реальная переменная.
Создаю переменную типа "реальная", а там пишет, что нет созданных перемнных такого типа. Пробовал и с интеджером (конвертИнтТуРеал) - нифга. То ли глюк у WE'та, то ли фигня какая-то непонятная. Мб там переменные другого типа создавать надо?
Создавать другой триг только из-за этой фигни непрактично да и бессмысленно... Мб кто-то знает.
Старый 05.06.2006, 18:21
MapMan
Corey 8 Taylor
offline
Опыт: 21,554
Активность:
Тобиш ты немогеш в событие переменную вставить???

MapMan добавил:
senatus короче никак. Юзай AddEvent!
Старый 05.06.2006, 18:52
senatus
тихий и скромный...
offline
Опыт: 7,423
Активность:
Utewitel'no... Vot tebe i WE ( pri4em problema toka tut. V drugih mestah peremennye est'..
Старый 05.06.2006, 20:08
J
expert
offline
Опыт: 48,447
Активность:
че у тебя с клавой, я лично трудно понимаю англизкие буквы...
мап мен прав, не указывай событие, а создавай его, при этом можно указывать переменные...
Старый 05.06.2006, 21:30
senatus
тихий и скромный...
offline
Опыт: 7,423
Активность:
Ok. Poprobuem
Старый 05.06.2006, 23:05
FellGuard
Losyash
offline
Опыт: 39,547
Активность:
Просто создавай один "глобальный" триггер ,где раз в сек меняются все значения всех заданных тобой переменных на +1.
И потом другими триггерами отлавливай.

FellGuard добавил:
Так даже можно без локальных триггеров добавлять и убирать спецэффекты...

FellGuard добавил:
..для баффов абил на время
Старый 06.06.2006, 12:51
senatus
тихий и скромный...
offline
Опыт: 7,423
Активность:
Зачем мне постоянно изменять? У меня просто будет действие, которое должно сократить переменную, и что бы таким образом триггер, где есть событие "каждые 41 сек игры" изменилось и действия каждые 38 сек.
Именно с переменной проблемы бы решить...
Старый 06.06.2006, 15:02
MapMan
Corey 8 Taylor
offline
Опыт: 21,554
Активность:
Цитата:
есть событие "каждые 41 сек игры" изменилось и действия каждые 38 сек.

Ты незнаеш как это реализовать??
Старый 06.06.2006, 17:52
J
expert
offline
Опыт: 48,447
Активность:
т.е. ты хочеш изменить событие?
Это не возможно, можно только добавть его, но не удалить и потому изменить...
Старый 06.06.2006, 18:06
senatus
тихий и скромный...
offline
Опыт: 7,423
Активность:
Цитата:
Сообщение от MapMan
Ты незнаеш как это реализовать??

Ты издеваешься?) конечно знаю. только переменную вставить не удается

senatus добавил:
Цитата:
Сообщение от Jon
т.е. ты хочеш изменить событие?
Это не возможно, можно только добавть его, но не удалить и потому изменить...

Я знаю, что не изменить. Но можно изменить переменную. А вот впихнуть её в событие - никак(
Старый 06.06.2006, 18:11
MapMan
Corey 8 Taylor
offline
Опыт: 21,554
Активность:
senatus я же говорю AddEvent - туда можно впихнуть переменную!

MapMan добавил:
Или ты нехочеш создавать ещё один триггер??
Старый 06.06.2006, 18:15
senatus
тихий и скромный...
offline
Опыт: 7,423
Активность:
Цитата:
Сообщение от MapMan
senatus
MapMan добавил:

Или ты нехочеш создавать ещё один триггер??

Именно! он большой...
Старый 06.06.2006, 18:15
MapMan
Corey 8 Taylor
offline
Опыт: 21,554
Активность:
Но(!) ты больше никак несможеш изменить событие, так что придётся))
Старый 06.06.2006, 18:18
senatus
тихий и скромный...
offline
Опыт: 7,423
Активность:
call TriggerRegisterTimerEventPeriodic( GetTriggeringTrigger(), ( 41.00 - udg_cutTime ) )

вот так сделал. Просто добавил в тот триг новое событие. Интересно, так не будет глючить переменная в том триге?

И изменится ли время, если я после добавления события в тот триг изменю значение переменной... по идее должно. Надеюсь. Дома проверю.

senatus добавил:
Цитата:
Сообщение от MapMan
Но(!) ты больше никак несможеш изменить событие, так что придётся))

Да вот хз. Идея хорошая просто...
Старый 06.06.2006, 18:21
J
expert
offline
Опыт: 48,447
Активность:
Цитата:
senatus я же говорю AddEvent - туда можно впихнуть переменную!

Это не зделать, как понял у senatus тригер, событие в котором должно менятся. так? тогда ты не делаеш в тригере никаких событий, но через другой тригер прибавляеш ему событие через переменную, НО в событие добовляется НЕ ПЕРЕМЕННАЯ а ее КОЛИЧЕСТВЕННОЕ ЗНАЧЕНИЕ, потому тебе надо будет обновить событие... но это сделать нельзя т.к. можно добавить событие но не удалить, если же мы добавим ссобытие с новоым значение переменной, то оно дабавится к старому событию и они будут действовоть ввместе, т.е. тригер будет выполнятся в два раза быстрее, т.к. стоит 2 периодических события... вот так вот...
Старый 06.06.2006, 18:22
senatus
тихий и скромный...
offline
Опыт: 7,423
Активность:
Цитата:
Сообщение от Jon
Это не зделать, как понял у senatus тригер, событие в котором должно менятся. так? тогда ты не делаеш в тригере никаких событий, но через другой тригер прибавляеш ему событие через переменную, НО в событие добовляется НЕ ПЕРЕМЕННАЯ а ее КОЛИЧЕСТВЕННОЕ ЗНАЧЕНИЕ, потому тебе надо будет обновить событие... но это сделать нельзя т.к. можно добавить событие но не удалить, если же мы добавим ссобытие с новоым значение переменной, то оно дабавится к старому событию и они будут действовоть ввместе, т.е. тригер будет выполнятся в два раза быстрее, т.к. стоит 2 периодических события... вот так вот...


Спасибо, что разьяснил. Не обижайся, но все это я знал. поэтому и поднял вопрос.
И событий не добавлял. Я на программиста учусь. Все это дело понимаю.
Мне лишь интересно: если написать ( 41.00 - udg_cutTime )
ты уверен, что вместо реальной cutTime она запишет лишь значение перменной, а не её саму? Если так - то оч хреново
Старый 06.06.2006, 18:24
J
expert
offline
Опыт: 48,447
Активность:
Цитата:
Спасибо, что разьяснил. Не обижайся, но все это я знал. поэтому и поднял вопрос.

правдо я говорил это мап мену... что просто его вариант не зделать... ну да ладно...
Цитата:
ты уверен, что вместо реальной cutTime она запишет переменную? Если так - то оч хреново

ты имееш ввиду что в событие запичвается не переменная а ее значение, тогда - да. я уверен.

Jon добавил:
однако есть возможность полностью пересоздать тригер заного, гдето уже говорилось об этом но я не помню где... и на этом ли сайте вообще... но это единственный выход. однако это очень геморно, и нужно хорошое знание джазза. ты скажи для чего это надо, можт есть какойнить обходной путь этой проблемы...
Старый 06.06.2006, 18:29
senatus
тихий и скромный...
offline
Опыт: 7,423
Активность:
Цитата:
Сообщение от Jon
правдо я говорил это мап мену... что просто его вариант не зделать... ну да ладно...


ты имееш ввиду что в событие запичвается не переменная а ее значение, тогда - да. я уверен.
Цитата:
просто там цитата была моя. лан
я отредактировал свой вопрос. Именно это я и имел ввиду.

senatus добавил:
[QUOTE=Jon]
однако есть возможность полностью пересоздать тригер заного, гдето уже говорилось об этом но я не помню где... и на этом ли сайте вообще... но это единственный выход. однако это очень геморно, и нужно хорошое знание джазза. ты скажи для чего это надо, можт есть какойнить обходной путь этой проблемы...

Просто есть триг, который постоянно что-то делает. Я хочу, что бы после определенного момента (которое изменяет значение переменной) время, через которое выполняется это, триг изменился...

senatus добавил:
Все, я догадался как надо. Благо, у меня это время изменяется только 1 раз.

Знач так. Делаем 2 тригера, которые вызывают изначальный триг. В изначальном триге событий не добавляем. В первом триге "каждые 41 сек.", во втором - "каждые 38 сек". Когда выполняется опред событие - отключаем первый и запускаем новый)

догадался...
Старый 06.06.2006, 18:36
J
expert
offline
Опыт: 48,447
Активность:
Цитата:
Просто есть триг, который постоянно что-то делает. Я хочу, что бы после определенного момента (которое изменяет значение переменной) время, через которое выполняется это триг изменился...

нельзя уменьший частоту повтора трига, но можно увеличить, хотя и в этом есть свои минусы

Jon добавил:
Цитата:
Все, я догадался как надо. Благо, у меня это время изменяется только 1 раз.

Знач так. Делаем 2 тригера, которые вызывают изначальный триг. В изначальном триге событий не добавляем. В первом триге "каждые 41 сек.", во втором - "каждые 38 сек". Когда выполняется событие - отключаем первый и запускаем новый)

догадался...

БГАГАГА, да этоже и так понятна, хех... чеш ты сразу не сказал что оно изменяется у тебя только один раз... я думал он периодиески много раз изменяется, а так - это легко... ну ладно... хорошо - проблему решили...
Старый 06.06.2006, 18:38
senatus
тихий и скромный...
offline
Опыт: 7,423
Активность:
Цитата:
Сообщение от Jon
нельзя уменьший частоту повтора трига, но можно увеличить, хотя и в этом есть свои минусы

Jon добавил:

БГАГАГА, да этоже и так понятна, хех... чеш ты сразу не сказал что оно изменяется у тебя только один раз... я думал он периодиески много раз изменяется, а так - это легко... ну ладно... хорошо - проблему решили...

Да чета я зациклился на переменной и ступил. Но, изначально оно у меня изменялось много раз. Однако проблема так и остается, что нельзя в событиях нормально использовать переменные (

и если надо будет решить вопрос именно таким образом (периодиески много раз изменяется) - тада фиг знает как сделать...
Старый 06.06.2006, 18:40
Ответ

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

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

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

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



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