Добавлен scopterectus
Обязательно ли нужно удалять способность после добавления?
function PreloadAbility takes integer abilityId returns nothing
if ( didInit ) then
if ( UnitAddAbility( unitPreloader, abilityId ) ) then
call UnitRemoveAbility( unitPreloader, abilityId )
debug else
debug call BJDebugMsg( "PreloadAbility(...) : Ability '" + RAW2S( abilityId ) + "' does not exist." )
endif
else
debug call BJDebugMsg("PreloadAbility(...) Attempt to prealod abilty before library initialization.")
call Initialization( )
if ( UnitAddAbility( unitPreloader, abilityId ) ) then
call UnitRemoveAbility( unitPreloader, abilityId )
debug else
debug call BJDebugMsg( "PreloadAbility(...) : Ability '" + RAW2S( abilityId ) + "' does not exist." )
endif
endif
endfunction
call SetUnitInvulnerable( ... )
// или
call UnitAddAbility( unit, 'Avul' )
Принятый ответ
Кривоватая подгрузка, удалять не обязательно. Лучше юзать preload без этаких костылей, темболее в JASS есть механизмы автоматического создания pld скриптов.
`
ОЖИДАНИЕ РЕКЛАМЫ...
Чтобы оставить комментарий, пожалуйста, войдите на сайт.
Можно схитрить, сделать по pld скрипту для каждого героя, а в таверне продавать пустышки - при выборе героя, вызываем pld скрипт, после подгрузки - секунды 3, создаем героя для игрока.
Отредактирован PT153
Но важно чтобы юнита видели игроки - иначе модели и звуки с иконками и текстом не подгрузятся...
При пике подгружайте все данные этого героя.
Тем более сделать через preloader скрипт ничего не стоит автоматически, все сделает для вас движок.
Имея файла задаете исходя из id героя (или даммика который продается в таверне), так не понадобится делать базу данных...