CustomGames.ru - Dota 2 пользовательские игры

Почему не удаляется модифер после смерти?

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн KEKMAN

  • 168
  • Мощь: 2
  • Dota forever <3
Сразу скажу, что модифер активируется в OnToggleOn. И хотелось бы без lua :)

Код
"modifier_righthouse"
      {
      "Passive" "0"
        "IsHidden"                "0"
        "IsDebuff"        "1"
        "Aura"            "modifier_righthouse_aura"
        "Aura_Radius"     "%radius"
        "Aura_Teams"      "DOTA_UNIT_TARGET_TEAM_ENEMY"
        "Aura_Types"      "DOTA_UNIT_TARGET_ALL"
        "Aura_Flags"      "DOTA_UNIT_TARGET_FLAG_NONE"
        "Aura_ApplyToCaster" "0"
      }

      "modifier_righthouse_aura"
      {
        "Passive" "0"
        "IsDebuff"        "1"
        "IsHidden"        "0"
     
        "ThinkInterval"   "0.1"
        "OnIntervalThink"
        {
          "RunScript"
          {
            "ScriptFile"    "heroes/hurricane.lua"
            "Function"      "hurricane"
          }
        }     
      }
« Последнее редактирование: 27-03-2017, 18:34:04 от mrlikelot »

Оффлайн Dangalor

  • 17
  • Мощь: 0
А полный код абилки и желательно данного луа

Оффлайн KEKMAN

  • 168
  • Мощь: 2
  • Dota forever <3
А полный код абилки и желательно данного луа

Код
"ability_hurricane"
  {
    "ID"              "1852"
    "AbilityBehavior"       "DOTA_ABILITY_BEHAVIOR_TOGGLE | DOTA_ABILITY_BEHAVIOR_AOE"
    "BaseClass"           "ability_datadriven"
    "AbilityTextureName"      "jakiro_liquid_fire"


    "AbilityCastPoint"        "0.0"
    "AbilityUnitDamageType"     "DAMAGE_TYPE_PURE"
    "AbilityCastAnimation"      "ACT_DOTA_DISABLED"


    "precache"
    {
      "particle"      "particles/courier_trail_orbit.vpcf"
    }

     "AbilitySpecial"
    {
      "01"
      {
        "var_type"        "FIELD_INTEGER"
        "radius"        "400"
      }
    }

    // Item Info
   
    "OnToggleOn"
    {
      "ApplyModifier"
      {
        "Target"    "CASTER"
        "ModifierName"  "modifier_channel_start"
      }
      "ApplyModifier"
      {
        "Target"    "CASTER"
        "ModifierName"  "modifier_righthouse"
      }
    }
    "OnToggleOff"
    {
      "RemoveModifier"
      {
          "ModifierName"  "modifier_channel_start"
          "Target"        "CASTER"
      }
      "RemoveModifier"
      {
          "ModifierName"  "modifier_righthouse"
          "Target"        "CASTER"
      }
    }
   
   
    "Modifiers"
    {
      "modifier_channel_start"
      {
       "IsHidden" "1"
        "OnCreated"
        {
          "AttachEffect"
          {
            "EffectName"        "particles/courier_trail_orbit.vpcf"
            "EffectAttachType"  "follow_origin"
            "Target"            "CASTER"
          }
        }
      }

      "modifier_righthouse"
      {
      "Passive" "0"
        "IsHidden"                "0"
        "IsDebuff"        "1"
        "Aura"            "modifier_righthouse_aura"
        "Aura_Radius"     "%radius"
        "Aura_Teams"      "DOTA_UNIT_TARGET_TEAM_ENEMY"
        "Aura_Types"      "DOTA_UNIT_TARGET_ALL"
        "Aura_Flags"      "DOTA_UNIT_TARGET_FLAG_NONE"
        "Aura_ApplyToCaster" "0"
        "OnOwnerDied"
        {
            "RemoveModifier"
      {
          "ModifierName"  "modifier_righthouse"
          "Target"        "CASTER"
      }
        }
      }

      "modifier_righthouse_aura"
      {
        "Passive" "0"
        "IsDebuff"        "1"
        "IsHidden"        "0"
     
        "ThinkInterval"   "0.1"
        "OnIntervalThink"
        {
          "RunScript"
          {
            "ScriptFile"    "heroes/hurricane.lua"
            "Function"      "hurricane"
          }
        }     
      }
    }
  }

Код
function hurricane( keys )
local caster = keys.caster
local target = keys.target
local ability = keys.ability
local damage = target:GetMaxHealth() * 0.01
ApplyDamage({
attacker = caster,
victim = target,
ability = ability,
damage = damage,
damage_type = DAMAGE_TYPE_PURE
})
end

