void FixedUpdate()
    {
        playerInput.GetKeyInput();
        combinedVelocity = Vector3.zero;
        if (activePlayer == ActivePlayer.Cube && cubeDashLaunch.dashLaunchUnlocked && cubeDashLaunch.canDashLaunch)
        {
            combinedVelocity.y = cubeDashLaunch.DashLaunch();
        }
        else if (activePlayer == ActivePlayer.Cube && cubeDash.dashUnlocked && cubeDash.isDashing)
        {
            combinedVelocity = (cubeDash.moveToSpot - rb.position) * cubeDash.speedMultiplier;
        }
        else if (activePlayer == ActivePlayer.Sphere && sphereBounce.slamBounceUnlocked && sphereBounce.canSlamBounce)
        {
            combinedVelocity.y = sphereBounce.SlamBounce();
        }
        else if (activePlayer == ActivePlayer.Sphere && sphereSlam.slamUnlocked && !playerGroundDetection.isGrounded && (sphereSlam.isSlaming || sphereSlam.isSlamPaused))
        {
            if (sphereSlam.isSlaming)
            {
                combinedVelocity = Vector3.down * sphereSlam.slamSpeed * 10;
            }
            else if (sphereSlam.isSlamPaused)
            {
                combinedVelocity = Vector3.zero;
            }
        }
        else
        {
            combinedVelocity.x = playerMove.Move();
            combinedVelocity.y = playerJump.Jump();
            if (!playerGroundDetection.isGrounded && rb.useGravity && combinedVelocity.y == 0)
            {
                combinedVelocity.y = playerJump.Fall();
            }
            if (cubeWallJump.wallJumpUnlocked)
            {
                if (activePlayer == ActivePlayer.Cube && cubeWallJump.wallContact && !playerGroundDetection.isGrounded && cubeWallJump.wallJumpInput)
                {
                    combinedVelocity = cubeWallJump.WallJump();
                }
                else if (cubeWallJump.currWallJumpVelocity != Vector2.zero && cubeWallJump.dragH > 0 && cubeWallJump.dragV > 0)

                {
                    combinedVelocity += cubeWallJump.WallJumpFall();
                }
            }
        }
        //playerMove.Turn();
        combinedVelocity.z = 0;
        rb.velocity        = combinedVelocity;
    }