Изменение параметров способности через луа

Adam Smith

Друзья CG
4 Окт 2014
473
2
Господа собственно вопрос века, как изменять параметры абилки через луа. Грубо говоря, что бы когда игрок покупал аганим у абилки изменялись внешние параметы, тип урона, кд и тд

SetAbylityDamageType нету такого так же и нет SetAbilityCooldown
Мне надо что бы это показывалось на абилке именно
 

Илья

Друзья CG
25 Сен 2015
2,348
41
Господа собственно вопрос века, как изменять параметры абилки через луа. Грубо говоря, что бы когда игрок покупал аганим у абилки изменялись внешние параметы, тип урона, кд и тд

SetAbylityDamageType нету такого так же и нет SetAbilityCooldown
Мне надо что бы это показывалось на абилке именно

Если ты абилку создавал через луа скрипт, то не вижу проблему: заранее подготавливаешь разветвление в абилке, где в одном случае урон без аганима, а в другом с присутствием аганима в инвентаре.

Другой вопрос, если ты хочешь изменить "txt" абилку. Вот тут я пока что хз, если, как ты говоришь, нет функций на изменение дмг и прочего у абилок.

Как вариант, можешь модификатор добавлять, что будет при касте той или иной способности доп урон наносить или что там у тебя.
 
Последнее редактирование модератором:

Adam Smith

Друзья CG
4 Окт 2014
473
2
Если ты абилку создавал через луа скрипт, то не вижу проблему: заранее подготавливаешь разветвление в абилке, где в одном случае урон без аганима, а в другом с присутствием аганима в инвентаре.

Другой вопрос, если ты хочешь изменить "txt" абилку. Вот тут я пока что хз, если, как ты говоришь, нет функций на изменение дмг и прочего у абилок.

Как вариант, можешь модификатор добавлять, что будет при касте той или иной способности доп урон наносить или что там у тебя.

Это то все понятно. Мне надо что бы внешние показатели изменялись
Это:
e9a24b768999.png



На Это:
b2e5a2f2e07e.png
 
Последнее редактирование модератором:

Илья

Друзья CG
25 Сен 2015
2,348
41
Ааа, так это же просто в ресурсах в addon_russian.txt или там addon_english.txt прописываешь. Как в обычной доте. Или я чего-то не понял снова?)
 

CryDeS

Друзья CG
14 Июл 2015
1,210
11
Добавляешь параметр в AbilitySpecial типо damage_scepter_tooltip и пишешь урон с аганимом.
А в скрипте пишешь if hero:HasScepter() then return 1000 end
 

Adam Smith