Оффлайн Dangalor

  • 17
  • Мощь: 0
Честно не пойму в чём проблема, вот у меня манашилд есть как итем
Код
 
"OnToggleOn"
    {
        "FireEffect"
        {
            "EffectName"        "particles/units/heroes/hero_medusa/medusa_mana_shield_cast.vpcf"
            "EffectAttachType"  "follow_origin"
            "Target"            "CASTER"
        }
        "ApplyModifier"
        {
            "ModifierName"  "item_create_36_shild"
            "Target"        "CASTER"
        }
    }

    "OnToggleOff"
    {
        "FireEffect"
        {
            "EffectName"        "particles/units/heroes/hero_medusa/medusa_mana_shield_end.vpcf"
            "EffectAttachType"  "follow_origin"
            "Target"            "CASTER"
        }
        "RemoveModifier"
        {
            "ModifierName"  "item_create_36_shild"
            "Target"
            {
                "Center"    "CASTER"
                "Flags"     "DOTA_UNIT_TARGET_FLAG_DEAD"
            }
        }
    }

Не уверен что проверка на Флаг юнита, но попробуй, потому что я проблемы не вижу

Оффлайн Илья

  • Супермодератор
  • 1892
  • Мощь: 16
Какой модификатор то не удаляется? modifier_righthouse_aura?

Оффлайн KEKMAN

  • 168
  • Мощь: 2
  • Dota forever <3
Честно не пойму в чём проблема, вот у меня манашилд есть как итем
Код
 
"OnToggleOn"
    {
        "FireEffect"
        {
            "EffectName"        "particles/units/heroes/hero_medusa/medusa_mana_shield_cast.vpcf"
            "EffectAttachType"  "follow_origin"
            "Target"            "CASTER"
        }
        "ApplyModifier"
        {
            "ModifierName"  "item_create_36_shild"
            "Target"        "CASTER"
        }
    }

    "OnToggleOff"
    {
        "FireEffect"
        {
            "EffectName"        "particles/units/heroes/hero_medusa/medusa_mana_shield_end.vpcf"
            "EffectAttachType"  "follow_origin"
            "Target"            "CASTER"
        }
        "RemoveModifier"
        {
            "ModifierName"  "item_create_36_shild"
            "Target"
            {
                "Center"    "CASTER"
                "Flags"     "DOTA_UNIT_TARGET_FLAG_DEAD"
            }
        }
    }

Не уверен что проверка на Флаг юнита, но попробуй, потому что я проблемы не вижу
Не помогло, modifier_righthouse

Оффлайн Илья

  • Супермодератор
  • 1892
  • Мощь: 16
Я тоже в затруднении, давно на lua модификаторы перешел. Проверь, пашет ли "OnOwnerDied" в твоем случае вообще.

Оффлайн KEKMAN

  • 168
  • Мощь: 2
  • Dota forever <3
Я тоже в затруднении, давно на lua модификаторы перешел. Проверь, пашет ли "OnOwnerDied" в твоем случае вообще.
Не работает, OnDeath работает, пишет "Debug" в консоль, но модифер всё равно удалять не хочет. Похоже придётся через луа.

Оффлайн KEKMAN

  • 168
  • Мощь: 2
  • Dota forever <3
Вот тогда код, мб у кого нибудь тоже проблема будет:
Код
"modifier_righthouse"
      {
      "Passive" "0"
        "IsHidden"                "0"
        "IsDebuff"        "1"
        "Aura"            "modifier_righthouse_aura"
        "Aura_Radius"     "%radius"
        "Aura_Teams"      "DOTA_UNIT_TARGET_TEAM_ENEMY"
        "Aura_Types"      "DOTA_UNIT_TARGET_ALL"
        "Aura_Flags"      "DOTA_UNIT_TARGET_FLAG_NONE"
        "Aura_ApplyToCaster" "0"
        "OnDeath"
        {
          "RunScript"
          {
              "ScriptFile"    "heroes/kill.lua"
              "Function"      "kill"
          }
        }
      }

Код
function kill( keys )
local caster = keys.caster
caster:RemoveModifierByName("modifier_righthouse")
end

Оффлайн Илья

  • Супермодератор
  • 1892
  • Мощь: 16
Можешь попробовать в другом модификаторе сделать удаление.

И сделал бы абилку целиком в lua, вместе с аурой. Меньше ошибок бы было.

Оффлайн KEKMAN

  • 168
  • Мощь: 2
  • Dota forever <3
Можешь попробовать в другом модификаторе сделать удаление.

И сделал бы абилку целиком в lua, вместе с аурой. Меньше ошибок бы было.
Думаю мне пока не хочется в луа это писать) Там код большой получается, а я, блин, не могу долбанную обезьяну заставить не прожимать скиллы))