«Чтобы перс себя лечил и товарищей», такое в ПЗ есть, это тип монстров Шаманы, нужно только дать закл в арсенал монстру. Поведение: «убегать к ближайшему монстру и вызывать подмогу», тоже есть, но не так прямолинейно. Свойство: скрыться, убежать, обладают такие юниты как Орк с тайной запиской убить Избранного на карте «Река и Острова» и другие монстры, например «Батраки».
Отдать команду «скрываться» можно командой: «UMRevenge». Чтобы вернуть монстра в прежнее состояние, нужно отдать две команды юниту: «UMClear», «UMStandard», или новую команду, появившуюся после сервиспаков из-за «Циклопа»: «ResetTarget»
Заготовки функций (процедур) в ПЗ так же есть, правда многие из них просто не используются или в последствии замещены одной командой. Например, раньше (в бета-версиях ПЗ) ловушка: «Пирамида» на игровой зоне «Предгорья» была реализована вот так:
нужно отметить, что этот скрипт многопоточный, и для каждого объекта открывается свой поток и инициализируется переменная: «this», то есть, молния будет бить в каждого юнита индивидуально. Потоки активируется в момент входа на игровую зону. Индивидуальность не совсем логична, так как получается, что молния перезаряжается для каждого юнита персонально, а должна была бы перезаряжаться сама по себе и бить на всех, кто попал в зону одновременно…
В нынешнем исполнении, этот метод убран, и вместо него, есть так называемый объект: «Ловушка» (MagicTrap), который можно установить как объект на карту и активировать/деактивировать его (объект ловушку). Эти два скрипта можно объединить в одну процедуру и сделать локальную, на уровне модуля моб-файла процедуру. Такой метод так же есть в ПЗ, на зоне 19 – эффект бегущих огней в портале. К слову сказать, можно сделать и свои собственные эффекты…
Отдать команду «скрываться» можно командой: «UMRevenge». Чтобы вернуть монстра в прежнее состояние, нужно отдать две команды юниту: «UMClear», «UMStandard», или новую команду, появившуюся после сервиспаков из-за «Циклопа»: «ResetTarget»
Заготовки функций (процедур) в ПЗ так же есть, правда многие из них просто не используются или в последствии замещены одной командой. Например, раньше (в бета-версиях ПЗ) ловушка: «Пирамида» на игровой зоне «Предгорья» была реализована вот так:
Код:
Script VCheck#0#15
(
if
(
IsLess( DistanceUnitPoint( this, 194, 69 ) , 40 )
IsAlive( this )
)
then
(
KillScript( )
VTriger#0#19( this )
)
)
Script VTriger#0#19
(
if
(
)
then
(
KillScript( )
CreateLightning( GetObjectID( this ) , 193.5, 77, 20.5, GetX( this ) , GetY( this ) , GetZ( this ) , 4 ) /показать молнию бьющую в юнита
InflictDamage( this, 10 ) /нанести урон в 10 единиц
Sleep( 15 ) /задержка для визуализации молнии на 1 секунду
DeleteLightning( GetObjectID( this ) ) / удалить объект Молния
Sleep( 100 ) /задержка между ударами молнии, как бы пирамида заряжается
VCheck#0#15( this ) / снова запустить процедуру проверки, находится ли юнит в зоне досягаемости Пирамиды
)
)
В нынешнем исполнении, этот метод убран, и вместо него, есть так называемый объект: «Ловушка» (MagicTrap), который можно установить как объект на карту и активировать/деактивировать его (объект ловушку). Эти два скрипта можно объединить в одну процедуру и сделать локальную, на уровне модуля моб-файла процедуру. Такой метод так же есть в ПЗ, на зоне 19 – эффект бегущих огней в портале. К слову сказать, можно сделать и свои собственные эффекты…