- 15 Мар 2016
- 1,335
- 105
Привет профи. Подскажите дурачку, что не так, пожалуйста.
В общем пытаюсь написать модификатор на союзника, который давал бы бонусвижн, но модификатор просто не появляется.
tracking_lua.lua:
modifier_tracking_lua.lua:
npc_abilites_custom:
В общем пытаюсь написать модификатор на союзника, который давал бы бонусвижн, но модификатор просто не появляется.
tracking_lua.lua:
Код:
tracking_lua = class({})
LinkLuaModifier("modifier_tracking_lua", "modifier_tracking_lua", LUA_MODIFIER_MOTION_NONE)
function tracking_lua:GetBehavior()
return DOTA_ABILITY_BEHAVIOR_UNIT_TARGET
end
function tracking_lua:GetAbilityTargetTeam()
return DOTA_UNIT_TARGET_TEAM_FRIENDLY and DOTA_UNIT_TARGET_TEAM_ENEMY
end
function tracking_lua:GetAbilityTargetType()
return DOTA_UNIT_TARGET_HERO
end
function tracking_lua:GetManaCost(iLevel)
local ability = keys.ability
return ability:GetLevelSpecialValueFor("AbilityManaCost", ability:GetLevel() - 1)
end
function tracking_lua:GetCooldown(iLevel)
local ability = keys.ability
return ability:GetLevelSpecialValueFor("AbilityCooldown", ability:GetLevel() - 1)
end
function tracking_lua()
local caster = keys.caster
local target = keys.target
local ability = keys.ability
local duration = ability:GetLevelSpecialValueFor("duration", ability:GetLevel() - 1)
if target:GetAbilityTargetTeam() == DOTA_UNIT_TARGET_TEAM_FRIENDLY then
target:AddNewModifier(caster:GetCaster(), ability, "modifier_tracking_lua", { duration = duration })
else return end
end
modifier_tracking_lua.lua:
Код:
modifier_tracking_lua = class({})
function modifier_tracking_lua:OnCreated(kv)
self.bonusvision = self:GetAbility():GetSpecialValueFor( "bonusvision" )
end
function modifier_tracking_lua:DeclareFunctions()
local funcs = {
MODIFIER_PROPERTY_BONUS_DAY_VISION
}
return funcs
end
function modifier_tracking_lua:GetBonusDayVision()
return self.bonusvision
end
function modifier_tracking_lua:GetTexture()
return "antimage_mana_break"
end
function modifier_tracking_lua:IsHidden()
return 0
end
npc_abilites_custom:
Код:
"DOTAAbilities"
{
"tracking_lua"
{
"BaseClass" "ability_lua"
"ScriptFile" "tracking_lua"
"AbilityBehavior" "DOTA_ABILITY_BEHAVIOR_UNIT_TARGET"
"AbilityUnitTargetTeam" "DOTA_UNIT_TARGET_TEAM_ENEMY | DOTA_UNIT_TARGET_TEAM_FRIENDLY"
"AbilityUnitTargetType" "DOTA_UNIT_TARGET_HERO"
"AbilityTextureName" "antimage_mana_break"
"MaxLevel" "4"
"AbilityCooldown" "7.0 5.0 3.0 1.0"
"AbilityManaCost" "100 90 80 70"
"AbilitySpecial"
{
"01"
{
"var_type" "FIELD_INTEGER"
"duration" "5.0 7.0 9.0 11.0"
}
"02"
{
"var_type" "FIELD_FLOAT"
"bonusvision" "200"
}
}
}
}
Последнее редактирование модератором: