diff options
Diffstat (limited to 'src/entities/actors/snake/scripts/jump_state.gd')
-rw-r--r-- | src/entities/actors/snake/scripts/jump_state.gd | 18 |
1 files changed, 10 insertions, 8 deletions
diff --git a/src/entities/actors/snake/scripts/jump_state.gd b/src/entities/actors/snake/scripts/jump_state.gd index 396ceb4..329b426 100644 --- a/src/entities/actors/snake/scripts/jump_state.gd +++ b/src/entities/actors/snake/scripts/jump_state.gd @@ -6,22 +6,24 @@ var fsm: StateMachine func enter(): if fsm.DEBUG: print("Got inside %s." % name) - Event.emit_signal("snake_started_dash") - Global.SNAKE_SPEED = Global.SNAKE_DASH_SPEED - yield(get_tree().create_timer(Global.SNAKE_DASH_TIME), "timeout") + Event.emit_signal("snake_started_jump") + fsm.player.set_collision_mask_bit(1, false) + fsm.player.set_collision_mask_bit(2, false) + Global.SNAKE_SPEED = Global.SNAKE_JUMP_SPEED + yield(get_tree().create_timer(Global.SNAKE_JUMP_TIME), "timeout") exit() func exit(): - Event.emit_signal("snake_finished_dash") + fsm.player.set_collision_mask_bit(1, true) + fsm.player.set_collision_mask_bit(2, true) Global.SNAKE_SPEED = Global.SNAKE_SPEED_BACKUP + Event.emit_signal("snake_finished_jump") fsm.back() -func physics_process(delta: float) -> float: +func physics_process(delta: float) -> void: fsm.player.velocity = fsm.player.direction * Global.SNAKE_SPEED fsm.player.velocity = fsm.player.move_and_slide(fsm.player.velocity) - fsm.slow_down_on_collisions(Global.SNAKE_DASH_SPEED) - - return delta + fsm.slow_down_on_collisions(Global.SNAKE_JUMP_SPEED) |