Skip to main content

On Sale: GamesAssetsToolsTabletopComics
Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
TagsGame Engines
(1 edit)

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

(+1)

Thanks! My game is still a mess, but now it's a mess with double-jump.