Example #1
0
    public override void DataUpdate(object[] _Value)
    {
        base.DataUpdate(_Value);

        Character c = m_ParentObject as Character;

        if (c)
        {
            c.m_AddAttackDamage[(int)m_Type] -= m_DecreaseDamage;
            m_DecreaseDamage = 0;
        }
        m_SubDamage         = (float)_Value[1];
        m_Type              = (E_DAMAGETYPE)_Value[2];
        m_EffectPath        = (string)_Value[3];
        m_EffectAttachPoint = (Character.E_ATTACHPOINT)_Value[4];
        UnityEngine.Object.Destroy(m_Effect);

        if (m_EffectPath != "")
        {
            m_Effect = UnityEngine.Object.Instantiate(Resources.Load <GameObject>(m_EffectPath), (m_ParentObject as Character).GetAttachPoint(m_EffectAttachPoint));
            m_Effect.transform.localPosition = Vector3.zero;
            m_Effect.transform.localRotation = Quaternion.identity;
        }

        DamageDown();
    }
Example #2
0
 static protected float CalculateSkillDamage(Character _Caster, E_DAMAGETYPE _DamageType, float _SkillDamageMultiply)
 {
     if (_Caster.m_AttackType == _DamageType)
     {
         return((_Caster.m_AttackDamage + _Caster.m_AddAttackDamage[(int)_DamageType]) * _SkillDamageMultiply); // 타입이 같을때 공식
     }
     else
     {
         return((_Caster.m_AttackDamage + _Caster.m_AddAttackDamage[(int)_Caster.m_AttackType] + _Caster.m_AddAttackDamage[(int)_DamageType]) * _SkillDamageMultiply); // 타입이 다른 공격일때 공식
     }
 }
Example #3
0
    public BuffDamageDown(Object _Self, string _BuffName, int _BuffID, Sprite _BuffIcon, float _LifeTime, float _AddDamage, E_DAMAGETYPE _Type, string _EffectPath, Character.E_ATTACHPOINT _Point) :
        base(_Self, _BuffName, _BuffID, _BuffIcon, _LifeTime)
    {
        m_SubDamage         = _AddDamage;
        m_Type              = _Type;
        m_EffectPath        = _EffectPath;
        m_EffectAttachPoint = _Point;
        if (m_EffectPath != "")
        {
            m_Effect = UnityEngine.Object.Instantiate(Resources.Load <GameObject>(m_EffectPath), (m_ParentObject as Character).GetAttachPoint(m_EffectAttachPoint));
            m_Effect.transform.localPosition = Vector3.zero;
            m_Effect.transform.localRotation = Quaternion.identity;
        }

        DamageDown();
    }
 public void Initialize(Character _Caster, float _Damage, E_DAMAGETYPE _DamageType)
 {
     m_Caster     = _Caster;
     m_Damage     = _Damage;
     m_DamageType = _DamageType;
 }