Добрый вечер!
Как узнать угол направления разрушаемого объекта?
Для боевой единицы есть специальная функция "Боевая единица - угол поворота". А как поступить с декорацией?
Допустим, ситуация. У меня есть декорация, после разрушения которой на ее месте создается другая декорация с похожей, но измененной моделью. Соответственно, нужно сделать так, чтобы направление созданной декорации совпадало с направлением уничтоженной декорации.

Принятый ответ

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

Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
2
37
9 лет назад
2
Melissa, и много тут дестрактиблов?
Самое забавное, что ты даже не автор, как ты можешь за него постанавливать мне задачу?
2
24
9 лет назад
Отредактирован Melissa
2
и много тут дестрактиблов?
Гипотетически - все.
Самое забавное - так это ляпнуть чёрт возьми что. Угол эффекта равен углу модели... и? Ты можешь взять угол эффекта? Что изменилось?
REMINDER
Melissa
#26 -
5 дней назад (отредактировано Melissa)

Если это вопрос, то отвечаю - нет.
Я пролетел пост Скорпио, когда увидел в нём ясность нужды обработки всего отдельно, как и в других случаях, но теперь вижу в нём больше дыр чем заплат. Спецэффекты не играют иной анимации, как stand или death, спецэффекты не создаются на декорациях(возможно в жнгп такое есть[вряд ли], но в стандартном редакторе такого нет точно). Спецэффекты загружают память и насколько информировали меня - не удаляются из памяти, если например удалить юнит со спецэффектом дубины. Спецэффекты нельзя поворачивать, да и создав спецээфект на объекте ты никак не read-нешь её угол. При изменении прозрачности/размера юнита-носителя спецэффект также меняет прозрачность/размер. Но самое главное и единственно важное - нам всё так же придётся опять тыкать в каждую отдельно, вот эта так должна быть,эта так, тут дерево вот так, тут статуя смотрит сюда.
Так что думайте сами решайте сами, иметь или не иметь хД
Вот зайдёт юзер по поиску и увидит ответ в теме -
воскрешаешь декорацию, делаешь её на 0.1% видимую (можно через анимацию), дальше AddSpecialEffectTarget указываешь твой декор и новую модель
тем самым видеть будут эффект под нужным углом, а атаковать и выделять все ту же декорацию
И повесится.
Короче.
Вот вам карта, закрепите её в ответ темы, сделал для варианта скорпио.
А для тех, кто не понимает сарказм прилагаю скрин
.
что? вы говорите что в карте какой_то бред? но это же ответ скорпио, который признан луччшим!
Загруженные файлы
0
33
9 лет назад
Отредактирован Кет
0
Melissa, вообще-то то, что скорп написал, было вот про это:
У меня есть декорация, после разрушения которой на ее месте создается другая декорация с похожей, но измененной моделью. Соответственно, нужно сделать так, чтобы направление созданной декорации совпадало с направлением уничтоженной декорации.
Иногда обсуждение состоит не только из первого поста -_- Хотя в чём-то ты прав: стоит добавить это в первый пост, чтобы не сбивать людей с толку.
0
24
9 лет назад
0
Кет, мы все ещё не можем создавать эффект на декорации, энивей. Приговор - либо создавать на точке, не проигрывая анимации при стуке/смерти, либо .... либо. Хм либо всё.
Решение неверно, если неверен хотя бы 1 его аспект, необязательно все.
Если бы не этот нюанс, то тогда был бы ответ на вопрос автора, но между прочим, не на вопрос темы.
0
25
9 лет назад
0
можно сделать нестандарные модели. И контролировать анимками.
Это второй вариант.
Вариант номер один был — первое "поколение" деревьев уже создано триггерно. А инфу о них мы придумывали заранее и сохраняли в табличку до создания объекта на карте. По этим значениям ставим деревья — раз. А когда надо — старую декорацию находим в табличке, выбрасываем, а по оставшимся данным создаём декор по-новой с использованием числа, соответствующего старому дереву. Число у нас — угол поворота. Но хит-поинты сбросятся до дефолта.
0
24
9 лет назад
0
Nosferoh, в декорацию нельзя добавить тег, в отличие от юнита. Мы не можем ей сказать "теперь проигрывай stand alternate при стоянии и stand hit alternate при атаке", атаку декорации мы отловить не можем, чтобы хотя бы вручную приказывать играть stand hit alternate. Так что этот способ не годится. не говоря уже о том что весить такие альтернативные модели будут ... непрактично.
0
33
9 лет назад
Отредактирован Кет
0
Кет, мы все ещё не можем создавать эффект на декорации, энивей.
А как же AddSpecialEffectTarget?
0
37
9 лет назад
0
Просто у кого-то бомбануло, что можно сделать как-либо кроме как перебирать всё руками.
Кет верно процитировал задачу - нужно заменить модель декорации так, чтобы у модели был тот же поворот. AddSpecialEffectTarget это делает (я не тестировал, но если ме не изменяет память, на юните поворот работает, значит, и на декорации должен).
Когда я говорю "декорация", я имею ввиду деструктибл, т.к. с категорией "декорация" вообще ничего нельзя сделать и мы её опускаем.
Причем тут анимации я понятия не имею - это уже твои, Melissa, фантазии, у автора в постах я об этом ничего не нашёл.
0
24
9 лет назад
0
Кет, это перефразированная гуишная функция, которая добавляет эффект на юнит/точку. Декорация (зеваю) не входит в число того, куда можно спецэффект налепить.
ScorpioT1000, да я уже понял что именно упустил из виду, я уже догнал, теперь ты догоняй, не будет твой способ работать.
ScorpioT1000:
на юните поворот работает, значит, и на декорации должен
(улыбка до ушей)
ScorpioT1000:
Когда я говорю "декорация", я имею ввиду деструктибл, т.к. с категорией "декорация" вообще ничего нельзя сделать и мы её опускаем.
ну ет то ясен пень.
0
37
9 лет назад
Отредактирован ScorpioT1000
0
Да, это не сработало. Хотя второе не выводит нулл, но ничего не происходит.
    set d1 = AddSpecialEffectTarget( "Objects\\Invalidmodel\\Invalidmodel.mdl", gg_dest_LOcg_0000, null )
    set d2 = AddSpecialEffectTarget( "Objects\\Invalidmodel\\Invalidmodel.mdl", gg_dest_LOcg_0001, "root" )
    if d1 == null then
        call BJDebugMsg("d1 == null")
    endif
    if d2 == null then
        call BJDebugMsg("d2 == null")
    endif
Кроме того, что я нашёл в bj! Чего только не найдёшь =)
// dummy function simply mimics the behavior of an existing call.
//
// Commented out - Destructibles have no attachment points.
//
//function AddSpecialEffectTargetDestructableBJ takes string attachPointName, widget targetWidget, string modelName returns effect
//    return AddSpecialEffectTargetUnitBJ(attachPointName, targetWidget, modelName)
//endfunction

//===========================================================================
// Two distinct trigger actions can't share the same function name, so this
// dummy function simply mimics the behavior of an existing call.
//
// Commented out - Items have no attachment points.
//
//function AddSpecialEffectTargetItemBJ takes string attachPointName, widget targetWidget, string modelName returns effect
//    return AddSpecialEffectTargetUnitBJ(attachPointName, targetWidget, modelName)
//endfunction
Commented out - Destructibles have no attachment points. - яснопонятно =) ну, это сработает только если у автора спец модели с аттачами
0
33
9 лет назад
Отредактирован Кет
0
На самом деле не работает, даже если есть точки прикрепления — специально пробовал на декоре с моделью юнита.
Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
Чтобы оставить комментарий, пожалуйста, войдите на сайт.