Добавил Lua скилл, в игре у героя пропадает абилка и оcтается 3 способности из 4

s9Arkaden

Новичок
5 Авг 2021
3
0
Написал скилл, добавил этот скилл герою, забилдил. Во время пика у героя все 4 скилла, включая кастомный вместе с иконкой, к/д, манакостами и тд. В самой игре у героя остается 3 способности из 4. На месте кастомной нет даже пустого места. Как решить?
p.s. дефолтных скиллов это не касается, только если кастомный добавить
 

Вложения

  • 2.png
    2.png
    75.9 KB · Просмотры: 15
  • 1.png
    1.png
    78.8 KB · Просмотры: 14
Последнее редактирование:
Написал скилл, добавил этот скилл герою, забилдил. Во время пика у героя все 4 скилла, включая кастомный вместе с иконкой, к/д, манакостами и тд. В самой игре у героя остается 3 способности из 4. На месте кастомной нет даже пустого места. Как решить?
p.s. дефолтных скиллов это не касается, только если кастомный добавить
приложить код, того что ты сделал для добавления кастомной способности, lua kv все что изменил и где.
 
приложить код, того что ты сделал для добавления кастомной способности, lua kv все что изменил и где.
1) Написал название, класс - луа, ссылку на файл и остальное (иконку, кд и пр) в npc_abilities_custom ;
"custom_blink" { "BaseClass" "abilyty_lua" "ScriptFile" "custom_blink" //название файла // General //------------------------------------------------------------------------------------------------------------- "AbilityBehavior" "DOTA_ABILITY_BEHAVIOR_POINT" "AbilityTextureName" "antimage_blink" // Casting //------------------------------------------------------------------------------------------------------------- "AbilityCastPoint" "0.0 0.0 0.0 0.0" // Time //------------------------------------------------------------------------------------------------------------- "AbilityCooldown" "17.0 15.0 12.0 9.0" // Cost //------------------------------------------------------------------------------------------------------------- "AbilityManaCost" "100" // Special //------------------------------------------------------------------------------------------------------------- "AbilitySpecial" { "01" { "var_type" "FIELD_INTEGER" "damage_absorb" "200 300 400 500" } "02" { "var_type" "FIELD_INTEGER" "bonus_damage" "20 40 60 80" } "04" { "var_type" "FIELD_FLOAT" "duration" "17.0 17.0 17.0 17.0" } } }

2) Заменил Абику№1 у Темпларки в файле npc_heroes_custom ;
"npc_dota_hero_templar_assassin_template" { "override_hero" "npc_dota_hero_templar_assassin" // Hero to override "Ability1" "custom_blink" "VisionNighttimeRange" "1800" // Range of vision at night time. }

3) В vscripts создал файл, на который ссылался - custom_blink.lua ;
[/I] custom_blink = class({}) function custom_blink:OnSpellStart() local caster = self:GetCaster() local point = self:GerCursorPosition() FindClearSpaceForUnit(caster, point, true) end [I]

4) Карта стандартная, аддон забилдил. Делал по гайду пендоса, если надо, ссылка -
 
Последнее редактирование:
1) Написал название, класс - луа, ссылку на файл......
для объемной информации используй:
[spoiler='краткая версия']Много текста, сколько надо [/spoiler]
для кода используй :
[CODE=язык]твой код[/CODE]

Lua (лу́а, с порт. — «луна») — скриптовый язык программирования, разработанный в подразделении Tecgraf (Computer Graphics Technology Group) Католического университета Рио-де-Жанейро (Бразилия). Интерпретатор языка является свободно распространяемым, с открытыми исходными текстами на языке Си.

По идеологии и реализации язык Lua ближе всего к JavaScript, в частности, он также реализует прототипную модель ООП, но отличается Паскале-подобным синтаксисом и более мощными и гибкими конструкциями. Характерной особенностью Lua является реализация большого числа программных сущностей минимумом синтаксических средств. Так, все составные пользовательские типы данных (массивы, структуры, множества, очереди, списки) реализуются через механизм таблиц, а механизмы объектно-ориентированного программирования, включая множественное наследование — с использованием метатаблиц, которые также отвечают за перегрузку операций и ряд других возможностей.

Lua — простой встраиваемый язык (его можно интегрировать с вашими программами, написанными на других языках), легкий и понятный, с одним типом данных, с однообразным синтаксисом. Идеальный язык для изучения.
Lua:
-- Два дефиса начинают комментарий до конца строки
--[[
Добавьте две квадратных скобки,
чтобы создать многострочный комментарий
--]]
Lua:
if CAddonTemplateGameMode == nil then
    CAddonTemplateGameMode = class({})
end

function Precache( context )
    --[[
        Precache things we know we'll use.  Possible file types include (but not limited to):
            PrecacheResource( "model", "*.vmdl", context )
            PrecacheResource( "soundfile", "*.vsndevts", context )
            PrecacheResource( "particle", "*.vpcf", context )
            PrecacheResource( "particle_folder", "particles/folder", context )
    ]]
end

-- Create the game mode when we activate
function Activate()
    GameRules.AddonTemplate = CAddonTemplateGameMode()
    GameRules.AddonTemplate:InitGameMode()
end

function CAddonTemplateGameMode:InitGameMode()
    print( "Template addon is loaded." )
    GameRules:GetGameModeEntity():SetThink( "OnThink", self, "GlobalThink", 2 )
end

-- Evaluate the state of the game
function CAddonTemplateGameMode:OnThink()
    if GameRules:State_Get() == DOTA_GAMERULES_STATE_GAME_IN_PROGRESS then
        --print( "Template addon script is running." )
    elseif GameRules:State_Get() >= DOTA_GAMERULES_STATE_POST_GAME then
        return nil
    end
    return 1
end

LUA за 15 минут
 
  • Влюблен
Реакции: vulkantsk
Реклама: