private void LateUpdate() { if (moveTargetFoundThisFrame) { tankController.RotateTowardsTarget(moveTarget); moveTargetFoundThisFrame = false; if (moveTargetSeenByDriver) { moveTargetSeenByDriver = false; tankController.MoveForward(); } } else { tankController.TurnRight(); tankController.MoveForward(); } if (shootTargetFoundThisFrame) { turretController.RotateTowardsTarget(shootTarget); if (shootTargetSeenByTurret) { shootTargetSeenByTurret = false; turretController.Shoot(); } } }
private void Update() { if (Input.GetKey(moveTankForward)) { tankController.MoveForward(); } if (Input.GetKey(turnTankLeft)) { tankController.TurnLeft(); } if (Input.GetKey(moveTankBackward)) { tankController.MoveBackward(); } if (Input.GetKey(turnTankRight)) { tankController.TurnRight(); } if (Input.GetKeyDown(KeyCode.Space)) { turretController.Shoot(); } if (Input.GetKey(KeyCode.Q)) { turretController.TurnLeft(); } if (Input.GetKey(KeyCode.E)) { turretController.TurnRight(); } }
public IEnumerator Shoot(MovementController ctr) { TurretController ltr = ctr as TurretController; yield return(ltr.Shoot()); }