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

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

Ответ
 
Hypnotiksw

offline
Опыт: 448
Активность:
Локалки(проблема)
Начал я изучать Jass, пока что дело продвигается "со скрипом", и походу "скрипа" родилась такая проблема.
Существуют 2 отдельных тригера. В 1 тригере после события направления способности создается ряд локальных переменных типа unit, где unit[1]= допустим юнит-кастер, unit[2]= юнит цель каста. после присвоения локальным переменным данных, запускается тригер №2 с переодичностью допустим в 1 сек, в котором нужно заставить к примеру unit[1] наносить тригерно урон unit[2]. И родилась у меня проблема, что в тригер №2 не понимает меня, когда я заставляю локалку unit[1] наносить урон локалке unit[2], т.е непонимает, кто это вообще( я так думаю). В чем я ошибся, может, что-то где-то забыл, или недописал? Подскажите пожалуста (я понимаю, что проблема нубская, но без решения ее, дело у меня дальше не сдвинется с места)
Старый 21.07.2010, 07:58
ScorpioT1000
Работаем
offline
Опыт: отключен
область жизни и видимости локальной переменной - от начала до конца функции, в которой они находятся.
Старый 21.07.2010, 08:03
Master_chan
Полуночный командир
offline
Опыт: 15,660
Активность:
локалки действуют в пределах одной функции
Старый 21.07.2010, 08:04
Hypnotiksw

offline
Опыт: 448
Активность:
ясно, поэтому у меня тригер №2 ругается=)...и как тогда быть?
Старый 21.07.2010, 08:08
ScorpioT1000
Работаем
offline
Опыт: отключен
пункт "Стек и Аттачи", тебе надо крепить этих юнитов к таймеру
Старый 21.07.2010, 08:12
Hypnotiksw

offline
Опыт: 448
Активность:
я конечно написал упрощенно свой код, как пример, чтобы не грузить своими проблемами чужие мозги, но суть его в том, что тригер №2 каждую долю секунды будет чекать позицию spelltarget, и перемещать молнию, так чтобы она была как-бы привязана к юниту, поэтому отказаться от него я пока-что не смогу в силу недостаточных знаний...или же если в тр№1 перевести локалки в глобалки, то допустим если запустить этот код еще раз другим юнитом-кастером, то начнется свистопляска молний по всему экрану, и действие кода от 1 юнита полетит к "чертям собачьим". Как решить данную проблему?
Старый 21.07.2010, 08:19
Arty3ooo
...
offline
Опыт: 3,125
Активность:
Вообще джасс такая штука в которой не обязательно делить действия на тучу триггеров. Ты мог благополучно создать таймер и наносить дамаг через функцию, прописанную в том же триггере.
Старый 21.07.2010, 08:49
Hypnotiksw

offline
Опыт: 448
Активность:
Arty3ooo:
Вообще джасс такая штука в которой не обязательно делить действия на тучу триггеров. Ты мог благополучно создать таймер и наносить дамаг через функцию, прописанную в том же триггере.
Думаю это выход из положения, *ушел читать статью по таймерам=)
Старый 21.07.2010, 08:59
AlexKARASb
Learning cpp
offline
Опыт: 22,103
Активность:
Hypnotiksw, для того чтобы сделать мульти использование тебе над использвать один из пунктов:
  1. хеш
  2. структура
Ты мог благополучно создать таймер и наносить дамаг через функцию, прописанную в том же триггере.
фактически ты посоветовал одно и тоже немного видоизменно
Старый 21.07.2010, 10:38
ScorpioT1000
Работаем
offline
Опыт: отключен
если в тр№1 перевести локалки в глобалки, то допустим если запустить этот код еще раз другим юнитом-кастером, то начнется свистопляска молний по всему экрану, и действие кода от 1 юнита полетит к "чертям собачьим". Как решить данную проблему?
xgm.ru/project.php?id=100&page=w3_special_programming
пункт "Стек и Аттачи", тебе надо крепить этих юнитов к таймеру
Старый 21.07.2010, 10:54
Hypnotiksw

offline
Опыт: 448
Активность:
ScorpioT1002:
твои статьи несомненно, помогут решить мою проблему, но ознакомившись с ними, я понял, что это еще не мой уровень, возможно я слишком рано полез в дебри и стоит потренироваться на более простых примерах, в любом случаи спасибо за помощь, статьи отложены в избранное, для изучения=)
Спасибо всем кто откликнулся, на мою проблему, пока что я реализовал свой спел с помошью Gui частично используя custom script, думаю я еще не раз вернусь к нему, дабы оптимизировать и перевести на jass, но пока что уровень знаний данного языка, заметно уступает поставленными мною задачами на его исполнение
Старый 21.07.2010, 14:27
Arty3ooo
...
offline
Опыт: 3,125
Активность:
когда-то пост гуишного ламера покинуть все равно придется.
Я так понял тебя испугали структуры... тогда кури Хеш-таблицы.
Старый 21.07.2010, 14:34
ScorpioT1000
Работаем
offline
Опыт: отключен
ну да, гуи-хеш отличный выход из ситуации)
Старый 23.07.2010, 00:15
Hypnotiksw

offline
Опыт: 448
Активность:
подскажите на последок, есть какие-нибудь статьи по хеш-таблицам и по jass(конкретно интересует посроение кода, команды, синтаксис и прочее в статьях я читал про jass, но там не все аспекты освещены, которые меня интересуют) для начинающих осваиваться?=)
Старый 23.07.2010, 04:44
newzoom
Kicked by ScorpioT1002
offline
Опыт: 207
Активность:
Статья по хеш-таблицам, статья Сергея, мы все по ней когда то изучали Jass. Ссылка на статью J про оптимизацию.
Старый 23.07.2010, 06:09
EdiTTORR

offline
Опыт: 183
Активность:
Arty3ooo:
когда-то пост гуишного ламера покинуть все равно придется.
Я так понял тебя испугали структуры... тогда кури Хеш-таблицы.
структуры - онли жнгп
Хеш - медленная, лагающая, засоряющая память функция!
Я считаю что глобалка не хуже хеша(может хеш удобен для пользователя, зато глобалки - для компа)
Старый 02.08.2010, 14:36
Скайнет
Kicked by ZlaYa1000
offline
Опыт: 8,234
Активность:
если позволяет ситуация, то можно спокойно использовать глобальные переменные
Старый 02.08.2010, 14:43
Ответ

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

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

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

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



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