Обязательно ли нужно удалять способность после добавления?
	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 скриптов.
`
ОЖИДАНИЕ РЕКЛАМЫ...

Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
23
Похожие вопросы:

ответ
Nelloy, будет но для этого данные нужно синхронизировать, для ваших сейв\лоадов есть давно проверенная система, которая не требует мемхака - Data Manager, не надо никакого мемхака. Все понятно и просто, вот неужели нельзя изучить всю мат часть по сейвам прежде чем пороть горячку?
ответ
Karp:
pro100master:
Мда слышал про GetLocalPlayer() вот и будет создавать для 1 игрока в сейв
cлыщал, но если бы знал как юзать, то не спрашивал бы)
ответ
Проблема в функции SaveLoad_EncodeVerify.
ответ
ScopteRectuS, у тебя где то перезаписывается bj_lastCreatedUnit
причём происходит это после первой итерации GroupEnumUnitsInRange
а вообще не стоит юзать стандартные бж переменные
т.к. они могут конфликтовать с другими системами
используй приватные переменные
если после перехода на приватные глобалки проблема останется то скопируй систему на отдельную карту и кинь эту карту сюда
буду тестить разные варианты

32
Кривоватая подгрузка, удалять не обязательно. Лучше юзать preload без этаких костылей, темболее в JASS есть механизмы автоматического создания pld скриптов.
Принятый ответ
21
quq_CCCP, не совсем понимаю.
	function PreloadAbility takes integer id returns boolean
		return UnitAddAbility( unitPreloader, id )
	endfunction
А что такое pld скрипты, google ничего не выдал..
а что насчёт call SetUnitInvulnerable( ... ), call UnitAddAbility( unit, 'Avul' )
25
А что за прелоад способностей? Зачем это нужно?
15
avuremybe:
А что за прелоад способностей? Зачем это нужно?
Чтобы при изучение способности героем не было лага
25
Ethernet, и в чем же он состоит?
27
avuremybe, предполагаю для того, чтобы не было лагов. Помню, давно были темы с многоуровневыми абилками (более 10 левел и до 100 левел). Можно было делать интересные фишки. Если юниту в первый раз дать эту абилку, то комп подвиснет на несколько секунд, а на более слабых компах и больше времени. А все потому, что абилка загружается в игру, при повторном добавлении лагов не замечается. Поэтому сделали такую фишку, что при инициализации подзагружают способности все многоуровневые способности. Замечали ли вы когда нибудь в некоторых картах подвисания при старте игры? например, в доте. и прочее.
Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
Чтобы оставить комментарий, пожалуйста, войдите на сайт.