Друзья CG
4 Окт 2014
473
2
[quote author=CryDeS link=topic=726.msg2797#msg2797 date=1454600561]
Добавляешь параметр в AbilitySpecial типо damage_scepter_tooltip и пишешь урон с аганимом.
А в скрипте пишешь if hero:HasScepter() then return 1000 end
[/quote]

я не очень понял что означает return 1000
Нужно что бы показывалось в самой абилки измнение параметра-туллтипа тобишь ТИП УРОНА и тд, как у Лины с аганимом
 

Илья

Друзья CG
25 Сен 2015
2,348
41
Блин, держи, пример оформления скилла в моде:

"DOTA_Tooltip_Ability_axe_culling_blade_custom" "**ашилово"
"DOTA_Tooltip_Ability_axe_culling_blade_custom_Description" "Axe наносит удар по слабому месту, мгновенно убивая юнита с низким уровнем здоровья, а в ином случае нанося небольшой урон. При убийстве вражеского героя способность мгновенно восстановится, а Axe и союзники поблизости получат дополнительную скорость передвижения. Улучшается с Aghanim's Scepter."
"DOTA_Tooltip_Ability_axe_culling_blade_custom_kill_threshold" "Граница убийства:"
"DOTA_Tooltip_Ability_axe_culling_blade_custom_damage" "Урон:"
"DOTA_Tooltip_Ability_axe_culling_blade_custom_speed_bonus" "Доп. скорость передвижения при убийстве:"
"DOTA_Tooltip_Ability_axe_culling_blade_custom_atk_speed_bonus_tooltip" "Доп. скорость атаки при убийстве:"
"DOTA_Tooltip_Ability_axe_culling_blade_custom_speed_duration" "Продолжительность бафов"
"DOTA_Tooltip_Ability_axe_culling_blade_custom_speed_aoe" "Радиус бафов"
"DOTA_Tooltip_Ability_axe_culling_blade_custom_kill_threshold_scepter" "Граница убийства со скипетром:"
"DOTA_Tooltip_Ability_axe_culling_blade_custom_speed_duration_scepter" "Продолжительность бафов со скипетром:"
"DOTA_Tooltip_ability_axe_culling_blade_custom_aghanim_description" "Уменьшает кд, увеличивает границу и продолжительность"

Все это пишу в addon_russian.txt. В итоге:

NITkaZZ.png



//=================================================================================================================
// AXE
//=================================================================================================================

"axe_culling_blade_custom"
{
// General
//-------------------------------------------------------------------------------------------------------------
"BaseClass" "axe_culling_blade"
"AbilityType" "DOTA_ABILITY_TYPE_ULTIMATE"
"AbilityBehavior" "DOTA_ABILITY_BEHAVIOR_UNIT_TARGET"
"AbilityUnitTargetTeam" "DOTA_UNIT_TARGET_TEAM_ENEMY"
"AbilityUnitTargetType" "DOTA_UNIT_TARGET_CREEP | DOTA_UNIT_TARGET_BASIC"
"AbilityUnitTargetFlags" "DOTA_UNIT_TARGET_FLAG_MAGIC_IMMUNE_ENEMIES"
"SpellImmunityType" "SPELL_IMMUNITY_ENEMIES_YES"
"AbilityUnitDamageType" "DAMAGE_TYPE_MAGICAL"
"FightRecapLevel" "2"

// Casting
//-------------------------------------------------------------------------------------------------------------
"AbilityCastPoint" "0.3"

// Time
//-------------------------------------------------------------------------------------------------------------
"AbilityCooldown" "5.0 5.0 5.0"

// Cost
//-------------------------------------------------------------------------------------------------------------
"AbilityManaCost" "10 10 10"

// Cast Range
//-------------------------------------------------------------------------------------------------------------
"AbilityCastRange" "150"

// Special
//-------------------------------------------------------------------------------------------------------------
"AbilitySpecial"
{
"01"
{
"var_type" "FIELD_INTEGER"
"kill_threshold" "250 325 400"
}
"02"
{
"var_type" "FIELD_INTEGER"
"damage" "150 250 300"
}
"03"
{
"var_type" "FIELD_INTEGER"
"speed_bonus" "50"
}
"04"
{
"var_type" "FIELD_INTEGER"
"atk_speed_bonus_tooltip" "50"
}
"05"
{
"var_type" "FIELD_FLOAT"
"speed_duration" "6"
}
"06"
{
"var_type" "FIELD_INTEGER"
"speed_aoe" "900"
}
"07"
{
"var_type" "FIELD_FLOAT"
"cooldown_scepter" "1.0 1.0 1.0"
}
"08"
{
"var_type" "FIELD_INTEGER"
"kill_threshold_scepter" "300 450 600"
}
"09"
{
"var_type" "FIELD_FLOAT"
"speed_duration_scepter" "12"
}
}
}
 
Последнее редактирование модератором:

Илья

Друзья CG
25 Сен 2015
2,348
41
У некоторых, например у Juggernauta, так вообще при наличии скипетра стандартное описание заменяется (т.е. белый текст, а не добавляется как у Акса зеленый)
 

CryDeS

Друзья CG
14 Июл 2015
1,210
11
я не очень понял что означает return 1000
Нужно что бы показывалось в самой абилки измнение параметра-туллтипа тобишь ТИП УРОНА и тд, как у Лины с аганимом
Тип урона нельзя поменять. Уже обсуждалось.
 
Последнее редактирование модератором:

Илья

Друзья CG
25 Сен 2015
2,348
41
Есть выход: делать свою с нуля)

Если не хочешь тратить много времени, то, например, можешь с легкостью написать код, который будет в радиусе определенном наносить чистый урон нужным юнитам и при этом давать герою скрытно ту абилку, анимацию которой ты хочешь, но абилку эту заранее подготовить: убрать у нее урон.

Я вот хотел, чтобы ульта ЦМ-ки применяла на юнитов модификатор frostbite (замораживала). В итоге сделал абилку на место ее ульты, код которой давал юнитам в радиусе этот модификатор и в то же время скрытно давал кристалке ее настоящую ульту, кастовал, а потом удалял.
 

CryDeS

Друзья CG
14 Июл 2015
1,210
11
Если не хочешь тратить много времени, то, например, можешь с легкостью написать код, который будет в радиусе определенном наносить чистый урон нужным юнитам и при этом давать герою скрытно ту абилку, анимацию которой ты хочешь, но абилку эту заранее подготовить: убрать у нее урон.

Я вот хотел, чтобы ульта ЦМ-ки применяла на юнитов модификатор frostbite (замораживала). В итоге сделал абилку на место ее ульты, код которой давал юнитам в радиусе этот модификатор и в то же время скрытно давал кристалке ее настоящую ульту, кастовал, а потом удалял.
Да ты царь в царстве костылей я смотрю :D
 
Последнее редактирование модератором:
Реклама: