go back to gardens correctly in minigames

This commit is contained in:
BimDav
2024-05-14 17:42:26 +02:00
parent 9da35a4ffd
commit 18bc638901
3 changed files with 32 additions and 21 deletions
+18 -12
View File
@@ -295,9 +295,9 @@ func _on_lesson_button_pressed() -> void:
await OpeningCurtain.close()
_switch_to_look_and_learn_data(get_tree(), {
garden_button_global_position = current_button_global_position,
garden_lesson = current_lesson_number,
garden_ind = current_garden,
current_button_global_position = current_button_global_position,
current_lesson_number = current_lesson_number,
current_garden = current_garden,
})
get_tree().change_scene_to_packed(look_and_learn_scene)
@@ -305,9 +305,7 @@ func _on_lesson_button_pressed() -> void:
static func _switch_to_look_and_learn_data(tree: SceneTree, data: Dictionary) -> void:
await tree.create_timer(0).timeout
var current_scene: = tree.current_scene
for key in data:
if key in current_scene:
current_scene[key] = data[key]
current_scene.gardens_data = data
func _on_exercise_button_1_pressed() -> void:
@@ -328,13 +326,21 @@ func _on_exercise_button_3_pressed() -> void:
func _on_minigame_button_pressed(minigame_scene: PackedScene, minigame_number: int) -> void:
await OpeningCurtain.close()
var minigame: Minigame = minigame_scene.instantiate()
minigame.lesson_nb = current_lesson_number
minigame.minigame_number = minigame_number
_switch_to_minigame_data(get_tree(), {
current_button_global_position = current_button_global_position,
current_lesson_number = current_lesson_number,
current_garden = current_garden,
minigame_number = minigame_number,
})
get_tree().change_scene_to_packed(minigame_scene)
get_tree().root.add_child(minigame)
get_tree().current_scene = minigame
queue_free()
static func _switch_to_minigame_data(tree: SceneTree, data: Dictionary) -> void:
await tree.create_timer(0).timeout
var current_scene: = tree.current_scene
current_scene.gardens_data = data
current_scene.minigame_number = data.minigame_number
current_scene.lesson_nb = data.current_lesson_number
func _on_progression_unlocks_changed() -> void:
+2 -8
View File
@@ -29,9 +29,7 @@ var current_image_and_sound: = 0
var images: = []
var sounds: = []
var garden_ind: = 0
var garden_button_global_position: = Vector2.ZERO
var garden_lesson: = 0
var gardens_data: Dictionary
var current_tracing: = 0
@@ -136,11 +134,7 @@ func _on_tracing_manager_finished() -> void:
func _back_to_gardens() -> void:
await OpeningCurtain.close()
_back_to_gardens_data(get_tree(), {
current_button_global_position = garden_button_global_position,
current_lesson_number = garden_lesson,
current_garden = garden_ind,
})
_back_to_gardens_data(get_tree(), gardens_data)
get_tree().change_scene_to_file("res://sources/gardens/gardens.tscn")
+11
View File
@@ -77,6 +77,9 @@ var help_kalulu_speech: AudioStreamMP3
var win_kalulu_speech: AudioStreamMP3
var lose_kalulu_speech: AudioStreamMP3
# data to go back to the right place in gardens
var gardens_data: Dictionary
# ------------ Initialisation ------------
@@ -210,9 +213,17 @@ func _go_back_to_the_garden() -> void:
_save_logs()
_back_to_gardens_data(get_tree(), gardens_data)
get_tree().change_scene_to_file("res://sources/gardens/gardens.tscn")
static func _back_to_gardens_data(tree: SceneTree, data: Dictionary) -> void:
await tree.create_timer(0).timeout
var current_scene: = tree.current_scene
current_scene.starting_garden = data.current_garden
current_scene._on_garden_lesson_button_pressed(data.current_button_global_position, data.current_lesson_number, data.current_garden)
func _play_stimulus() -> void:
return