Простые вопросы #2

Статус
В этой теме нельзя размещать новые ответы.

EYEOFLIE

Активный
28 Янв 2018
137
4
Тут собственно свой мод выложить можно?, ито не могу найти куда бы вставить свое детище, хоть и баянистое зато с душой сделанное
 

EYEOFLIE

Активный
28 Янв 2018
137
4
Оч глупый вопрос был, извините, просто сами поймете когда увидите, надеюсь не удалят))
 

HappyFeedFriends

Друзья CG
14 Авг 2017
540
32
Проект
Battle Heroes Arena
Я делал это так (наследуешь от "special_bonus_undefined"):
Код:
function Talents:LinkTalent( hero, talent_name, linked_talent_name )
    if hero:HasAbility( talent_name ) then
        local modifier = hero:AddNewModifier( hero, nil, "modifier_talent_linker", {} )
        modifier:StartCheck( hero:FindAbilityByName( talent_name ), linked_talent_name )
    end
end

modifier_talent_linker = class( {} )
function modifier_talent_linker:GetAttributes()
    return MODIFIER_ATTRIBUTE_PERMANENT + MODIFIER_ATTRIBUTE_MULTIPLE + MODIFIER_ATTRIBUTE_IGNORE_INVULNERABLE
end
function modifier_talent_linker:IsHidden()
    return true
end
function modifier_talent_linker:StartCheck( talent, linked_talent_name )
    if IsServer() then
        self.talent = talent
        self.linked_talent_name = linked_talent_name
        self:StartIntervalThink( 0.5 )
    end
end
function modifier_talent_linker:OnIntervalThink()
    if self.talent:IsTrained() then
        local linked_talent = self:GetParent():AddAbility( self.linked_talent_name )
        linked_talent:UpgradeAbility( true )
        self:Destroy()
    end
end
Тут при вкачке основного таланта, герою дается способность linked_talent. Она уже может быть написана как угодно: на дд, луа, или еще как. Можешь изменить под себя, и давать модификатор вместо способности.
Возможно есть способ проще, но тут так-то тоже ничего сложного.
Я так понимаю. При выкачке скилла - герой получает скрытый модификатор,который чекает каждые 0.5 секунды взят ли талант или нет? и если взят = накидывает модификатор?
 

HappyFeedFriends

Друзья CG
14 Авг 2017
540
32
Проект
Battle Heroes Arena
Я делал это так (наследуешь от "special_bonus_undefined"):
Код:
function Talents:LinkTalent( hero, talent_name, linked_talent_name )
    if hero:HasAbility( talent_name ) then
        local modifier = hero:AddNewModifier( hero, nil, "modifier_talent_linker", {} )
        modifier:StartCheck( hero:FindAbilityByName( talent_name ), linked_talent_name )
    end
end

modifier_talent_linker = class( {} )
function modifier_talent_linker:GetAttributes()
    return MODIFIER_ATTRIBUTE_PERMANENT + MODIFIER_ATTRIBUTE_MULTIPLE + MODIFIER_ATTRIBUTE_IGNORE_INVULNERABLE
end
function modifier_talent_linker:IsHidden()
    return true
end
function modifier_talent_linker:StartCheck( talent, linked_talent_name )
    if IsServer() then
        self.talent = talent
        self.linked_talent_name = linked_talent_name
        self:StartIntervalThink( 0.5 )
    end
end
function modifier_talent_linker:OnIntervalThink()
    if self.talent:IsTrained() then
        local linked_talent = self:GetParent():AddAbility( self.linked_talent_name )
        linked_talent:UpgradeAbility( true )
        self:Destroy()
    end
end
Тут при вкачке основного таланта, герою дается способность linked_talent. Она уже может быть написана как угодно: на дд, луа, или еще как. Можешь изменить под себя, и давать модификатор вместо способности.
Возможно есть способ проще, но тут так-то тоже ничего сложного.
Но вот вопрос. Как он определяет выкачанность таланта? Он вроде всегда даёт модификатор.
 

Илья

Друзья CG
25 Сен 2015
2,348
41
Но вот вопрос. Как он определяет выкачанность таланта? Он вроде всегда даёт модификатор.

Что такое талант? Это абилка. И у абилки есть уровень. Возможно, так и проверяет. Но мне сдается, что никакой там модификатор ниче не проверяет. Просто абилка сама навешивает модификатор при прокачке и все.
 

makc45tlist

Пользователь
24 Янв 2018
43
0
как сделать общий фонтан? у меня 10 команд и надо сделать 1 общий
 

vulkantsk

