Всем привет.
Только начинаю разбираться в скриптах.
Подскажите пожалуйста.
1. По задумке скил при касте должен отнимать хп в процентах от текущего покозателя хп. (Взял за пример ульт хускара)
2. Скил должен давать атаку в зависимости от отсутствующего ХП.
(К примеру если отсутствует Если у персонажа 1000 хп, прожали скил он отнял 30% то есть отсутствует 300 хп и дал атаку равную 10% от отсутствующего хп в размере 10%, то есть 30 атаки.)
3. Скил должен давать Защиту и Спел резист в зависимости от % отсутствующего ХП, к примеру у персонажа отсутствует 30% хп, скил дает 10 защиты и 10% спел резиста, отсутствует 40% хп - дает 15 защиты и 15% спел резиста и так далее.
Эта строчка вообще загнала в тупик, не понимаю куда она ссылается "LinkedSpecialBonus" "special_bonus_unique_huskar_6"
ниже пример тот что набросал но нифига не работает)
"hutao_fire_sword"
{
// General
//-------------------------------------------------------------------------------------------------------------
"BaseClass" "ability_datadriven"
"AbilityTextureName" "huskar_berserkers_blood"
"AbilityBehavior" "DOTA_ABILITY_BEHAVIOR_NO_TARGET"
"AbilityUnitDamageType" "DAMAGE_TYPE_MAGICAL"
"SpellImmunityType" "SPELL_IMMUNITY_ENEMIES_NO"
"SpellDispellableType" "SPELL_DISPELLABLE_YES"
"AbilitySound" "Hero_EmberSpirit.FlameGuard.Cast"
// Casting
//-------------------------------------------------------------------------------------------------------------
"AbilityCastRange" "400"
"AbilityCastPoint" "0"
// Time
//-------------------------------------------------------------------------------------------------------------
"AbilityCooldown" "18.0 16.0 14.0 12.0"
"AbilityDuration" "8.0"
// Cost
//-------------------------------------------------------------------------------------------------------------
"AbilityManaCost" "0 0 0 0"
// Special
//-------------------------------------------------------------------------------------------------------------
"AbilitySpecial"
{
"01"
{
"var_type" "FIELD_INTEGER"
"bonus_armor" "12 18 24 30"
"LinkedSpecialBonus" "special_bonus_unique_huskar_6"
}
"02"
{
"var_type" "FIELD_INTEGER"
"bonus_damage" "30 70 110 150"
"LinkedSpecialBonus" "special_bonus_unique_huskar_6"
}
"03"
{
"var_type" "FIELD_INTEGER"
"hp_threshold_max" "10"
}
"04"
{
"var_type" "FIELD_FLOAT"
"health_cost_percent" "0.36 0.34 0.32 0.30"
}
"05"
{
"var_type" "FIELD_INTEGER"
"radius" "800"
"LinkedSpecialBonus" "special_bonus_unique_brewmaster_7"
}
}
"AbilityCastAnimation" "ACT_DOTA_OVERRIDE_ABILITY_4"
}
Только начинаю разбираться в скриптах.
Подскажите пожалуйста.
1. По задумке скил при касте должен отнимать хп в процентах от текущего покозателя хп. (Взял за пример ульт хускара)
2. Скил должен давать атаку в зависимости от отсутствующего ХП.
(К примеру если отсутствует Если у персонажа 1000 хп, прожали скил он отнял 30% то есть отсутствует 300 хп и дал атаку равную 10% от отсутствующего хп в размере 10%, то есть 30 атаки.)
3. Скил должен давать Защиту и Спел резист в зависимости от % отсутствующего ХП, к примеру у персонажа отсутствует 30% хп, скил дает 10 защиты и 10% спел резиста, отсутствует 40% хп - дает 15 защиты и 15% спел резиста и так далее.
Эта строчка вообще загнала в тупик, не понимаю куда она ссылается "LinkedSpecialBonus" "special_bonus_unique_huskar_6"
ниже пример тот что набросал но нифига не работает)
"hutao_fire_sword"
{
// General
//-------------------------------------------------------------------------------------------------------------
"BaseClass" "ability_datadriven"
"AbilityTextureName" "huskar_berserkers_blood"
"AbilityBehavior" "DOTA_ABILITY_BEHAVIOR_NO_TARGET"
"AbilityUnitDamageType" "DAMAGE_TYPE_MAGICAL"
"SpellImmunityType" "SPELL_IMMUNITY_ENEMIES_NO"
"SpellDispellableType" "SPELL_DISPELLABLE_YES"
"AbilitySound" "Hero_EmberSpirit.FlameGuard.Cast"
// Casting
//-------------------------------------------------------------------------------------------------------------
"AbilityCastRange" "400"
"AbilityCastPoint" "0"
// Time
//-------------------------------------------------------------------------------------------------------------
"AbilityCooldown" "18.0 16.0 14.0 12.0"
"AbilityDuration" "8.0"
// Cost
//-------------------------------------------------------------------------------------------------------------
"AbilityManaCost" "0 0 0 0"
// Special
//-------------------------------------------------------------------------------------------------------------
"AbilitySpecial"
{
"01"
{
"var_type" "FIELD_INTEGER"
"bonus_armor" "12 18 24 30"
"LinkedSpecialBonus" "special_bonus_unique_huskar_6"
}
"02"
{
"var_type" "FIELD_INTEGER"
"bonus_damage" "30 70 110 150"
"LinkedSpecialBonus" "special_bonus_unique_huskar_6"
}
"03"
{
"var_type" "FIELD_INTEGER"
"hp_threshold_max" "10"
}
"04"
{
"var_type" "FIELD_FLOAT"
"health_cost_percent" "0.36 0.34 0.32 0.30"
}
"05"
{
"var_type" "FIELD_INTEGER"
"radius" "800"
"LinkedSpecialBonus" "special_bonus_unique_brewmaster_7"
}
}
"AbilityCastAnimation" "ACT_DOTA_OVERRIDE_ABILITY_4"
}