private void Awake()
    {
        movementController = GetComponent <PlayerMovementController>();
        combatController   = GetComponent <PlayerCombatController>();
        rigidBody          = GetComponent <Rigidbody>();

        // Input setup
        controls = new InputMaster();
        controls.Player.Enable();

        // Movement
        controls.Player.Steering.performed          += ctx => Steering(ctx.ReadValue <float>());
        controls.Player.AcceleratePress.performed   += _ => accelInput = 1.0f;
        controls.Player.AccelerateRelease.performed += _ => accelInput = 0.0f;
        controls.Player.JumpPress.performed         += _ => { movementController.Jump(moveInput); movementController.UpdateJumpInput(true); };
        controls.Player.JumpRelease.performed       += _ => movementController.UpdateJumpInput(false);
        controls.Player.BrakePress.performed        += _ => movementController.brakingState.Active = true;
        controls.Player.BrakeRelease.performed      += _ => movementController.brakingState.Active = false;
        controls.Player.DriftPress.performed        += _ => movementController.driftingState.Active = true;
        controls.Player.DriftRelease.performed      += _ => movementController.driftingState.Active = false;
        controls.Player.Grind.performed             += _ => { movementController.grindingState.TryGrind(); };
        controls.Player.BoostPress.performed        += _ => boostInput = 1.0f;
        controls.Player.BoostRelease.performed      += _ => boostInput = 0.0f;

        controls.Player.Movement.performed += ctx => moveInput = ctx.ReadValue <Vector2>();

        // Combat
        controls.Player.Attack.performed += _ => combatController.BasicAttack();

        // Interact
        controls.Player.Interact.performed      += _ => npc.Interact();
        controls.Conversation.Accept.performed  += _ => npc.Accept();
        controls.Conversation.Decline.performed += _ => npc.Decline();

        // Cursor
        //Cursor.visible = false;
        //Cursor.lockState = CursorLockMode.Locked;
    }