private void CheckCollisions() { List <GameObject> frontCollisions = collisionChecker.CheckForCollisions(Vector2.up, "Car", 2f); for (int i = 0; i < frontCollisions.Count; i++) { if (frontCollisions[i] != this.gameObject) { Car otherCar = frontCollisions[i].GetComponent <Car>(); if (otherCar.Speed < speed) { otherCar.Speed = speed; } } } frontCollisions = collisionChecker.CheckForCollisions(Vector2.up, "Player", 2f); for (int i = 0; i < frontCollisions.Count; i++) { AmbulanceController ambulanceController = frontCollisions[i].GetComponent <AmbulanceController>(); if (ambulanceController.Speed < speed) { speed = ambulanceController.Speed; } } }
private void CheckForCollisions() { List <GameObject> leftCollisions = collisionChecker.CheckForCollisions(Vector2.left, "Wall", 0.5f); List <GameObject> rightCollisions = collisionChecker.CheckForCollisions(Vector2.right, "Wall", 0.5f); if (leftCollisions.Count >= 1) { isAbleToMoveLeft = false; } else { isAbleToMoveLeft = true; } if (rightCollisions.Count >= 1) { isAbleToMoveRight = false; } else { isAbleToMoveRight = true; } }
private void CheckForInteractableObjects() { List <GameObject> rightInteractableObjects = new List <GameObject>(); List <GameObject> leftInteractableObjects = new List <GameObject>(); leftInteractableObjects = collisionChecker.CheckForCollisions(Vector2.left, "Interactable", 0.5f); rightInteractableObjects = collisionChecker.CheckForCollisions(Vector2.right, "Interactable", 0.5f); if (leftInteractableObjects != null) { if (leftInteractableObjects.Count > 0) { InteractWithObject(leftInteractableObjects[0]); } } if (rightInteractableObjects != null) { if (rightInteractableObjects.Count > 0) { InteractWithObject(rightInteractableObjects[0]); } } }