ГлавнаяБлогКарты Warcraft 3Гайды для первой ДотыГайды для Доты 2 [ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 2
  • 1
  • 2
  • »
Модератор форума: XOPYC  
Отлов урона
Дата: Понедельник, 29.12.2014, 15:38 | Сообщение # 1
Рядовой
Пользователи
Сообщений: 12
Награды: 0
Репутация: 0
Почему не работает отлов урона? Тупо при запуске карты в центре спавнится 0. Поясните ошибку или дайте GUI альтернативу...
Прикрепления: 5033295.png (30.1 Kb)


Сообщение отредактировал yarkylz1 - Понедельник, 29.12.2014, 15:43
 
Дата: Понедельник, 29.12.2014, 22:49 | Сообщение # 2
Генералиссимус
Модераторы
Сообщений: 13016
Награды: 22
Репутация: 141
Потому что у тебя событие Инициализация карты, а это ТОЛЬКО сам запуск. Тебе нужно поставить в событии Время ...

это Ксопик!
 
Дата: Понедельник, 29.12.2014, 23:37 | Сообщение # 3
Рядовой
Пользователи
Сообщений: 12
Награды: 0
Репутация: 0
Не совсем понял... Я же вроде создаю событие?

Сообщение отредактировал yarkylz1 - Среда, 31.12.2014, 14:40
 
Дата: Понедельник, 05.01.2015, 17:45 | Сообщение # 4
Генералиссимус
Проверенные
Сообщений: 2259
Награды: 9
Репутация: 70
Цитата yarkylz1 ()
Не совсем понял... Я же вроде создаю событие?

Событие это отлов каких то действий на карте. Триггер - это скрипт содержащий в себе события, условия события и действия во время отлова этих событий

У тебя событие некорректное. Чтобы отловить урон, событие должно быть примерно такое: Юнит атакован или Юнит получил урон
При использовании такого события как у тебя, твой триггер заработает После загрузки карты и не будет работать до тех пор пока ты снова его не запустишь

Поставив событие: Юнит атакован, твой триггер будет реагировать на действия атаки по карте. Пехотинец начал атаковать здание - твой триггер сработал. В таком духе...
Лучше использовать событие - Юнит получает урон(как-то так называется). Он отлавливает тот момент, когда пехотинец уже атаковал юнита и тот получил урон


Тот кто владеет информацией, тот владеет миром.
 
Дата: Пятница, 05.06.2015, 07:26 | Сообщение # 5
Рядовой
Пользователи
Сообщений: 12
Награды: 0
Репутация: 0
Забыл уже тему, но эта система снова понадобилась так что задам тот же вопрос - почему не работает отлов урона? Чтоб не создавать кучу триггеров я делаю на инициализацию карты создание события "атакованный юнит получает урон" так как в простых событиях такого нету,создаю триггером, в простых событиях надо выбирать конкретного юнита уже заранее созданного на карте а тут я вроде сделал отлов урона, но он не работает. Что делать? Помогите решить проблему или дайте GUI альтернативу есть таковая есть.
 
Дата: Пятница, 05.06.2015, 13:30 | Сообщение # 6
Генералиссимус
Проверенные
Сообщений: 5123
Награды: 13
Репутация: 72
событие инициализация карты. оно запускается только один раз во время самой загрузки карты и всё. поставь в событии ежесекундный запуск, может и будет работать. хотя не вникакл в суть того, чего ты добиваешься. или возможно сделай событие "боевая единица - атакован"

Телеграм @Tshkn
Мой YouTube-канал Se Squared
 
Дата: Пятница, 05.06.2015, 19:48 | Сообщение # 7
Рядовой
Пользователи
Сообщений: 12
Награды: 0
Репутация: 0
Цитата Will ()
поставь в событии ежесекундный запуск
как ты себе это представляешь?

Цитата yarkylz1 ()
Чтоб не создавать кучу триггеров я делаю на инициализацию карты создание события "атакованный юнит получает урон" так как в простых событиях такого нету,создаю триггером, в простых событиях надо выбирать конкретного юнита уже заранее созданного на карте

Знаю, объяснил убого. По стандарту нету события " юнит получил урон " но его можно создать триггерно. При инициализации я его и создаю. А событие " юнит был атакован " не подходит, так как выпишет урон 0.
 
Дата: Суббота, 06.06.2015, 16:22 | Сообщение # 8
Генералиссимус
Модераторы
Сообщений: 13016
Награды: 22
Репутация: 141
yarkylz1, послушай =)
Триггеры строятся по системе - Событие, Условие, Действие.
Другими словами триггер срабатывает только когда происходит какое-то событие. Дальше он сверяется с условиями и если всё подходит, то совершаются действия.

В твоём случае ты запускаешь триггер во время инициализации карты.
Инициализация карты происходит ТОЛЬКО при загрузке. Вернее даже сказать это и есть загрузка карты.
Т.е. ты запускаешь триггер проверки, он всё смотрит, урона никто не получается и т.д. и т.п. и вырубается.

Вилл всё правильно написал.
Твой триггер должен каждые 0,n сек проверять не получает ли кто-то урон. Т.е. если кто-то получил урон, то над ним написать его ну или что ты там делаешь.

Попробую объяснить проще....

Твоё событие должно быть: прошло 0,01 сек (это к примеру) (или "каждые 0,01 сек", точно не помню)
Условие: юнит атакован равно да
Действие: вывести твой урон над башкой юнита ну или что там тебе нужно.

Вот и всё.

Инициализация в основном нужна для установки переменных или каких-то уникальных настроек карты, например зависящие от кол-ва игроков и т.д.
Все отловы чего угодно работают исключительно с событием времени.

З.Ы. я особо не вчитывался, что у тебя там в начале было, но надеюсь суть ты понял...


это Ксопик!
 
Дата: Суббота, 06.06.2015, 16:30 | Сообщение # 9
Генералиссимус
Проверенные
Сообщений: 5123
Награды: 13
Репутация: 72
По хорошему надо вообще закрыть все темы по картостроению варика, и закрыть весь раздел, и отправлять всех на редактор старкрафта =))))))))

Телеграм @Tshkn
Мой YouTube-канал Se Squared
 
Дата: Суббота, 06.06.2015, 16:35 | Сообщение # 10
Рядовой
Пользователи
Сообщений: 12
Награды: 0
Репутация: 0
Мне кажется, что мы недопонимаем друг друга. Я создаю событие

p.s. на GUI вообще реально сделать отлов урона?

p.p.s. Вы вообще смотрели скрин? О_о


Сообщение отредактировал yarkylz1 - Воскресенье, 07.06.2015, 09:27
 
  • Страница 1 из 2
  • 1
  • 2
  • »
Поиск: