Exemple #1
0
        public void Attack1(E_AniCallType p_calltype)
        {
            AttackData attackdata = AttackDataArray[0];

            if (attackdata.AttackRangeType == E_AttackRangeType.Meel)
            {
                if (attackdata.AttackMutiType == E_AttackMultiType.Single)
                {
                    float attackval = m_ActorData.Attack + attackdata.AddAttackVal;
                    m_TargetActor.SetDamage(this, attackval);
                }
                else if (attackdata.AttackMutiType == E_AttackMultiType.Multi)
                {
                    float attackval = m_ActorData.Attack + attackdata.AddAttackVal;
                    m_TargetActor.SetDamage(this, attackval);


                    int        layermaskval  = CalcManager.GetActorCampTypeTOLayerMask(m_TargetActor);
                    Collider[] colliderarray = Physics.OverlapSphere(m_TargetActor.transform.position
                                                                     , attackdata.MultiAttackRangeVal
                                                                     , layermaskval);

                    attackval = attackval * attackdata.MultiAttackRangeDiv;
                    foreach (var item in colliderarray)
                    {
                        BaseActor tempactor = item.GetComponent <BaseActor>();
                        if (tempactor)
                        {
                            tempactor.SetDamage(this, attackval);
                        }
                    }
                }
            }
            else if (attackdata.AttackRangeType == E_AttackRangeType.Range)
            {
                // 피사체 던지기
                InGameBattleManager.GetI.AddRangeAttackObject(m_TargetActor, this, attackdata);
            }


            UpdateSerchingDieActor();
        }
Exemple #2
0
        void SetAttack()
        {
            if (m_LinkAttackData.AttackMutiType == E_AttackMultiType.Single)
            {
                m_TargetActor.SetDamage(m_AttackerActor, m_LinkAttackData.AddAttackVal);
            }
            else if (m_LinkAttackData.AttackMutiType == E_AttackMultiType.Multi)
            {
                //m_TargetActor.SetDamage(m_AttackerActor, m_LinkAttackData.AddAttackVal);
            }


            GameObject.Destroy(gameObject, 2f);
        }