extends Node2D class_name GGameState signal restore_checkpoint(level) var level_rising_height_now = 0 var level_rising_height_at_death = 0 var player_position_at_checkpoint = Vector2(0, 0) var must_restore_checkpoint = false func reset(): level_rising_height_now = 0 level_rising_height_at_death = 0 func save_level_rising_height(now): if must_restore_checkpoint: restore_checkpoint_now() must_restore_checkpoint = false else : level_rising_height_now = now func checkpoint(player_position): level_rising_height_at_death = level_rising_height_now player_position_at_checkpoint = player_position func restore_checkpoint_now(): prints('restoring with', level_rising_height_at_death) level_rising_height_now = level_rising_height_at_death emit_signal("restore_checkpoint", level_rising_height_at_death)