Супермодератор
Команда форума
21 Июн 2017
1,137
196
www.dotabuff.com
Проект
Roshan defense
где взять абилку фонтана?
У меня на карте есть вд - аналог общего фонтана !
вот абилка
Код:
    "fountain_aura"
    {
        // General
        //-------------------------------------------------------------------------------------------------------------
        "AbilityBehavior"                "DOTA_ABILITY_BEHAVIOR_AOE | DOTA_ABILITY_BEHAVIOR_PASSIVE"
        "BaseClass"                        "ability_datadriven"
        "AbilityTextureName"            "witch_doctor_voodoo_restoration"
        
        "OnSpellStart"
        {
            "ApplyModifier"
            {
                "ModifierName"            "fountain_aura_regen"
                "Target"                "CASTER"
            }
        }
        "AbilitySpecial"
        {
            // This Values are mostly for tooltips, the unit stats are not affected
            "01"
            {
                "var_type"                    "FIELD_INTEGER"
                "hp_reg"                    "6"
            }
            "02"
            {
                "var_type"                    "FIELD_INTEGER"
                "mp_reg"                    "6"
            }
            
        }
        // Modifiers
        //-------------------------------------------------------------------------------------------------------------
        "Modifiers"
        {
            "fountain_aura_regen"
            {
                "IsHidden"                "1"
                "Passive"                "1"
                "Aura_ApplyToCaster"    "0"
                
                "Aura"                    "modifier_fountain_regen"
                "Aura_Radius"            "600"
                "Aura_Teams"            "DOTA_UNIT_TARGET_TEAM_ENEMY"
                "Aura_Types"            "DOTA_UNIT_TARGET_HERO | DOTA_UNIT_TARGET_CREEP | DOTA_UNIT_TARGET_MECHANICAL"
                "Aura_Flags"             "DOTA_UNIT_TARGET_FLAG_INVULNERABLE"
                "Aura_ApplyToCaster"    "0"
                
            }
            
            "modifier_fountain_regen"
            {
                "IsBuff" "1"
                "Passive" "0"
                "IsHidden" "0"
                "EffectName"        "particles/generic_gameplay/rune_regeneration.vpcf" //"particles/items_fx/healing_flask.vpcf" //"particles/econ/events/ti4/radiant_fountain_regen_ti4.vpcf"
                "EffectAttachType"    "follow_origin"
                "Properties"
                {
                    "MODIFIER_PROPERTY_HEALTH_REGEN_PERCENTAGE"    "%hp_reg"
                    "MODIFIER_PROPERTY_MANA_REGEN_TOTAL_PERCENTAGE"     "%mp_reg"
                }
            }   
        }
    }
 
  • Нравится
Реакции: makc45tlist
20 Дек 2016
892
170
Но вот вопрос. Как он определяет выкачанность таланта? Он вроде всегда даёт модификатор.
if self.talent:IsTrained() then
LinkTalent надо делать вручную в начале игры. Модификатор этот будет висеть, пока не вкачаешь талант, которой по сути будет пустышкой. Просто при этом добавиться уже нормальный талант (способность), который можешь сам написать. Либо сразу давать модификатор вместо способности, но лучше все-таки давать способность-пассивку.
 
Последнее редактирование:

makc45tlist

Пользователь
24 Янв 2018
43
0
У меня на карте есть вд - аналог общего фонтана !
вот абилка
Код:
    "fountain_aura"
    {
        // General
        //-------------------------------------------------------------------------------------------------------------
        "AbilityBehavior"                "DOTA_ABILITY_BEHAVIOR_AOE | DOTA_ABILITY_BEHAVIOR_PASSIVE"
        "BaseClass"                        "ability_datadriven"
        "AbilityTextureName"            "witch_doctor_voodoo_restoration"
       
        "OnSpellStart"
        {
            "ApplyModifier"
            {
                "ModifierName"            "fountain_aura_regen"
                "Target"                "CASTER"
            }
        }
        "AbilitySpecial"
        {
            // This Values are mostly for tooltips, the unit stats are not affected
            "01"
            {
                "var_type"                    "FIELD_INTEGER"
                "hp_reg"                    "6"
            }
            "02"
            {
                "var_type"                    "FIELD_INTEGER"
                "mp_reg"                    "6"
            }
           
        }
        // Modifiers
        //-------------------------------------------------------------------------------------------------------------
        "Modifiers"
        {
            "fountain_aura_regen"
            {
                "IsHidden"                "1"
                "Passive"                "1"
                "Aura_ApplyToCaster"    "0"
               
                "Aura"                    "modifier_fountain_regen"
                "Aura_Radius"            "600"
                "Aura_Teams"            "DOTA_UNIT_TARGET_TEAM_ENEMY"
                "Aura_Types"            "DOTA_UNIT_TARGET_HERO | DOTA_UNIT_TARGET_CREEP | DOTA_UNIT_TARGET_MECHANICAL"
                "Aura_Flags"             "DOTA_UNIT_TARGET_FLAG_INVULNERABLE"
                "Aura_ApplyToCaster"    "0"
               
            }
           
            "modifier_fountain_regen"
            {
                "IsBuff" "1"
                "Passive" "0"
                "IsHidden" "0"
                "EffectName"        "particles/generic_gameplay/rune_regeneration.vpcf" //"particles/items_fx/healing_flask.vpcf" //"particles/econ/events/ti4/radiant_fountain_regen_ti4.vpcf"
                "EffectAttachType"    "follow_origin"
                "Properties"
                {
                    "MODIFIER_PROPERTY_HEALTH_REGEN_PERCENTAGE"    "%hp_reg"
                    "MODIFIER_PROPERTY_MANA_REGEN_TOTAL_PERCENTAGE"     "%mp_reg"
                }
            }  
        }
    }
