Example #1
0
    private void OnTriggerEnter(Collider other)
    {
        if (other.gameObject.name == TagStatics.GetPlayerName())
        {
            _pickupCollector = true;
            OnSphereDestroyed(_pickupCollector);
        }

        if (other.gameObject.name.Contains("Monster"))
        {
            _pickupCollector = false;
            OnSphereDestroyed(_pickupCollector);
        }
    }
Example #2
0
 private void OnTriggerEnter(Collider other)
 {
     if (this.enabled)
     {
         if (other.gameObject.tag == TagStatics.GetMobTag() && other.gameObject.name == TagStatics.GetPlayerName())
         {
             AttackTarget(other.gameObject);
         }
     }
 }
Example #3
0
    private void OnTriggerEnter(Collider other)
    {
        if (other.gameObject.tag == TagStatics.GetMobTag())
        {
            Destroy(gameObject);
        }
        else if (other.gameObject.tag == "Level")
        {
            Destroy(gameObject);
        }

        if (other.gameObject.tag == TagStatics.GetMobTag() && other.gameObject.name != TagStatics.GetPlayerName())
        {
            OnDamageMobEvent(other.gameObject, damageAmount);
        }
    }
Example #4
0
 private void OnTriggerExit(Collider other)
 {
     if (other.gameObject.tag == TagStatics.GetMobTag() && other.gameObject.name == TagStatics.GetPlayerName())
     {
         OnTargetExitRadius?.Invoke(other.gameObject);
         currentTarget     = null;
         _isTrackingTarget = false;
     }
 }
Example #5
0
    private void OnTriggerEnter(Collider other)
    {
        // We detect a pickup in our radius
        if (other.gameObject.tag == TagStatics.GetPickupTag())
        {
            if (InLineOfSight(other.gameObject))
            {
                OnTargetClearLOS?.Invoke(other.gameObject);
                OnTargetInRadius?.Invoke(other.gameObject);
                _isTrackingTarget = true;
            }
            else
            {
                OnTargetInRadius?.Invoke(other.gameObject);
                _isTrackingTarget = false;
            }
        }

        if (other.gameObject.tag == TagStatics.GetMobTag() && other.gameObject.name == TagStatics.GetPlayerName())
        {
            //The mob is within our LoS
            if (InLineOfSight(other.gameObject))
            {
                OnTargetClearLOS?.Invoke(other.gameObject);
                OnTargetInRadius?.Invoke(other.gameObject);
                _isTrackingTarget = true;
            }
            else
            {
                OnTargetInRadius?.Invoke(other.gameObject);
                _isTrackingTarget = false;
                return;
            }
            currentTarget = other.gameObject;
        }


        //We heard a noise
        if (other.gameObject.tag == "Audible")
        {
            OnHeardSound?.Invoke(other.gameObject);
        }
    }