Привет мододелы !
Помогите пожалуйста с реализацией, цель такая:
Появляется юнит > даю таймер > через Х сек умирает юнит > (ещё не понял как реализовать) если юнит умирает по истечению счётчика, то на ((код
его месте появляется юнит Y, если его убивает другою юнит, появляется юнит Z
ps на данный момент пробую присвоить новый тип юниту перед смертью, чуется что это шляпа.
На данный момент так реализовал:

Можно так:
Добавляешь таймер жизни триггером, либо он будет накладываться способностью призыва:
При смерти данного типа юнита проверяешь убийцу, если убийцы нет, значит умер по окончании таймера, создаёшь Работника, а если есть, то Раба:
Как видишь всё очень коротко, только надо точки создания Работника/Раба удалять, так как утекают.
Загруженные файлы
`
ОЖИДАНИЕ РЕКЛАМЫ...

Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
4
А что именно не получается реализовать? Таймер смерти?
9
Black Soul:
А что именно не получается реализовать? Таймер смерти?
Таймер работает, мрут как нужно. Но с вторым триг. что-то не так делаю в условиях. При любых раскладах после смерти спавнится работник, по моим хотелкам в случае если юнита убивают до окончания таймера, то должен появится раб
4
Конечно, будет появляться только работник, потому что в твоем первом триггере классификация присваивается к Triggering Unit, хотя в событии у тебя стоит таймер. В переменную Triggering Unit всегда записывается юнит, принадлежащий к событию.
Можно присвоить твоему юниту классификацию через локальную переменную.
9
Black Soul:
Конечно, будет появляться только работник, потому что в твоем первом триггере классификация присваивается к Triggering Unit, хотя в событии у тебя стоит таймер. В переменную Triggering Unit всегда записывается юнит, принадлежащий к событию.
Можно присвоить твоему юниту классификацию через локальную переменную.
Руки мои крюки...
я создал переменную, тип - боевая единица, потом в первом триг. сразу после создания юнита указываю:
set swamp_unit(новая переменная) = (last created unit) / это как я уже убедился не верно.
Можно напросится на пример?
30
Можно намного проще и без кривых вэйтов. Заводите integer переменную SECOND и каждую секунду прибавляете ей единицу. При создании юнита X в его Custom Value записываете текущее значение SECOND, а при смерти просто сверяете текущее значение SECOND со значением записанными в Custom Value. Если больше определённого значения то создаёте юнита Y, если ментьше, то юнита Z.
9
NazarPunk:
Можно намного проще и без кривых вэйтов. Заводите integer переменную SECOND и каждую секунду прибавляете ей единицу. При создании юнита X в его Custom Value записываете текущее значение SECOND, а при смерти просто сверяете текущее значение SECOND со значением записанными в Custom Value. Если больше определённого значения то создаёте юнита Y, если ментьше, то юнита Z.
Расписываюсь в своей некомпетентности, понимаю что это довольно простая задача, но я пока не в силах даже это самостоятельно реализовать. Да простят мне хамство, можно пожалуйста картой закинуть хоть какой-то пример, буду стараться разобраться.
и если не затруднит, ссылку на тему где живут буквы о переменных для начинающих, поиск на новом сайте мне ещё с трудом даетcz
30
Расписываюсь в своей некомпетентности, понимаю что это довольно простая задача, но я пока не в силах даже это самостоятельно реализовать.
Для этого люди кучу статей и понаписывали.
можно пожалуйста картой закинуть хоть какой-то пример, буду стараться разобраться
Многим лень создавать с ноля карту, если хотите разобраться, то создайте новую карту, реализуйте там это заклинание и прикрепите к комментарию. И укажите патч ибо здравые люди переходят на lua в последнем патче.
9
NazarPunk:
Расписываюсь в своей некомпетентности, понимаю что это довольно простая задача, но я пока не в силах даже это самостоятельно реализовать.
Для этого люди кучу статей и понаписывали.
можно пожалуйста картой закинуть хоть какой-то пример, буду стараться разобраться
Многим лень создавать с ноля карту, если хотите разобраться, то создайте новую карту, реализуйте там это заклинание и прикрепите к комментарию. И укажите патч ибо здравые люди переходят на lua в последнем патче.
Принято, вложил, соответственно моя неудачная попытка в папке swamp
Загруженные файлы
26
Можно так:
Добавляешь таймер жизни триггером, либо он будет накладываться способностью призыва:
При смерти данного типа юнита проверяешь убийцу, если убийцы нет, значит умер по окончании таймера, создаёшь Работника, а если есть, то Раба:
Как видишь всё очень коротко, только надо точки создания Работника/Раба удалять, так как утекают.
Загруженные файлы
Принятый ответ
9
8gabriel8:
Можно так:
Добавляешь таймер жизни триггером, либо он будет накладываться способностью призыва:
При смерти данного типа юнита проверяешь убийцу, если убийцы нет, значит умер по окончании таймера, создаёшь Работника, а если есть, то Раба:
Как видишь всё очень коротко, только надо точки создания Работника/Раба удалять, так как утекают.
Уоу, насколько это... несложно ты реализовал. Читаю обучалки по Jass, как я понял без него никуда.
если с точками я не напутал, то вот что сделал:
хотя есть подозрение, что не тригеринг юнит =)
30
Читаю обучалки по Jass, как я понял без него никуда.
Выбросьте jass на мороз и переходите на lua. Благо материала на сайте хватает.
Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
Чтобы оставить комментарий, пожалуйста, войдите на сайт.