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

Лучший ответ:
создавайте новых юнитов ручками это будет быстрее чем вы изучите мемхак и поймёте как использовать функцию смены модели
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
В карте про сларков таком способом меняется модель лягушки после эволюции



Просмотров: 91

XGM Bot #1 - 1 месяц назад 2
Похожие вопросы:

» ответ
  1. Чтобы иметь и модель с обычной текстурой и с другой, с помощью программы для извлечения моделей из Warcraft 3 (я пользуюсь обычно Warcraft 3 Viewer, поищи на сайте), там ищешь справа в папках твою модель, извлекаешь её к себе на компьютер.
  1. Потом открываешь программой mdlvis (основная программа для моделлинга, тоже здесь есть) модель, сразу выделяешь её и нажимаешь кнопку UV-карты или модули - редактор текстур.
  1. Внизу есть путь для текстуры, измени на название скачанной. Нажми enter, сохрани модель.
  1. Если текстура специально для той модели, переходи к следующему пункту.
  1. Кинь текстуру и модель в папку с вариком и открывай WE. У тебя стандартная модель и модель с другой текстурой.

Возможно, звучит сложно, но я привык, несколько кликов - и текстура изменена.
» ответ
Если смена модели должна пройти без потери функциональности юнита - морфом или способностью "тёмный".
» ответ
MrSlendyBoy, а, в архиве поменять надо, значит.
Я архивы не менял никогда, но предлагаю так: в архив нужно закинуть твою модель (с точно таким же путём, как у той, которую нужно заменить) и её текстуру (прямо в корень архива).
» ответ
~8gabriel8:
Смотри карту: xgm.guru/files/100/219921/comments/408338/0.w3x
Там для героев созданы их копии с другой моделью и нестандартные способности на основе способности Тёмный, которая заменяет юнита на указанного другого. Такой вариант не меняет имя героя, порядок предметов в инвентаре, кулдаун на предметах и способностях, но что-то упоминали ранее о возможных глюках с наложенными заклинаниями. Триггерно при использовании способности не на иллюзии героя добавляем ему нестандартную способность нужного типа.
Вариант с заменой юнита, примерно как ты описал, приведёт к сбросу имени, опыта, способностей, кулдаунов, предметов и заклинаний.
Вариантом морфа героя через руны не умею пользоваться.
Вариант с заменой текстуры персонажа через способность Вырвать дерево требует замены текстур деревьев в карте, а это плохо, так как героев много. Ещё это подразумевает умение работать с 3D-редакторами, которого, как предполагаю, у тебя нет.

NazarPunk #2 - 1 месяц назад 0
Робот уже ответил
Snak061 #3 - 1 месяц назад 0
NazarPunk:
Робот уже ответил
Способность темный это тоже самое что и заменить юнит триггерно там появляется новая боевая единица с другой атакой количеством жизней и т.д,полиморф работает как надо но при выборе юнита когда он находится под действием полиморф портрет прежней модели а не той в какую мы его превратили...мне нужно тупо сменить модель без потери характеристик прежнего юнита!
прикреплены файлы
Bergi_Bear #4 - 1 месяц назад 0
на 126 модель менялась мемхаком... и щас меняется.. но его все бояться да и не актуально в 2019
NazarPunk #5 - 1 месяц назад (отредактировано ) 0
на 126 модель менялась мемхаком... и щас меняется.. но его все бояться
На ваши мемхаки кукисов не напасёшся.
мне нужно тупо сменить модель без потери характеристик прежнего юнита!
Это юнит или герой? На последнем патче поля юнита можно менять, правда теряются кд и бафы. Вам с какой целью модель то менять и на каком патче?
Snak061 #6 - 1 месяц назад 0
Хочу разнообразить игру) чтобы каждый раз выходили новые юниты, патч 1.26+
Bergi_Bear #7 - 1 месяц назад 0

создавайте новых юнитов ручками это будет быстрее чем вы изучите мемхак и поймёте как использовать функцию смены модели
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
В карте про сларков таком способом меняется модель лягушки после эволюции
NazarPunk #8 - 1 месяц назад 1
Наштампуйте кучу одинаковых юнитов с разными моделями или используйте мемхак.
Bergi_Bear #9 - 1 месяц назад 0
Хотя я смену портрета не использовал
NazarPunk, а кто проверял? но на 99% уверен что SetRealField For Model ничего просто не сделает
Snak061 #10 - 1 месяц назад 0
local unit u=GetTriggerUnit()
call ChangeUnitModelTo(u , "test.mdl")
правильно?
Bergi_Bear #11 - 1 месяц назад 0
Snak061, в общих чертах да