public void GameUpdate() { interactionController.GameUpdate(); if (ControlMode == GameData.ControlType.CHARACTER && IsPlayerAllowedToMove) { Vector3 direction = new Vector3(playerMasterRef.controls.GetHorizontalAxis(), 0.0f, playerMasterRef.controls.GetVerticalAxis()); if (direction != Vector3.zero) { isMoving = true; playerHolder.rotation = Quaternion.Slerp( playerHolder.rotation, Quaternion.LookRotation(direction), Time.deltaTime * turnSpeed ); transform.Translate(new Vector3(0, 0, movementSpeed * Time.deltaTime), playerHolder); } else { isMoving = false; } } animationController.GameUpdate(); }