Assets.Scripts.Enemy.EnemyMovement.OnTriggerEnter C# (CSharp) Method

OnTriggerEnter() public method

public OnTriggerEnter ( Collider col ) : void
col UnityEngine.Collider
return void
        void OnTriggerEnter(Collider col)
        {
            var bullet = col.GetComponent<Bullet>();

            if (bullet != null)
            {
                if (State != EnemyState.Detect)
                {
                    State = EnemyState.Searching;

                    var player = GameObject.Find("Player");
                    var size = .15f;
                    var points = new[]
                    {
                        player.transform.position,
                        player.transform.position + new Vector3(size, 0, size),
                        player.transform.position + new Vector3(-size, 0, -size),
                        player.transform.position + new Vector3(-size, 0, size),
                        player.transform.position + new Vector3(size, 0, -size)
                    };

                    foreach (var point in points)
                    {
                        RaycastHit hit;
                        if (Physics.Raycast(transform.position, point - transform.position + new Vector3(0, .2f, 0), out hit))
                        {
                            if (hit.transform.tag == "Player")
                            {
                                State = EnemyState.Detect;
                                _lastKnownLocation = player.transform.position;
                            }
                        }
                    }
                }
            }
        }
    }