Благодарствую,ты топ
 

I_GRIN_I

Друзья CG
15 Мар 2016
1,335
105
У меня на карте есть вд - аналог общего фонтана !
вот абилка
Код:
    "fountain_aura"
    {
        // General
        //-------------------------------------------------------------------------------------------------------------
        "AbilityBehavior"                "DOTA_ABILITY_BEHAVIOR_AOE | DOTA_ABILITY_BEHAVIOR_PASSIVE"
        "BaseClass"                        "ability_datadriven"
        "AbilityTextureName"            "witch_doctor_voodoo_restoration"
       
        "OnSpellStart"
        {
            "ApplyModifier"
            {
                "ModifierName"            "fountain_aura_regen"
                "Target"                "CASTER"
            }
        }
        "AbilitySpecial"
        {
            // This Values are mostly for tooltips, the unit stats are not affected
            "01"
            {
                "var_type"                    "FIELD_INTEGER"
                "hp_reg"                    "6"
            }
            "02"
            {
                "var_type"                    "FIELD_INTEGER"
                "mp_reg"                    "6"
            }
           
        }
        // Modifiers
        //-------------------------------------------------------------------------------------------------------------
        "Modifiers"
        {
            "fountain_aura_regen"
            {
                "IsHidden"                "1"
                "Passive"                "1"
                "Aura_ApplyToCaster"    "0"
               
                "Aura"                    "modifier_fountain_regen"
                "Aura_Radius"            "600"
                "Aura_Teams"            "DOTA_UNIT_TARGET_TEAM_ENEMY"
                "Aura_Types"            "DOTA_UNIT_TARGET_HERO | DOTA_UNIT_TARGET_CREEP | DOTA_UNIT_TARGET_MECHANICAL"
                "Aura_Flags"             "DOTA_UNIT_TARGET_FLAG_INVULNERABLE"
                "Aura_ApplyToCaster"    "0"
               
            }
           
            "modifier_fountain_regen"
            {
                "IsBuff" "1"
                "Passive" "0"
                "IsHidden" "0"
                "EffectName"        "particles/generic_gameplay/rune_regeneration.vpcf" //"particles/items_fx/healing_flask.vpcf" //"particles/econ/events/ti4/radiant_fountain_regen_ti4.vpcf"
                "EffectAttachType"    "follow_origin"
                "Properties"
                {
                    "MODIFIER_PROPERTY_HEALTH_REGEN_PERCENTAGE"    "%hp_reg"
                    "MODIFIER_PROPERTY_MANA_REGEN_TOTAL_PERCENTAGE"     "%mp_reg"
                }
            }  
        }
    }
Будешь таких кормить - на шею сядут
 
20 Дек 2016
892
170
Хочу сделать 70к+ маны, не переписывая манабар (для этого вроде вообще всю нижнюю панель надо пересоздавать). Есть идеи, как ето можно сделать?
 

I_GRIN_I

Друзья CG
15 Мар 2016
1,335
105
Хочу сделать 70к+ маны, не переписывая манабар (для этого вроде вообще всю нижнюю панель надо пересоздавать). Есть идеи, как ето можно сделать?
Нет, просто удаляешь дотовский манабар и добавляешь свой, это очень легко
 

I_GRIN_I

Друзья CG
15 Мар 2016
1,335
105
Статус
В этой теме нельзя размещать новые ответы.
Реклама: