Примечание. Я знаю о добавлении способности превращение в ворона, но оно лишь визуально дает такое представление, там уже можно менять высоту, но такой юнит не сможет перелететь море а будет топтаться у берега. Можно ли полностью изменить его тип триггерно?

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

Смени типа движения возможна только через морф в другую боевую единицу через руну (на любом патче)
`
ОЖИДАНИЕ РЕКЛАМЫ...

Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
0
24
4 года назад
0
Как вариант - не только дать превращение, но и применить его, чтобы произошел морф, а не только баг открывающий возможность визуально менять высоту. У этого способа, естественно, есть проблемы и ограничения, как и у любых других морфов.
0
1
4 года назад
0
prog:
Как вариант - не только дать превращение, но и применить его, чтобы произошел морф, а не только баг открывающий возможность визуально менять высоту. У этого способа, естественно, есть проблемы и ограничения, как и у любых других морфов.
Вот типа этого? Я не вижу функции - применить способность, только что данную юниту
Загруженные файлы
0
5
4 года назад
0
на рефорджете можно менять тип юнита чеоез BlzSetUnitIntegerField и никакие ущербные морфы ворона больше не нужны
1
32
4 года назад
1
Pashka5, функция есть а не работает. Проверял на 132.6*...
Тип движения меняется, и дебаг пишет что он изменён, а по факту - н и ч е г о
0
5
4 года назад
Отредактирован Pashka5
0
Bergi_Bear:
Pashka5, функция есть а не работает. Проверял на 132.6*...
Тип движения меняется, и дебаг пишет что он изменён, а по факту - н и ч е г о
все прекрасно работает...я сам так делаю...BlzSetUnitIntegerField(unit,UNIT_IF_MOVE_TYPE,?) ...если у вас не работает значит не так делали...минусуйте-минусуйте самый действенный способ
constant movetype MOVE_TYPE_UNKNOWN = ConvertMoveType(0)
constant movetype MOVE_TYPE_FOOT = ConvertMoveType(1)
constant movetype MOVE_TYPE_FLY = ConvertMoveType(2)
constant movetype MOVE_TYPE_HORSE = ConvertMoveType(4)
constant movetype MOVE_TYPE_HOVER = ConvertMoveType(8)
constant movetype MOVE_TYPE_FLOAT = ConvertMoveType(16)
constant movetype MOVE_TYPE_AMPHIBIOUS = ConvertMoveType(32)
constant movetype MOVE_TYPE_UNBUILDABLE = ConvertMoveType(64)
лучше самому прверить через getfield так как там надо циферку ставить...
0
32
4 года назад
0
гет филд работает да, но юнит не начинает летать или ходить по воде
2
32
4 года назад
2
У меня в профиле специально этот код висит
			if UnitAddAbility(hero,FourCC('Ait9')) then print("testIsStart") end
			local thisAbi= BlzGetUnitAbility(hero,FourCC('Ait9'))
			local before=BlzGetAbilityIntegerLevelField(thisAbi,ABILITY_ILF_ATTACK_BONUS,0)
			print("before="..before)
			BlzSetAbilityIntegerLevelField(thisAbi,ABILITY_ILF_ATTACK_BONUS,0,100)
			local after=BlzGetAbilityIntegerLevelField(thisAbi,ABILITY_ILF_ATTACK_BONUS,0)
			print("after="..after)
я просто чекаю каждый патч это
на коде выше мы меняем бонусный урон из предмета, но ни-че-го. Pashka5, Покажи видео, гифкой, картой, где после применения
BlzSetUnitIntegerField(unit,UNIT_IF_MOVE_TYPE,MOVE_TYPE_FLY)
у тебя полетит наземный юнит... он не полетит, но GetField будет возвращать, что юнит летающий
0
32
4 года назад
0
Работало на мемхаке, при том только если делать из изначально летающего другие типы, после смерти тип сбрасывался в исходный. А так делайте морфы и не парьтесь.
Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
Чтобы оставить комментарий, пожалуйста, войдите на сайт.