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

создавайте новых юнитов ручками это будет быстрее чем вы изучите мемхак и поймёте как использовать функцию смены модели
function ChangeUnitModelTo takes unit u, string modelpath returns nothing
	local integer a
	local integer s
    call MakeModelAsDefault(u,modelpath)
	set LastConvertedHandle=ConvertHandle(u)
	if LastConvertedHandle>0 then
		set a=RMem(LastConvertedHandle)+0x88
		if a>0 then
			set a=RMem(a)
			if a>0 then
				set s=GetStringAddress(modelpath)
				call CallThisCallWith3Args(a,LastConvertedHandle,s,1)
			endif
		endif
	endif
endfunction

function ChangeUnitPortraitTo takes unit u, string modelpath returns nothing
	set LastConvertedHandle=ConvertHandle(u)
	if LastConvertedHandle>0 then
		call CallThisCallWith3Args(GameDLL+0x33ADC0,LastConvertedHandle,GetStringAddress(modelpath),1)
	endif
endfunction
В карте про сларков таком способом меняется модель лягушки после эволюции
`
ОЖИДАНИЕ РЕКЛАМЫ...

Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
3
NazarPunk:
Робот уже ответил
Способность темный это тоже самое что и заменить юнит триггерно там появляется новая боевая единица с другой атакой количеством жизней и т.д,полиморф работает как надо но при выборе юнита когда он находится под действием полиморф портрет прежней модели а не той в какую мы его превратили...мне нужно тупо сменить модель без потери характеристик прежнего юнита!
Загруженные файлы
33
на 126 модель менялась мемхаком... и щас меняется.. но его все бояться да и не актуально в 2019
30
на 126 модель менялась мемхаком... и щас меняется.. но его все бояться
На ваши мемхаки кукисов не напасёшся.
мне нужно тупо сменить модель без потери характеристик прежнего юнита!
Это юнит или герой? На последнем патче поля юнита можно менять, правда теряются кд и бафы. Вам с какой целью модель то менять и на каком патче?
3
Хочу разнообразить игру) чтобы каждый раз выходили новые юниты, патч 1.26+
33
создавайте новых юнитов ручками это будет быстрее чем вы изучите мемхак и поймёте как использовать функцию смены модели
function ChangeUnitModelTo takes unit u, string modelpath returns nothing
	local integer a
	local integer s
    call MakeModelAsDefault(u,modelpath)
	set LastConvertedHandle=ConvertHandle(u)
	if LastConvertedHandle>0 then
		set a=RMem(LastConvertedHandle)+0x88
		if a>0 then
			set a=RMem(a)
			if a>0 then
				set s=GetStringAddress(modelpath)
				call CallThisCallWith3Args(a,LastConvertedHandle,s,1)
			endif
		endif
	endif
endfunction

function ChangeUnitPortraitTo takes unit u, string modelpath returns nothing
	set LastConvertedHandle=ConvertHandle(u)
	if LastConvertedHandle>0 then
		call CallThisCallWith3Args(GameDLL+0x33ADC0,LastConvertedHandle,GetStringAddress(modelpath),1)
	endif
endfunction
В карте про сларков таком способом меняется модель лягушки после эволюции
Принятый ответ
30
Наштампуйте кучу одинаковых юнитов с разными моделями или используйте мемхак.
33
Хотя я смену портрета не использовал
NazarPunk, а кто проверял? но на 99% уверен что SetRealField For Model ничего просто не сделает
3
local unit u=GetTriggerUnit()
call ChangeUnitModelTo(u , "test.mdl")
правильно?
Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
Чтобы оставить комментарий, пожалуйста, войдите на сайт.