21

» WarCraft 3 / Освобождение хендла

Doc, не это не подходит. Я же сказал , что создаётся огромное количество юнитов, а в структуре 8192 по-моему только юнитов можно будет сохранить. если я правильно понял реализацию.
21

» WarCraft 3 / Освобождение хендла

nvc123, тут в примере я просто указал тип интегер, на самом деле используются другие типы.
21

» WarCraft 3 / Освобождение хендла

Ige, а как же (unit == null) ?
pro100master, я думаю, это не сработает. Т.к. юнит покинет игровую карту только тогда, когда он плоностью разложится (а если труп разлагается полностью - игра его удаляет). Соответственно когда заюзаешь функцию получения юнита, покунувшего регион, игра вернет null.
21

» WarCraft 3 / Как использовать редактор способностей, в редакторе объектов.

Через редактор способностей можно создавать способности на основе стандартных (изменить урон, дальность, кд, радиус эффекты и т.д.) Изменить механику работы нельзя.
21

» WarCraft 3 / Освобождение хендла

Ige, GetUnitTypeId() вернет же одинаковое значение для одинаковых юнитов.
21

» WarCraft 3 / memhack utils functions

quq_CCCP, лол, у меня это и было. не знал что это минимум) можно закрывать, это я создавл вопрос из другого ака, где забыл пароль
21

» WarCraft 3 / memhack utils functions

quq_CCCP, да было бы неплохо. Там где детект урона, как раз таки написано: "Здесь находится куча мусора, относящееся только к доте, вырезайте всё, что вам не нужно." Если, , конечно, мы говорим об одной карте.
21

» WarCraft 3 / Область сплэш атаки

quq_CCCP, если верить моим тестам, то центр области не атакованный юнит, а точка позади него, которую, я думаю, можно определить по формуле:
x = targetX + cleaveRadius * Cos( angle )
y = targetY + cleaveRadius * Sin( angle )
	call GroupEnumUnitsInRange( group, x, y, cleaveRadius + maxCollisionSize, filter)
Соответственно, чем выше радиус клива, тем дальше центр круга, в котором будет нанесен урон. Из-за чего юниты позади атаковавшего никогда не получат урон.
21

» WarCraft 3 / Освобождение хендла

pro100master, когда объект удаляется его хендлайди освобождается и его место может занять другой объект!
21

» WarCraft 3 / Остановить спавн-триггер улучшением здания?!

Событе:
	- Боевая единица завершает улучшение
Условие:
	- Твое условие
Действие:
    - Отключить триггер (нужный триггер)
21

» WarCraft 3 / Область сплэш атаки

Taurenus, я тебя не понял. Кого сзади бил? И почему ты сказал про лиона со станом, у него нет сплеша.))
21

» WarCraft 3 / Освобождение хендла

biridius, нашел еще такую функцию:
	native RemoveSavedInteger takes hashtable table, integer parentKey, integer childKey returns nothing
думаю, она идеально сюда подходит.
21

» WarCraft 3 / Перезапись глобальных переменных

Steal nerves, нуу \то то понятно. Я имел ввиду передачу данных в функцию ForGroup через bj_lastCreatedUnit и bj_groupEnumUnitPlayer во всех группах. Может ли тогда произойти перезапись.
21

» WarCraft 3 / Запуск КД пассинвой спосбности

quq_CCCP, EventWidgetDeath это функция из мемхака, или вы имели ввиду обычный триггер с соббытем юнит умер?
21

» WarCraft 3 / Запуск КД пассинвой спосбности

quq_CCCP, Спасибо, я когда включал триггеры забыл вклчюить инициализацию оказывается. Теперь всё работает.!
quq_CCCP, появился еще 1 вопрос, так как способность делается на основе перерождения, то есть вероятность, что кастер помрет где-нибудь и нахаляву возродится. Можно с этим что-то сделать?
21

» WarCraft 3 / Запуск КД пассинвой спосбности

quq_CCCP, ну да,я же добавляю юниту абилку.
function Trig_001_Actions takes nothing returns nothing
    call UnitAddAbilityBJ( 'AOsh', gg_unit_N001_0062 )
    call StartAbilityCooldown(gg_unit_N001_0062, 'AOsh', 10.0)
endfunction

//===========================================================================
function InitTrig_001 takes nothing returns nothing
    set gg_trg_001 = CreateTrigger(  )
    call TriggerRegisterPlayerChatEvent( gg_trg_001, Player(0), "1", true )
    call TriggerAddAction( gg_trg_001, function Trig_001_Actions )
endfunction
И да, перед этим, после добавления мемхака в карту, карта перестала запускаться, хоть и сохранялась. Я выключил все триггеры и начал включать по одному, в итоге я включил все триггеры а карта осталась запускаемой.
21

» WarCraft 3 / Запуск КД пассинвой спосбности

quq_CCCP, взял эту, но почему то не работает.
function Trig_001_Actions takes nothing returns nothing
    call UnitAddAbilityBJ( 'AOsh', gg_unit_N001_0062 )
    call StartAbilityCooldown(gg_unit_N001_0062, 'AOsh', 10.0)
endfunction

//===========================================================================
function InitTrig_001 takes nothing returns nothing
    set gg_trg_001 = CreateTrigger(  )
    call TriggerRegisterPlayerChatEvent( gg_trg_001, Player(0), "1", true )
    call TriggerAddAction( gg_trg_001, function Trig_001_Actions )
endfunction

function StartAbilityCooldown takes unit whichUnit, integer abilityId, real cd returns boolean
        local integer pAbility = 0
    
        if whichUnit == null or GetUnitAbilityLevel( whichUnit, abilityId  ) < 1 or cd == 0.00  then
            return false
        endif
    
        set pAbility = GetUnitAbilityForAddresss( ConvertHandle( whichUnit ), abilityId )
    
        if pAbility == 0 then
            return false
        else
            set Memory[pReserverdIntArg1 / 4] = cleanInt( realToIndex( cd ) )
            call CallThisCallWith2Args( pStartAbilityCD, pAbility, pReserverdIntArg1 )
            return IsAbilityOnCooldown( pAbility )
        endif
        
        return false
    endfunction
21

» WarCraft 3 / Пассивная способность с перезарядкой и с мана костом

quq_CCCP, а можно функцию запуска кд пассивной способности с мана костом на основе перерождения?