Exemplo n.º 1
0
    void OnTriggerEnter(Collider c)
    {
        EAActor pAttackedActor = c.gameObject.GetComponent <EAActor>();

        EAActor pActor = GetOwnerActor();

        if (pAttackedActor != null)
        {
            //  [4/11/2018 puos] attacker is not dead
            if (pActor != null)
            {
                if (pActor.GetCharBase().GetObjID() != pAttackedActor.GetCharBase().GetObjID())
                {
                    EA_GameEvents.onAttackMsg(pActor.GetCharBase(), pAttackedActor.GetCharBase(), WeaponInfo, GetItemBase().GetObjID());
                }
                else
                {
                    //  [12/2/2019 puos] If attacker and attacked are the same, passing
                    return;
                }
            }
            else
            {
                EA_GameEvents.onAttackMsg(null, pAttackedActor.GetCharBase(), WeaponInfo, GetItemBase().GetObjID());
            }
        }

        if (WeaponInfo.onExplosionEvent != null)
        {
            WeaponInfo.onExplosionEvent(GetItemBase().GetObjID());
        }
    }
Exemplo n.º 2
0
    /// <summary>
    ///
    /// </summary>
    /// <param name="pAttackedActor"></param>
    protected void Slice(EAActor pAttackedActor)
    {
        EAActor pActor = GetOwnerActor();

        //  [4/11/2018 puos] bug fixed attacker dies
        if (pAttackedActor != null)
        {
            if (pActor != null)
            {
                //  [4/18/2018 puos] Collided object must not be self
                if (pActor.GetCharBase().GetObjID() != pAttackedActor.GetCharBase().GetObjID())
                {
                    EA_GameEvents.onAttackMsg(pActor.GetCharBase(), pAttackedActor.GetCharBase(), GetAttackWeaponInfo(), CObjGlobal.InvalidObjID);
                }
            }
            else
            {
                EA_GameEvents.onAttackMsg(null, pAttackedActor.GetCharBase(), GetAttackWeaponInfo(), CObjGlobal.InvalidObjID);
            }
        }
    }