Хочу сделать способность которая уже прокачана с самого спавна героя и имеет 1 уровень
ListenToGameEvent( "npc_spawned", Dynamic_Wrap( CHoldoutGameMode, "OnNPCSpawned" ), self ) включаешь отслеживание спавна юнита
function CHoldoutGameMode:OnNPCSpawned(data)
local npc = EntIndexToHScript(data.entindex)
if npc:IsRealHero() and npc.bFirstSpawned == nil then ---если юнит герой и это первый его спавн находишь у него скилл и апаешь скиллу 1 уровень
npc.bFirstSpawned = true
local ab = npc:FindAbilityByName("твой скилл")
ab:SetLevel(1)
end
end
Я не совсем понимаю куда это вписыватьLua:ListenToGameEvent( "npc_spawned", Dynamic_Wrap( CHoldoutGameMode, "OnNPCSpawned" ), self ) включаешь отслеживание спавна юнита
Lua:function CHoldoutGameMode:OnNPCSpawned(data) local npc = EntIndexToHScript(data.entindex) if npc:IsRealHero() and npc.bFirstSpawned == nil then ---если юнит герой и это первый его спавн находишь у него скилл и апаешь скиллу 1 уровень npc.bFirstSpawned = true local ab = npc:FindAbilityByName("твой скилл") ab:SetLevel(1) end end
например в addon_game_modeЯ не совсем понимаю куда это вписывать
Пишу команду DOTA_ABILITY_BEHAVIOR_NOT_LEARNABLE = 1 но скил становится просто неактивным, его нельзя выучитьDOTA_ABILITY_BEHAVIOR_NOT_LEARNABLE = 1 << 6, //Probably can be cast or have a casting scheme but cannot be learned (these are usually abilities that are temporary like techie's bomb detonate).
если у тебя скилл с 1 лвл