Not sure what build you're in, but for the latest and greatest of the moment, G 4.2.2 and XR Tools 4.3.3,
within the player_body.gd: request_jump() call, line 347;
## Request a jump func request_jump(skip_jump_velocity := false): # Skip if not on ground if !on_ground: <-------- return
is the what stops the jumping so change the if statement into the one below
and you'll need to create a var jump_counter : int = 0
The int may help save some headaches , and the = 0 is needed.
if jump_counter < 2: jump_counter += 1 else: return
On line 352; this pops up and may lead to issues if in air,
if abs(ground_relative.dot(ground_vector)) > 0.01:
To reset the counter, we go into line 616, in
func _update_ground_information(delta: float):
on line 631, after the
if !ground_collision: near_ground = false on_ground = false ground_vector = up_gravity ground_angle = 0.0 ground_node = null ground_physics = null _previous_ground_node = null return
statement, you can add the
jump_counter = 0
to reset everything back to normal.
sorry for the messy text but I'm still getting the coffee flowing in me