private void Update() { if (m_IsPlayerInRange) { Vector3 direction = player.position - transform.position + Vector3.up; Ray ray = new Ray(transform.position, direction); RaycastHit raycastHit; if (Physics.Raycast(ray, out raycastHit)) { if (raycastHit.collider.transform == player) { Status playerStatus = player.GetComponent <Status>(); if (playerStatus) { StartCoroutine(playerStatus.ApplyDamage(damage)); } if (playerStatus.health <= 0) { gameEnding.CaughtPlayer(); } } } } }
void OnTriggerEnter(Collider col) { if (debug) { Debug.Log(col); } Status playerStatus = col.GetComponent <Status>(); if (playerStatus) { playerStatus.ApplyDamage(damage); } }