1025 lines
45 KiB
Diff
1025 lines
45 KiB
Diff
From 77425af7dd5aee9864c88f8c46afd428132dc157 Mon Sep 17 00:00:00 2001
|
|
From: Adrien Ufferte <adrien.ufferte@netcourrier.com>
|
|
Date: Sun, 8 Jun 2025 19:37:02 +0200
|
|
Subject: [PATCH] Clean code naming convention
|
|
|
|
---
|
|
sources/gardens/gardens.gd | 46 +++++++++----------
|
|
sources/gardens/gardens_edit_tool.gd | 28 +++++------
|
|
sources/gardens/minigame_layout.gd | 2 +
|
|
.../gp_image_and_sound_descriptions.gd | 6 +--
|
|
.../language_tool/gp_video_descriptions.gd | 6 +--
|
|
.../image_and_sound_gp_description.gd | 4 +-
|
|
sources/language_tool/in_game_sounds.gd | 12 ++---
|
|
sources/language_tool/kalulu_speech.gd | 2 +-
|
|
sources/language_tool/lesson_exercises.gd | 13 +-----
|
|
.../lesson_exercises_container.gd | 1 +
|
|
sources/language_tool/prof_tool_menu.gd | 44 +++++++++---------
|
|
.../language_tool/sentence_list_element.gd | 4 +-
|
|
sources/language_tool/tracing_builder.gd | 4 +-
|
|
sources/language_tool/video_gp_description.gd | 2 +-
|
|
sources/language_tool/word_list_element.gd | 8 ++--
|
|
sources/look_and_learn/look_and_learn.gd | 4 +-
|
|
sources/look_and_learn/tracing_manager.gd | 10 ++--
|
|
sources/menus/brain/brain.gd | 5 +-
|
|
sources/minigames/base/base_minigame.gd | 3 --
|
|
sources/minigames/caterpillar/berry.gd | 1 +
|
|
sources/minigames/caterpillar/branch.gd | 15 +++---
|
|
sources/minigames/caterpillar/caterpillar.gd | 6 +--
|
|
.../minigames/caterpillar/caterpillar_body.gd | 1 +
|
|
.../minigames/caterpillar/caterpillar_head.gd | 1 +
|
|
.../caterpillar/caterpillar_minigame.gd | 9 +---
|
|
sources/minigames/caterpillar/leaf.gd | 1 +
|
|
sources/minigames/frog/frog_material.tres | 2 +-
|
|
sources/minigames/frog/lilypad_material.tres | 2 +-
|
|
sources/utils/autoloads/database.gd | 21 ++++-----
|
|
sources/utils/fx/fireworks.gd | 6 +--
|
|
sources/utils/fx/rocket.gd | 1 +
|
|
31 files changed, 125 insertions(+), 145 deletions(-)
|
|
|
|
diff --git a/sources/gardens/gardens.gd b/sources/gardens/gardens.gd
|
|
index 7d8bd1d6..28fde8d8 100644
|
|
--- a/sources/gardens/gardens.gd
|
|
+++ b/sources/gardens/gardens.gd
|
|
@@ -1,16 +1,16 @@
|
|
extends Control
|
|
+class_name Gardens
|
|
+
|
|
signal minigame_layout_opened()
|
|
|
|
# Namespace
|
|
-const LookAndLearn: = preload("res://sources/look_and_learn/look_and_learn.gd")
|
|
-const MinigameLayout: = preload("res://sources/gardens/minigame_layout.gd")
|
|
-const Kalulu: = preload("res://sources/minigames/base/kalulu.gd")
|
|
+const KALULU: = preload("res://sources/minigames/base/kalulu.gd")
|
|
|
|
-const garden_scene: PackedScene = preload("res://resources/gardens/garden.tscn")
|
|
-const look_and_learn_scene: PackedScene = preload("res://sources/look_and_learn/look_and_learn.tscn")
|
|
-const flower_fvx: PackedScene = preload("res://sources/gardens/flower_particle.tscn")
|
|
+const GARDEN_SCENE: PackedScene = preload("res://resources/gardens/garden.tscn")
|
|
+const LOOK_AND_LEARN_SCENE: PackedScene = preload("res://sources/look_and_learn/look_and_learn.tscn")
|
|
+const FLOWER_FVX: PackedScene = preload("res://sources/gardens/flower_particle.tscn")
|
|
|
|
-const garden_size: int = 2400
|
|
+const GARDEN_SIZE: int = 2400
|
|
|
|
@export_category("Layout")
|
|
@export var gardens_layout: GardensLayout:
|
|
@@ -46,7 +46,7 @@ const garden_size: int = 2400
|
|
@onready var minigame_background: TextureRect = %MinigameBackground
|
|
@onready var minigame_background_center: TextureRect = %MinigameBackgroundCenter
|
|
@onready var lock: Control = %Lock
|
|
-@onready var kalulu: Kalulu = %Kalulu
|
|
+@onready var kalulu: KALULU = %Kalulu
|
|
@onready var kalulu_button: CanvasItem = %KaluluButton
|
|
|
|
@onready var intro_speech: AudioStreamMP3 = Database.load_external_sound(Database.get_kalulu_speech_path("gardens_screen", "intro"))
|
|
@@ -238,9 +238,9 @@ func _ready() -> void:
|
|
Logger.error("Gardens: initialisation: transition_data exists but does not contains the needed current_garden_index")
|
|
starting_garden = 0
|
|
|
|
- scroll_container.scroll_horizontal = garden_size * starting_garden
|
|
+ scroll_container.scroll_horizontal = GARDEN_SIZE * starting_garden
|
|
@warning_ignore("integer_division")
|
|
- scroll_beginning_garden = scroll_container.scroll_horizontal / garden_size
|
|
+ scroll_beginning_garden = scroll_container.scroll_horizontal / GARDEN_SIZE
|
|
|
|
current_garden = garden_parent.get_child(starting_garden)
|
|
|
|
@@ -285,7 +285,7 @@ func _ready() -> void:
|
|
play_animation = true
|
|
|
|
if play_animation:
|
|
- var fvfx: FlowerVFX = flower_fvx.instantiate()
|
|
+ var fvfx: FlowerVFX = FLOWER_FVX.instantiate()
|
|
current_garden.flower_controls[flower_ind].add_child(fvfx)
|
|
fvfx.anchor_bottom = 0.5
|
|
fvfx.anchor_top = 0.5
|
|
@@ -346,14 +346,14 @@ func _ready() -> void:
|
|
# Check if we need to scroll to the next garden
|
|
if is_last_lesson_of_garden:
|
|
@warning_ignore("integer_division")
|
|
- scroll_beginning_garden = scroll_container.scroll_horizontal / garden_size
|
|
- var target_scroll: int = scroll_beginning_garden * garden_size + garden_size
|
|
+ scroll_beginning_garden = scroll_container.scroll_horizontal / GARDEN_SIZE
|
|
+ var target_scroll: int = scroll_beginning_garden * GARDEN_SIZE + GARDEN_SIZE
|
|
var tween: Tween = create_tween()
|
|
tween.set_ease(Tween.EASE_IN_OUT)
|
|
tween.tween_property(scroll_container, "scroll_horizontal", target_scroll, 4)
|
|
|
|
@warning_ignore("integer_division")
|
|
- scroll_beginning_garden = target_scroll / garden_size
|
|
+ scroll_beginning_garden = target_scroll / GARDEN_SIZE
|
|
|
|
current_garden = garden_parent.get_child(scroll_beginning_garden)
|
|
|
|
@@ -571,7 +571,7 @@ func add_gardens() -> void:
|
|
var current_lesson_count: int = 0
|
|
var garden_index: int = 0
|
|
for garden_layout: GardenLayout in gardens_layout.gardens:
|
|
- var garden: Garden = garden_scene.instantiate()
|
|
+ var garden: Garden = GARDEN_SCENE.instantiate()
|
|
garden_parent.add_child(garden)
|
|
garden.garden_index = garden_index
|
|
garden_index += 1
|
|
@@ -649,7 +649,7 @@ func _on_lesson_button_pressed() -> void:
|
|
current_garden_index = current_garden.garden_index,
|
|
look_and_learn_completed = false
|
|
}
|
|
- get_tree().change_scene_to_packed(look_and_learn_scene)
|
|
+ get_tree().change_scene_to_packed(LOOK_AND_LEARN_SCENE)
|
|
|
|
|
|
func _on_minigame_button_pressed(minigame_scene: PackedScene, minigame_number: int) -> void:
|
|
@@ -675,21 +675,21 @@ func _on_scroll_container_gui_input(event: InputEvent) -> void:
|
|
if event.is_action_pressed("left_click"):
|
|
is_scrolling = true
|
|
@warning_ignore("integer_division")
|
|
- scroll_beginning_garden = scroll_container.scroll_horizontal / garden_size
|
|
+ scroll_beginning_garden = scroll_container.scroll_horizontal / GARDEN_SIZE
|
|
if scroll_tween:
|
|
scroll_tween.stop()
|
|
scroll_tween = null
|
|
elif event.is_action_released("left_click"):
|
|
is_scrolling = false
|
|
- var shift_value: int = scroll_container.scroll_horizontal - scroll_beginning_garden * garden_size
|
|
- var target_scroll: int = scroll_beginning_garden * garden_size
|
|
+ var shift_value: int = scroll_container.scroll_horizontal - scroll_beginning_garden * GARDEN_SIZE
|
|
+ var target_scroll: int = scroll_beginning_garden * GARDEN_SIZE
|
|
var is_garden_changed: bool = false
|
|
if shift_value < - 400:
|
|
- target_scroll -= garden_size
|
|
+ target_scroll -= GARDEN_SIZE
|
|
is_garden_changed = true
|
|
left_audio_stream_player.play()
|
|
elif shift_value > 400:
|
|
- target_scroll += garden_size
|
|
+ target_scroll += GARDEN_SIZE
|
|
is_garden_changed = true
|
|
right_audio_stream_player.play()
|
|
scroll_tween = create_tween()
|
|
@@ -698,12 +698,12 @@ func _on_scroll_container_gui_input(event: InputEvent) -> void:
|
|
scroll_tween.tween_property(scroll_container, "scroll_horizontal", target_scroll, 1)
|
|
if is_garden_changed:
|
|
@warning_ignore("integer_division")
|
|
- current_garden = garden_parent.get_child(target_scroll / garden_size)
|
|
+ current_garden = garden_parent.get_child(target_scroll / GARDEN_SIZE)
|
|
current_garden.pop_animation()
|
|
|
|
await scroll_tween.finished
|
|
@warning_ignore("integer_division")
|
|
- scroll_beginning_garden = scroll_container.scroll_horizontal / garden_size
|
|
+ scroll_beginning_garden = scroll_container.scroll_horizontal / GARDEN_SIZE
|
|
|
|
if is_scrolling and event is InputEventMouseMotion:
|
|
var motion_event: InputEventMouseMotion = event
|
|
diff --git a/sources/gardens/gardens_edit_tool.gd b/sources/gardens/gardens_edit_tool.gd
|
|
index c9624a79..3a32ec38 100644
|
|
--- a/sources/gardens/gardens_edit_tool.gd
|
|
+++ b/sources/gardens/gardens_edit_tool.gd
|
|
@@ -1,9 +1,9 @@
|
|
-extends "res://sources/gardens/gardens.gd"
|
|
+extends Gardens
|
|
|
|
-const max_lesson_number: int = 80
|
|
-const garden_textures_nb: int = 20
|
|
-const flower_types_nb: int = 5
|
|
-const gardens_layout_resource_path: String = "res://resources/gardens/gardens_layout.tres"
|
|
+const MAX_LESSON_NUMBER: int = 80
|
|
+const GARDEN_TEXTURES_NB: int = 20
|
|
+const FLOWER_TYPES_NB: int = 5
|
|
+const GARDENS_LAYOUT_RESOURCE_PATH: String = "res://resources/gardens/gardens_layout.tres"
|
|
|
|
|
|
var dragging_element: Variant
|
|
@@ -15,16 +15,16 @@ func _ready() -> void:
|
|
line_particles.hide()
|
|
back_button.hide()
|
|
|
|
- for index: int in max_lesson_number:
|
|
+ for index: int in MAX_LESSON_NUMBER:
|
|
lessons[index] = index
|
|
|
|
# Checks if a configuration exists
|
|
- if not ResourceLoader.exists(gardens_layout_resource_path):
|
|
+ if not ResourceLoader.exists(GARDENS_LAYOUT_RESOURCE_PATH):
|
|
gardens_layout = GardensLayout.new()
|
|
- gardens_layout.resource_path = gardens_layout_resource_path
|
|
+ gardens_layout.resource_path = GARDENS_LAYOUT_RESOURCE_PATH
|
|
_init_gardens_layout()
|
|
|
|
- gardens_layout = load(gardens_layout_resource_path)
|
|
+ gardens_layout = load(GARDENS_LAYOUT_RESOURCE_PATH)
|
|
set_up_click_detection()
|
|
|
|
|
|
@@ -32,7 +32,7 @@ func _init_gardens_layout() -> void:
|
|
# Empty the gardens configuration
|
|
gardens_layout.gardens.clear()
|
|
|
|
- for index: int in max_lesson_number:
|
|
+ for index: int in MAX_LESSON_NUMBER:
|
|
|
|
var garden_layout: GardenLayout
|
|
|
|
@@ -42,7 +42,7 @@ func _init_gardens_layout() -> void:
|
|
gardens_layout.gardens.append(garden_layout)
|
|
|
|
@warning_ignore("integer_division")
|
|
- garden_layout.color = (index / 4) % garden_textures_nb
|
|
+ garden_layout.color = (index / 4) % GARDEN_TEXTURES_NB
|
|
|
|
# Add the flowers to the garden
|
|
for flower_i: int in 5:
|
|
@@ -181,7 +181,7 @@ func _on_flower_gui_input(event: InputEvent, garden_control_ind: int, flower_ind
|
|
var garden: Garden = garden_parent.get_child(garden_control_ind)
|
|
var flower: GardenLayout.Flower = gardens_layout.gardens[garden_control_ind].flowers[flower_ind]
|
|
flower.type += 1
|
|
- if flower.type >= flower_types_nb:
|
|
+ if flower.type >= FLOWER_TYPES_NB:
|
|
flower.type = 0
|
|
garden.set_flowers(gardens_layout.gardens[garden_control_ind].flowers, Garden.FlowerSizes.LARGE)
|
|
ResourceSaver.save(gardens_layout, gardens_layout.resource_path)
|
|
@@ -205,7 +205,7 @@ func _on_change_flower_color_button_pressed() -> void:
|
|
var flowers: Array[GardenLayout.Flower] = gardens_layout.gardens[garden_ind].flowers
|
|
for flower: GardenLayout.Flower in flowers:
|
|
flower.color += 1
|
|
- if flower.color >= garden_textures_nb:
|
|
+ if flower.color >= GARDEN_TEXTURES_NB:
|
|
flower.color = 0
|
|
gardens_layout.gardens[garden_ind].flowers = flowers
|
|
|
|
@@ -222,7 +222,7 @@ func _on_change_flower_color_button_2_pressed() -> void:
|
|
for flower: GardenLayout.Flower in flowers:
|
|
flower.color -= 1
|
|
if flower.color < 0:
|
|
- flower.color = garden_textures_nb - 1
|
|
+ flower.color = GARDEN_TEXTURES_NB - 1
|
|
gardens_layout.gardens[garden_ind].flowers = flowers
|
|
|
|
garden.set_flowers(flowers, Garden.FlowerSizes.LARGE)
|
|
diff --git a/sources/gardens/minigame_layout.gd b/sources/gardens/minigame_layout.gd
|
|
index c6d1fe68..d00ef204 100644
|
|
--- a/sources/gardens/minigame_layout.gd
|
|
+++ b/sources/gardens/minigame_layout.gd
|
|
@@ -1,4 +1,6 @@
|
|
extends TextureRect
|
|
+class_name MinigameLayout
|
|
+
|
|
signal pressed()
|
|
|
|
@onready var icon: TextureRect = $TextureRect
|
|
diff --git a/sources/language_tool/gp_image_and_sound_descriptions.gd b/sources/language_tool/gp_image_and_sound_descriptions.gd
|
|
index d0e94aeb..298cf773 100644
|
|
--- a/sources/language_tool/gp_image_and_sound_descriptions.gd
|
|
+++ b/sources/language_tool/gp_image_and_sound_descriptions.gd
|
|
@@ -3,7 +3,7 @@ class_name GPImageAndSoundDescriptions
|
|
|
|
@onready var description_container: VBoxContainer = %DescriptionsContainer
|
|
|
|
-const description_line_scene: PackedScene = preload("res://sources/language_tool/image_and_sound_gp_description.tscn")
|
|
+const DESCRIPTION_LINE_SCENE: PackedScene = preload("res://sources/language_tool/image_and_sound_gp_description.tscn")
|
|
|
|
|
|
func _ready() -> void:
|
|
@@ -11,8 +11,8 @@ func _ready() -> void:
|
|
DirAccess.make_dir_recursive_absolute(Database.base_path + Database.language + Database.look_and_learn_sounds)
|
|
|
|
Database.db.query("SELECT * FROM GPs WHERE GPs.Exception=0")
|
|
- for res in Database.db.query_result:
|
|
- var description_line: ImageAndSoundGPDescription = description_line_scene.instantiate()
|
|
+ for res: Dictionary in Database.db.query_result:
|
|
+ var description_line: ImageAndSoundGPDescription = DESCRIPTION_LINE_SCENE.instantiate()
|
|
description_container.add_child(description_line)
|
|
description_line.set_gp(res)
|
|
|
|
diff --git a/sources/language_tool/gp_video_descriptions.gd b/sources/language_tool/gp_video_descriptions.gd
|
|
index b401848f..00a9ca04 100644
|
|
--- a/sources/language_tool/gp_video_descriptions.gd
|
|
+++ b/sources/language_tool/gp_video_descriptions.gd
|
|
@@ -2,17 +2,17 @@ extends Control
|
|
|
|
@onready var description_container: VBoxContainer = %DescriptionsContainer
|
|
|
|
-const description_line_scene: PackedScene = preload("res://sources/language_tool/video_gp_description.tscn")
|
|
+const DESCRIPTION_LINE_SCENE: PackedScene = preload("res://sources/language_tool/video_gp_description.tscn")
|
|
|
|
|
|
func _ready() -> void:
|
|
- var _description_line: VideoGPDescription = description_line_scene.instantiate()
|
|
+ var _description_line: VideoGPDescription = DESCRIPTION_LINE_SCENE.instantiate()
|
|
DirAccess.make_dir_recursive_absolute(Database.base_path + Database.language + Database.look_and_learn_videos)
|
|
_description_line.queue_free()
|
|
|
|
Database.db.query("Select * FROM GPs WHERE GPs.Exception=0")
|
|
for gp in Database.db.query_result:
|
|
- var description_line: VideoGPDescription = description_line_scene.instantiate()
|
|
+ var description_line: VideoGPDescription = DESCRIPTION_LINE_SCENE.instantiate()
|
|
description_container.add_child(description_line)
|
|
description_line.set_gp(gp)
|
|
|
|
diff --git a/sources/language_tool/image_and_sound_gp_description.gd b/sources/language_tool/image_and_sound_gp_description.gd
|
|
index 828812ca..78565b26 100644
|
|
--- a/sources/language_tool/image_and_sound_gp_description.gd
|
|
+++ b/sources/language_tool/image_and_sound_gp_description.gd
|
|
@@ -91,7 +91,7 @@ func set_gp(value: Dictionary) -> void:
|
|
func _on_image_upload_button_pressed() -> void:
|
|
if not gp.is_empty():
|
|
file_dialog.filters = []
|
|
- file_dialog.add_filter("*" + Database.image_extension, "Images")
|
|
+ file_dialog.add_filter("*" + Database.IMAGE_EXTENSION, "Images")
|
|
|
|
for connection in file_dialog.file_selected.get_connections():
|
|
connection["signal"].disconnect(connection["callable"])
|
|
@@ -104,7 +104,7 @@ func _on_image_upload_button_pressed() -> void:
|
|
func _on_sound_upload_button_pressed() -> void:
|
|
if not gp.is_empty():
|
|
file_dialog.filters = []
|
|
- file_dialog.add_filter("*" + Database.sound_extension, "Sounds")
|
|
+ file_dialog.add_filter("*" + Database.SOUND_EXTENSION, "Sounds")
|
|
|
|
for connection in file_dialog.file_selected.get_connections():
|
|
connection["signal"].disconnect(connection["callable"])
|
|
diff --git a/sources/language_tool/in_game_sounds.gd b/sources/language_tool/in_game_sounds.gd
|
|
index eff8f62b..e7a862b7 100644
|
|
--- a/sources/language_tool/in_game_sounds.gd
|
|
+++ b/sources/language_tool/in_game_sounds.gd
|
|
@@ -6,8 +6,8 @@ func _ready() -> void:
|
|
DirAccess.make_dir_recursive_absolute(Database.base_path + Database.language + Database.language_sounds)
|
|
|
|
Database.db.query("SELECT * FROM GPs WHERE GPs.Exception=0")
|
|
- for res in Database.db.query_result:
|
|
- var description_line: ImageAndSoundGPDescription = description_line_scene.instantiate()
|
|
+ for res: Dictionary in Database.db.query_result:
|
|
+ var description_line: ImageAndSoundGPDescription = DESCRIPTION_LINE_SCENE.instantiate()
|
|
description_line.get_sound_path = Database.get_gp_sound_path
|
|
description_line.get_image_path = get_empty_string
|
|
description_line.hide_image_part()
|
|
@@ -17,8 +17,8 @@ func _ready() -> void:
|
|
description_line.image_upload_button.hide()
|
|
|
|
Database.db.query("SELECT * FROM Syllables WHERE Syllables.Exception=0")
|
|
- for res in Database.db.query_result:
|
|
- var description_line: = description_line_scene.instantiate()
|
|
+ for res: Dictionary in Database.db.query_result:
|
|
+ var description_line: ImageAndSoundGPDescription = DESCRIPTION_LINE_SCENE.instantiate()
|
|
description_line.get_sound_path = Database.get_syllable_sound_path
|
|
description_line.get_image_path = get_empty_string
|
|
description_line.hide_image_part()
|
|
@@ -29,8 +29,8 @@ func _ready() -> void:
|
|
description_line.image_upload_button.hide()
|
|
|
|
Database.db.query("SELECT * FROM Words WHERE Words.Exception=0")
|
|
- for res in Database.db.query_result:
|
|
- var description_line: = description_line_scene.instantiate()
|
|
+ for res: Dictionary in Database.db.query_result:
|
|
+ var description_line: ImageAndSoundGPDescription = DESCRIPTION_LINE_SCENE.instantiate()
|
|
description_line.get_sound_path = Database.get_word_sound_path
|
|
description_line.get_image_path = get_empty_string
|
|
description_line.hide_image_part()
|
|
diff --git a/sources/language_tool/kalulu_speech.gd b/sources/language_tool/kalulu_speech.gd
|
|
index 87f81516..1fa5b532 100644
|
|
--- a/sources/language_tool/kalulu_speech.gd
|
|
+++ b/sources/language_tool/kalulu_speech.gd
|
|
@@ -17,7 +17,7 @@ extends PanelContainer
|
|
func _ready() -> void:
|
|
file_dialog.access = FileDialog.ACCESS_FILESYSTEM
|
|
file_dialog.filters = []
|
|
- file_dialog.add_filter("*" + Database.sound_extension, "Sounds")
|
|
+ file_dialog.add_filter("*" + Database.SOUND_EXTENSION, "Sounds")
|
|
|
|
_set_speech_name(speech_name)
|
|
_set_speech_description(speech_description)
|
|
diff --git a/sources/language_tool/lesson_exercises.gd b/sources/language_tool/lesson_exercises.gd
|
|
index 8e0a15cc..be94e4e1 100644
|
|
--- a/sources/language_tool/lesson_exercises.gd
|
|
+++ b/sources/language_tool/lesson_exercises.gd
|
|
@@ -1,15 +1,6 @@
|
|
extends Control
|
|
|
|
-const LessonExerciceContainer: = preload("res://sources/language_tool/lesson_exercises_container.gd")
|
|
-const lesson_exercice_container_scene: = preload("res://sources/language_tool/lesson_exercises_container.tscn")
|
|
-
|
|
-const exercise_types: Array[String] = [
|
|
- "Syllable",
|
|
- "Pairing",
|
|
- "Words",
|
|
- "Sentences",
|
|
- "Boss"
|
|
-]
|
|
+const LESSON_EXERCICE_CONTAINER_SCENE: = preload("res://sources/language_tool/lesson_exercises_container.tscn")
|
|
|
|
@onready var lessons_container: VBoxContainer = %LessonsContainer
|
|
|
|
@@ -51,7 +42,7 @@ func _ready() -> void:
|
|
var sentences_by_lesson: = Database.get_sentences_by_lessons()
|
|
Database.db.query("Select * FROM Lessons")
|
|
for e in Database.db.query_result:
|
|
- var container: LessonExerciceContainer = lesson_exercice_container_scene.instantiate()
|
|
+ var container: LessonExerciceContainer = LESSON_EXERCICE_CONTAINER_SCENE.instantiate()
|
|
lessons_container.add_child(container)
|
|
container.sentences_by_lesson = sentences_by_lesson
|
|
container.lesson_number = e.LessonNb
|
|
diff --git a/sources/language_tool/lesson_exercises_container.gd b/sources/language_tool/lesson_exercises_container.gd
|
|
index b6876ba2..fe7cfe27 100644
|
|
--- a/sources/language_tool/lesson_exercises_container.gd
|
|
+++ b/sources/language_tool/lesson_exercises_container.gd
|
|
@@ -1,4 +1,5 @@
|
|
extends PanelContainer
|
|
+class_name LessonExerciceContainer
|
|
|
|
@export var lesson_number: = -1:
|
|
set = _set_lesson_number
|
|
diff --git a/sources/language_tool/prof_tool_menu.gd b/sources/language_tool/prof_tool_menu.gd
|
|
index adb64205..858d8584 100644
|
|
--- a/sources/language_tool/prof_tool_menu.gd
|
|
+++ b/sources/language_tool/prof_tool_menu.gd
|
|
@@ -1,7 +1,7 @@
|
|
extends Control
|
|
|
|
-const base_path: String = "user://language_resources/"
|
|
-const save_file_path: String = "user://prof_tool_save.tres"
|
|
+const BASE_PATH: String = "user://language_resources/"
|
|
+const SAVE_FILE_PATH: String = "user://prof_tool_save.tres"
|
|
var save_file: ProfToolSave
|
|
|
|
@onready var language_select_button: OptionButton = %LanguageSelectButton
|
|
@@ -18,11 +18,11 @@ func _ready() -> void:
|
|
MusicManager.stop()
|
|
Database.load_additional_word_list()
|
|
_update_add_word_list_button()
|
|
- if not ResourceLoader.exists(save_file_path):
|
|
+ if not ResourceLoader.exists(SAVE_FILE_PATH):
|
|
save_file = ProfToolSave.new()
|
|
- save_file.resource_path = save_file_path
|
|
- ResourceSaver.save(save_file, save_file_path)
|
|
- save_file = load(save_file_path)
|
|
+ save_file.resource_path = SAVE_FILE_PATH
|
|
+ ResourceSaver.save(save_file, SAVE_FILE_PATH)
|
|
+ save_file = load(SAVE_FILE_PATH)
|
|
_display_available_languages()
|
|
tab_container.current_tab = Globals.main_menu_selected_tab
|
|
tab_container.tab_changed.connect(_on_tab_container_tab_changed)
|
|
@@ -97,11 +97,11 @@ func _on_exercises_button_pressed() -> void:
|
|
|
|
|
|
func _on_export_filename_selected(filename: String) -> void:
|
|
- var version_file: FileAccess = FileAccess.open(base_path.path_join(Database.language).path_join("version.txt"), FileAccess.WRITE)
|
|
+ var version_file: FileAccess = FileAccess.open(BASE_PATH.path_join(Database.language).path_join("version.txt"), FileAccess.WRITE)
|
|
version_file.store_line(Time.get_datetime_string_from_system(true, false))
|
|
version_file.close()
|
|
|
|
- var summary_file: FileAccess = FileAccess.open(base_path.path_join(Database.language).path_join("summary.txt"), FileAccess.WRITE)
|
|
+ var summary_file: FileAccess = FileAccess.open(BASE_PATH.path_join(Database.language).path_join("summary.txt"), FileAccess.WRITE)
|
|
var sentences_by_lesson: Dictionary = Database.get_sentences_by_lessons()
|
|
for index: int in Database.get_lessons_count():
|
|
|
|
@@ -132,7 +132,7 @@ func _on_export_filename_selected(filename: String) -> void:
|
|
_create_sentence_csv()
|
|
|
|
var folder_zipper: FolderZipper = FolderZipper.new()
|
|
- folder_zipper.compress(base_path.path_join(Database.language), filename)
|
|
+ folder_zipper.compress(BASE_PATH.path_join(Database.language), filename)
|
|
|
|
#region Database integrity check
|
|
var integrity_checking: bool = false
|
|
@@ -327,13 +327,13 @@ func file_exists_case_sensitive(path: String) -> Dictionary:
|
|
|
|
func _get_available_languages() -> Array[String]:
|
|
var available_languages: Array[String] = []
|
|
- var dir: DirAccess = DirAccess.open(base_path)
|
|
+ var dir: DirAccess = DirAccess.open(BASE_PATH)
|
|
if dir:
|
|
dir.list_dir_begin()
|
|
var file_name: String = dir.get_next()
|
|
while file_name != "":
|
|
if dir.current_is_dir():
|
|
- if FileAccess.file_exists(base_path.path_join(file_name).path_join("language.db")):
|
|
+ if FileAccess.file_exists(BASE_PATH.path_join(file_name).path_join("language.db")):
|
|
available_languages.append(file_name)
|
|
file_name = dir.get_next()
|
|
return available_languages
|
|
@@ -346,7 +346,7 @@ func _on_language_select_button_item_selected(index: int) -> void:
|
|
return
|
|
|
|
save_file.selected_language = language_select_button.get_item_text(index)
|
|
- ResourceSaver.save(save_file, save_file_path)
|
|
+ ResourceSaver.save(save_file, SAVE_FILE_PATH)
|
|
Database.language = save_file.selected_language
|
|
|
|
|
|
@@ -354,14 +354,14 @@ func _on_validate_language_pressed() -> void:
|
|
if not line_edit.text:
|
|
return
|
|
|
|
- DirAccess.make_dir_recursive_absolute(base_path.path_join(line_edit.text))
|
|
+ DirAccess.make_dir_recursive_absolute(BASE_PATH.path_join(line_edit.text))
|
|
var file: FileAccess = FileAccess.open("res://model_database.db", FileAccess.READ)
|
|
- var dest: FileAccess = FileAccess.open(base_path.path_join(line_edit.text).path_join("language.db"), FileAccess.WRITE)
|
|
+ var dest: FileAccess = FileAccess.open(BASE_PATH.path_join(line_edit.text).path_join("language.db"), FileAccess.WRITE)
|
|
dest.store_buffer(file.get_buffer(file.get_length()))
|
|
file.close()
|
|
dest.close()
|
|
save_file.selected_language = line_edit.text
|
|
- ResourceSaver.save(save_file, save_file_path)
|
|
+ ResourceSaver.save(save_file, SAVE_FILE_PATH)
|
|
get_tree().reload_current_scene()
|
|
|
|
|
|
@@ -437,12 +437,12 @@ func _on_export_button_pressed() -> void:
|
|
func _language_data_selected(file_path: String) -> void:
|
|
if FileAccess.file_exists(file_path):
|
|
var folder_unzipper: FolderUnzipper = FolderUnzipper.new()
|
|
- folder_unzipper.extract(file_path, base_path, false)
|
|
+ folder_unzipper.extract(file_path, BASE_PATH, false)
|
|
get_tree().reload_current_scene()
|
|
|
|
|
|
func _create_GP_csv() -> void:
|
|
- var gp_list_file: FileAccess = FileAccess.open(base_path.path_join(Database.language).path_join("gp_list.csv"), FileAccess.WRITE)
|
|
+ var gp_list_file: FileAccess = FileAccess.open(BASE_PATH.path_join(Database.language).path_join("gp_list.csv"), FileAccess.WRITE)
|
|
gp_list_file.store_csv_line(["Grapheme", "Phoneme", "Type", "Exception"])
|
|
var query: String = "Select * FROM GPs ORDER BY GPs.Grapheme"
|
|
Database.db.query(query)
|
|
@@ -453,7 +453,7 @@ func _create_GP_csv() -> void:
|
|
|
|
|
|
func _create_words_csv() -> void:
|
|
- var gp_list_file: FileAccess = FileAccess.open(base_path.path_join(Database.language).path_join("words_list.csv"), FileAccess.WRITE)
|
|
+ var gp_list_file: FileAccess = FileAccess.open(BASE_PATH.path_join(Database.language).path_join("words_list.csv"), FileAccess.WRITE)
|
|
gp_list_file.store_csv_line(["ORTHO", "GPMATCH", "LESSON", "READING", "WRITING"])
|
|
var query: String = "SELECT Words.ID as WordId, Word, group_concat(Grapheme, ' ') as Graphemes, group_concat(Phoneme, ' ') as Phonemes, group_concat(GPs.ID, ' ') as GPIDs, Words.Exception, Reading, Writing
|
|
FROM Words
|
|
@@ -482,7 +482,7 @@ func _create_words_csv() -> void:
|
|
|
|
|
|
func _create_syllable_csv() -> void:
|
|
- var gp_list_file: FileAccess = FileAccess.open(base_path.path_join(Database.language).path_join("syllables_list.csv"), FileAccess.WRITE)
|
|
+ var gp_list_file: FileAccess = FileAccess.open(BASE_PATH.path_join(Database.language).path_join("syllables_list.csv"), FileAccess.WRITE)
|
|
gp_list_file.store_csv_line(["ORTHO", "GPMATCH", "LESSON", "READING", "WRITING"])
|
|
var query: String = "SELECT Syllables.ID as SyllableId, Syllable, group_concat(Grapheme, ' ') as Graphemes, group_concat(Phoneme, ' ') as Phonemes, group_concat(GPs.ID, ' ') as GPIDs, Syllables.Exception, Reading, Writing
|
|
FROM Syllables
|
|
@@ -511,7 +511,7 @@ func _create_syllable_csv() -> void:
|
|
|
|
|
|
func _create_sentence_csv() -> void:
|
|
- var gp_list_file: FileAccess = FileAccess.open(base_path.path_join(Database.language).path_join("sentences_list.csv"), FileAccess.WRITE)
|
|
+ var gp_list_file: FileAccess = FileAccess.open(BASE_PATH.path_join(Database.language).path_join("sentences_list.csv"), FileAccess.WRITE)
|
|
gp_list_file.store_csv_line(["Sentence", "Lesson"])
|
|
var query: String = "SELECT Sentences.ID as SentenceId, Sentence, group_concat(Word, ' ') as Words, group_concat(Word, ' ') as Words, group_concat(Words.ID, ' ') as WordIDs, Sentences.Exception
|
|
FROM Sentences
|
|
@@ -533,7 +533,7 @@ func _create_sentence_csv() -> void:
|
|
|
|
|
|
func _on_open_folder_button_pressed() -> void:
|
|
- OS.shell_show_in_file_manager(ProjectSettings.globalize_path(base_path))
|
|
+ OS.shell_show_in_file_manager(ProjectSettings.globalize_path(BASE_PATH))
|
|
|
|
|
|
func _on_tab_container_tab_changed(tab: int) -> void:
|
|
@@ -542,7 +542,7 @@ func _on_tab_container_tab_changed(tab: int) -> void:
|
|
|
|
#region Book Generation
|
|
func create_book() -> void:
|
|
- var lang_path: String = base_path.path_join(Database.language)
|
|
+ var lang_path: String = BASE_PATH.path_join(Database.language)
|
|
var file_names: Dictionary[String, String] = {
|
|
"word": "words_list.csv",
|
|
"syllable": "syllables_list.csv",
|
|
diff --git a/sources/language_tool/sentence_list_element.gd b/sources/language_tool/sentence_list_element.gd
|
|
index 3f8d11c8..61abf697 100644
|
|
--- a/sources/language_tool/sentence_list_element.gd
|
|
+++ b/sources/language_tool/sentence_list_element.gd
|
|
@@ -2,7 +2,7 @@ extends "res://sources/language_tool/word_list_element.gd"
|
|
|
|
signal not_found(text: String)
|
|
|
|
-const word_list_element_scene: = preload("res://sources/language_tool/word_list_element.tscn")
|
|
+const WORD_LIST_ELEMENT_SCENE: = preload("res://sources/language_tool/word_list_element.tscn")
|
|
|
|
var words_not_founds: PackedStringArray
|
|
|
|
@@ -28,7 +28,7 @@ func _add_from_additional_word_list(new_text: String) -> int:
|
|
var new_text_clean: = new_text.to_lower()
|
|
for chara in punc:
|
|
new_text_clean = new_text_clean.replace(chara, " ")
|
|
- var word_list_element: WordListElement = word_list_element_scene.instantiate()
|
|
+ var word_list_element: WordListElement = WORD_LIST_ELEMENT_SCENE.instantiate()
|
|
var all_found: = true
|
|
words_not_founds.clear()
|
|
var word_ids: Array[int] = []
|
|
diff --git a/sources/language_tool/tracing_builder.gd b/sources/language_tool/tracing_builder.gd
|
|
index 121e31df..fba5c4bc 100644
|
|
--- a/sources/language_tool/tracing_builder.gd
|
|
+++ b/sources/language_tool/tracing_builder.gd
|
|
@@ -8,7 +8,7 @@ extends Control
|
|
@onready var save_ok: TextureRect = %SaveOk
|
|
@onready var copy_from: MenuButton = %CopyFrom
|
|
|
|
-const extension: String = ".csv"
|
|
+const EXTENSION: String = ".csv"
|
|
|
|
var letters: Array[String] = []
|
|
var current_letter: int = -1
|
|
@@ -92,7 +92,7 @@ func upper_path(letter: String) -> String:
|
|
|
|
|
|
func real_path(path: String) -> String:
|
|
- return Database.base_path.path_join(Database.language).path_join(Database.tracing_data_folder).path_join(path) + extension
|
|
+ return Database.base_path.path_join(Database.language).path_join(Database.tracing_data_folder).path_join(path) + EXTENSION
|
|
|
|
|
|
func _on_save_button_pressed() -> void:
|
|
diff --git a/sources/language_tool/video_gp_description.gd b/sources/language_tool/video_gp_description.gd
|
|
index 0a43c286..5b40a897 100644
|
|
--- a/sources/language_tool/video_gp_description.gd
|
|
+++ b/sources/language_tool/video_gp_description.gd
|
|
@@ -39,7 +39,7 @@ func set_gp(p_gp: Dictionary) -> void:
|
|
func _on_video_upload_button_pressed() -> void:
|
|
if not gp.is_empty():
|
|
file_dialog.filters = []
|
|
- file_dialog.add_filter("*" + Database.video_extension, "Videos")
|
|
+ file_dialog.add_filter("*" + Database.VIDEO_EXTENSION, "Videos")
|
|
|
|
for connection in file_dialog.file_selected.get_connections():
|
|
connection["signal"].disconnect(connection["callable"])
|
|
diff --git a/sources/language_tool/word_list_element.gd b/sources/language_tool/word_list_element.gd
|
|
index d9030c3c..ed69d26c 100644
|
|
--- a/sources/language_tool/word_list_element.gd
|
|
+++ b/sources/language_tool/word_list_element.gd
|
|
@@ -6,8 +6,8 @@ signal new_GP_asked(i: int)
|
|
signal validated()
|
|
signal GPs_updated()
|
|
|
|
-const gp_list_button_scene: PackedScene = preload("res://sources/language_tool/gp_list_button.tscn")
|
|
-const plus_button_scene: PackedScene = preload("res://sources/language_tool/plus_button.tscn")
|
|
+const GP_LIST_BUTTON_SCENE: PackedScene = preload("res://sources/language_tool/gp_list_button.tscn")
|
|
+const PLUS_BUTTON_SCENE: PackedScene = preload("res://sources/language_tool/plus_button.tscn")
|
|
|
|
@export var table: String = "Words"
|
|
@export var table_graph_column: String = "Word"
|
|
@@ -101,14 +101,14 @@ func set_graphemes_edit(p_gp_ids: Array[int]) -> void:
|
|
|
|
|
|
func add_gp_list_button(gp_id: int, ind_gp_id: int) -> void:
|
|
- var gp_list_button: GPListButton = gp_list_button_scene.instantiate()
|
|
+ var gp_list_button: GPListButton = GP_LIST_BUTTON_SCENE.instantiate()
|
|
gp_list_button.set_gp_list(sub_elements_list)
|
|
graphemes_edit_container.add_child(gp_list_button)
|
|
graphemes_edit_container.move_child(gp_list_button, 2 * ind_gp_id)
|
|
gp_list_button.select_id(gp_id)
|
|
gp_list_button.gp_selected.connect(_on_gp_list_button_selected.bind(gp_list_button))
|
|
gp_list_button.new_selected.connect(_on_gp_list_button_new_selected.bind(gp_list_button))
|
|
- var plus_button: PlusButton = plus_button_scene.instantiate()
|
|
+ var plus_button: PlusButton = PLUS_BUTTON_SCENE.instantiate()
|
|
plus_button.size = Vector2(50, 50)
|
|
graphemes_edit_container.add_child(plus_button)
|
|
graphemes_edit_container.move_child(plus_button, 2 * ind_gp_id + 1)
|
|
diff --git a/sources/look_and_learn/look_and_learn.gd b/sources/look_and_learn/look_and_learn.gd
|
|
index 5a51afde..e479b7d3 100644
|
|
--- a/sources/look_and_learn/look_and_learn.gd
|
|
+++ b/sources/look_and_learn/look_and_learn.gd
|
|
@@ -1,7 +1,5 @@
|
|
extends Control
|
|
-
|
|
-const Gardens: = preload("res://sources/gardens/gardens.gd")
|
|
-const TracingManager: = preload("res://sources/look_and_learn/tracing_manager.gd")
|
|
+class_name LookAndLearn
|
|
|
|
@export var lesson_nb: int = 1
|
|
@export var current_button_pressed: int = 0
|
|
diff --git a/sources/look_and_learn/tracing_manager.gd b/sources/look_and_learn/tracing_manager.gd
|
|
index 5ecc860b..5e05966b 100644
|
|
--- a/sources/look_and_learn/tracing_manager.gd
|
|
+++ b/sources/look_and_learn/tracing_manager.gd
|
|
@@ -1,16 +1,16 @@
|
|
extends Control
|
|
+class_name TracingManager
|
|
|
|
signal finished()
|
|
|
|
-const letter_segment_class: PackedScene = preload("res://sources/look_and_learn/letter_segment.tscn")
|
|
+const LETTER_SEGMENT_CLASS: PackedScene = preload("res://sources/look_and_learn/letter_segment.tscn")
|
|
|
|
@export var label_settings: LabelSettings
|
|
|
|
@onready var lower_labels: HBoxContainer = %LowerLabels
|
|
@onready var upper_labels: HBoxContainer = %UpperLabels
|
|
|
|
-const tracing_data_folder: String = "tracing_data/"
|
|
-const extension: String = ".csv"
|
|
+const EXTENSION: String = ".csv"
|
|
|
|
func _process(_delta: float) -> void:
|
|
place_segments(upper_labels.get_children())
|
|
@@ -65,7 +65,7 @@ func setup_tracing(letter: String, letter_tracings: Array, parent: Control, lowe
|
|
parent.add_child(label)
|
|
|
|
for points: Array in letter_tracings:
|
|
- var segment: LetterSegment = letter_segment_class.instantiate()
|
|
+ var segment: LetterSegment = LETTER_SEGMENT_CLASS.instantiate()
|
|
label.add_child(segment)
|
|
segment.setup(points)
|
|
|
|
@@ -108,7 +108,7 @@ func _upper_path(letter: String) -> String:
|
|
|
|
|
|
func _real_path(path: String) -> String:
|
|
- return Database.base_path.path_join(Database.language).path_join(Database.tracing_data_folder).path_join(path) + extension
|
|
+ return Database.base_path.path_join(Database.language).path_join(Database.tracing_data_folder).path_join(path) + EXTENSION
|
|
|
|
|
|
|
|
diff --git a/sources/menus/brain/brain.gd b/sources/menus/brain/brain.gd
|
|
index dcc1ad54..0977e713 100644
|
|
--- a/sources/menus/brain/brain.gd
|
|
+++ b/sources/menus/brain/brain.gd
|
|
@@ -1,8 +1,7 @@
|
|
@tool
|
|
extends Control
|
|
|
|
-const Gardens: = preload("res://sources/gardens/gardens.gd")
|
|
-const gardens_scene: PackedScene = preload("res://sources/gardens/gardens.tscn")
|
|
+const GARDENS_SCENE: PackedScene = preload("res://sources/gardens/gardens.tscn")
|
|
const Kalulu: = preload("res://sources/minigames/base/kalulu.gd")
|
|
|
|
@export var locked_color: Color
|
|
@@ -126,7 +125,7 @@ func _on_garden_button_pressed(button_number: int) -> void:
|
|
audio_stream_player.play()
|
|
await OpeningCurtain.close()
|
|
|
|
- var gardens: Gardens = gardens_scene.instantiate()
|
|
+ var gardens: Gardens = GARDENS_SCENE.instantiate()
|
|
gardens.starting_garden = button_number
|
|
get_tree().root.add_child(gardens)
|
|
get_tree().current_scene = gardens
|
|
diff --git a/sources/minigames/base/base_minigame.gd b/sources/minigames/base/base_minigame.gd
|
|
index 4a18cf00..cde57f03 100644
|
|
--- a/sources/minigames/base/base_minigame.gd
|
|
+++ b/sources/minigames/base/base_minigame.gd
|
|
@@ -2,9 +2,6 @@
|
|
extends Control
|
|
class_name Minigame
|
|
|
|
-const Gardens: = preload("res://sources/gardens/gardens.gd")
|
|
-const Fireworks: = preload("res://sources/utils/fx/fireworks.gd")
|
|
-
|
|
enum Type {
|
|
jellyfish,
|
|
crabs,
|
|
diff --git a/sources/minigames/caterpillar/berry.gd b/sources/minigames/caterpillar/berry.gd
|
|
index d3da6a35..573ef7fd 100644
|
|
--- a/sources/minigames/caterpillar/berry.gd
|
|
+++ b/sources/minigames/caterpillar/berry.gd
|
|
@@ -1,4 +1,5 @@
|
|
extends Area2D
|
|
+class_name Berry
|
|
|
|
signal pressed(gp: Dictionary)
|
|
|
|
diff --git a/sources/minigames/caterpillar/branch.gd b/sources/minigames/caterpillar/branch.gd
|
|
index ad7e39ed..105cd9c8 100644
|
|
--- a/sources/minigames/caterpillar/branch.gd
|
|
+++ b/sources/minigames/caterpillar/branch.gd
|
|
@@ -1,15 +1,12 @@
|
|
@tool
|
|
extends Node2D
|
|
+class_name Branch
|
|
|
|
signal branch_pressed()
|
|
signal berry_pressed(gp: Dictionary)
|
|
|
|
-# Namespace
|
|
-const Leaf: = preload("res://sources/minigames/caterpillar/leaf.gd")
|
|
-const Berry: = preload("res://sources/minigames/caterpillar/berry.gd")
|
|
-
|
|
-const leaf_scene: PackedScene = preload("res://sources/minigames/caterpillar/leaf.tscn")
|
|
-const berry_scene: PackedScene = preload("res://sources/minigames/caterpillar/berry.tscn")
|
|
+const LEAF_SCENE: PackedScene = preload("res://sources/minigames/caterpillar/leaf.tscn")
|
|
+const BERRY_SCENE: PackedScene = preload("res://sources/minigames/caterpillar/berry.tscn")
|
|
|
|
@onready var leaves: Node2D = $Leaves
|
|
@onready var berries: Node2D = $Berries
|
|
@@ -32,7 +29,7 @@ func _ready() -> void:
|
|
# Adds some leaves from start
|
|
var pos: float = -leaves.position.x + velocity * randf_range(0,2)
|
|
while pos < 0:
|
|
- var leaf: Leaf = leaf_scene.instantiate()
|
|
+ var leaf: Leaf = LEAF_SCENE.instantiate()
|
|
leaves.add_child(leaf)
|
|
leaf.position.x = pos
|
|
pos = pos + velocity * randf_range(2, 5)
|
|
@@ -54,7 +51,7 @@ func _process(delta: float) -> void:
|
|
|
|
|
|
func spawn_berry(gp: Dictionary, is_distractor: bool) -> void:
|
|
- var berry : Berry = berry_scene.instantiate()
|
|
+ var berry : Berry = BERRY_SCENE.instantiate()
|
|
berries.add_child(berry)
|
|
berry.gp = gp
|
|
berry.is_distractor = is_distractor
|
|
@@ -76,7 +73,7 @@ func _on_button_pressed() -> void:
|
|
|
|
|
|
func _on_leaf_timer_timeout() -> void:
|
|
- var leaf: Leaf = leaf_scene.instantiate()
|
|
+ var leaf: Leaf = LEAF_SCENE.instantiate()
|
|
leaves.add_child(leaf)
|
|
|
|
leaf_timer.wait_time = randf_range(2.0, 5.0)
|
|
diff --git a/sources/minigames/caterpillar/caterpillar.gd b/sources/minigames/caterpillar/caterpillar.gd
|
|
index c15d263e..9d26ea70 100644
|
|
--- a/sources/minigames/caterpillar/caterpillar.gd
|
|
+++ b/sources/minigames/caterpillar/caterpillar.gd
|
|
@@ -1,10 +1,6 @@
|
|
@tool
|
|
extends Node2D
|
|
-
|
|
-# Namespace
|
|
-const CaterpillarHead: = preload("res://sources/minigames/caterpillar/caterpillar_head.gd")
|
|
-const CaterpillarBody: = preload("res://sources/minigames/caterpillar/caterpillar_body.gd")
|
|
-const Berry: = preload("res://sources/minigames/caterpillar/berry.gd")
|
|
+class_name Caterpillar
|
|
|
|
signal berry_eaten(berry: Berry)
|
|
|
|
diff --git a/sources/minigames/caterpillar/caterpillar_body.gd b/sources/minigames/caterpillar/caterpillar_body.gd
|
|
index 5d666854..5743aa20 100644
|
|
--- a/sources/minigames/caterpillar/caterpillar_body.gd
|
|
+++ b/sources/minigames/caterpillar/caterpillar_body.gd
|
|
@@ -1,5 +1,6 @@
|
|
@tool
|
|
extends Node2D
|
|
+class_name CaterpillarBody
|
|
|
|
@onready var animated_sprite: AnimatedSprite2D = $AnimatedSprite2D
|
|
@onready var label: Label = $Label
|
|
diff --git a/sources/minigames/caterpillar/caterpillar_head.gd b/sources/minigames/caterpillar/caterpillar_head.gd
|
|
index 8232f17b..b76f2da2 100644
|
|
--- a/sources/minigames/caterpillar/caterpillar_head.gd
|
|
+++ b/sources/minigames/caterpillar/caterpillar_head.gd
|
|
@@ -1,5 +1,6 @@
|
|
@tool
|
|
extends Node2D
|
|
+class_name CaterpillarHead
|
|
|
|
@onready var animated_sprite: AnimatedSprite2D = $AnimatedSprite2D
|
|
@onready var audio_stream_player: CaterpillarAudioStreamPlayer = $CaterpillarAudioStreamPlayer
|
|
diff --git a/sources/minigames/caterpillar/caterpillar_minigame.gd b/sources/minigames/caterpillar/caterpillar_minigame.gd
|
|
index 421a51f2..eb30ffc5 100644
|
|
--- a/sources/minigames/caterpillar/caterpillar_minigame.gd
|
|
+++ b/sources/minigames/caterpillar/caterpillar_minigame.gd
|
|
@@ -1,12 +1,7 @@
|
|
@tool
|
|
extends WordsMinigame
|
|
|
|
-# Namespace
|
|
-const Caterpillar: = preload("res://sources/minigames/caterpillar/caterpillar.gd")
|
|
-const Branch: = preload("res://sources/minigames/caterpillar/branch.gd")
|
|
-const Berry: = preload("res://sources/minigames/caterpillar/berry.gd")
|
|
-
|
|
-const branch_scene: PackedScene = preload("res://sources/minigames/caterpillar/branch.tscn")
|
|
+const BRANCH_SCENE: PackedScene = preload("res://sources/minigames/caterpillar/branch.tscn")
|
|
|
|
|
|
class DifficultySettings:
|
|
@@ -50,7 +45,7 @@ func _setup_minigame() -> void:
|
|
# Spawn the right amount of branches
|
|
var branch_size: float = branches_zone.size.y / (settings.branches + 1)
|
|
for index: int in settings.branches:
|
|
- var branch: Branch = branch_scene.instantiate()
|
|
+ var branch: Branch = BRANCH_SCENE.instantiate()
|
|
branch.velocity = settings.velocity
|
|
branches_zone.add_child(branch)
|
|
branch.set_position(Vector2(0, branch_size * (index+1)))
|
|
diff --git a/sources/minigames/caterpillar/leaf.gd b/sources/minigames/caterpillar/leaf.gd
|
|
index f56c7bd8..f9eee100 100644
|
|
--- a/sources/minigames/caterpillar/leaf.gd
|
|
+++ b/sources/minigames/caterpillar/leaf.gd
|
|
@@ -1,4 +1,5 @@
|
|
extends Node2D
|
|
+class_name Leaf
|
|
|
|
func _on_visible_on_screen_notifier_2d_screen_exited() -> void:
|
|
queue_free()
|
|
diff --git a/sources/minigames/frog/frog_material.tres b/sources/minigames/frog/frog_material.tres
|
|
index 7fe6e190..6e9377e5 100644
|
|
--- a/sources/minigames/frog/frog_material.tres
|
|
+++ b/sources/minigames/frog/frog_material.tres
|
|
@@ -1,6 +1,6 @@
|
|
[gd_resource type="ShaderMaterial" load_steps=5 format=3 uid="uid://cj241oskmxqgv"]
|
|
|
|
-[ext_resource type="Shader" uid="uid://dkmay7kcecvde" path="res://sources/minigames/frog/flood.gdshader" id="1_obtft"]
|
|
+[ext_resource type="Shader" uid="uid://djvhi4vg4ko1c" path="res://sources/minigames/frog/flood.gdshader" id="1_obtft"]
|
|
|
|
[sub_resource type="Gradient" id="Gradient_s16dt"]
|
|
colors = PackedColorArray(1, 1, 1, 1, 0, 0, 0, 1)
|
|
diff --git a/sources/minigames/frog/lilypad_material.tres b/sources/minigames/frog/lilypad_material.tres
|
|
index a658c9a4..2732d41b 100644
|
|
--- a/sources/minigames/frog/lilypad_material.tres
|
|
+++ b/sources/minigames/frog/lilypad_material.tres
|
|
@@ -1,6 +1,6 @@
|
|
[gd_resource type="ShaderMaterial" load_steps=5 format=3 uid="uid://3n8kdc1u25om"]
|
|
|
|
-[ext_resource type="Shader" uid="uid://dkmay7kcecvde" path="res://sources/minigames/frog/flood.gdshader" id="1_yfhcb"]
|
|
+[ext_resource type="Shader" uid="uid://djvhi4vg4ko1c" path="res://sources/minigames/frog/flood.gdshader" id="1_yfhcb"]
|
|
|
|
[sub_resource type="Gradient" id="Gradient_q5on4"]
|
|
colors = PackedColorArray(1, 1, 1, 1, 0, 0, 0, 1)
|
|
diff --git a/sources/utils/autoloads/database.gd b/sources/utils/autoloads/database.gd
|
|
index ad5ed07a..4fe05266 100644
|
|
--- a/sources/utils/autoloads/database.gd
|
|
+++ b/sources/utils/autoloads/database.gd
|
|
@@ -15,11 +15,10 @@ const look_and_learn_sounds: String = "/look_and_learn/sounds/"
|
|
const look_and_learn_videos: String = "/look_and_learn/video/"
|
|
const language_sounds: String = "/language_sounds/"
|
|
const kalulu_folder: String = "/kalulu/"
|
|
-const tracing_data_folder: String = "tracing_data/"
|
|
const additional_word_list_path: String = "word_list.csv"
|
|
-const video_extension: String = ".ogv"
|
|
-const image_extension: String = ".png"
|
|
-const sound_extension: String = ".mp3"
|
|
+const VIDEO_EXTENSION: String = ".ogv"
|
|
+const IMAGE_EXTENSION: String = ".png"
|
|
+const SOUND_EXTENSION: String = ".mp3"
|
|
|
|
var language: String:
|
|
set(value):
|
|
@@ -539,31 +538,31 @@ func get_gp_name(gp: Dictionary) -> String:
|
|
|
|
|
|
func get_gp_look_and_learn_image_path(gp: Dictionary) -> String:
|
|
- return base_path + language + look_and_learn_images + get_gp_name(gp) + image_extension
|
|
+ return base_path + language + look_and_learn_images + get_gp_name(gp) + IMAGE_EXTENSION
|
|
|
|
|
|
func get_gp_look_and_learn_sound_path(gp: Dictionary) -> String:
|
|
- return base_path + language + look_and_learn_sounds + get_gp_name(gp) + sound_extension
|
|
+ return base_path + language + look_and_learn_sounds + get_gp_name(gp) + SOUND_EXTENSION
|
|
|
|
|
|
func get_gp_look_and_learn_video_path(gp: Dictionary) -> String:
|
|
- return base_path + language + look_and_learn_videos + get_gp_name(gp) + video_extension
|
|
+ return base_path + language + look_and_learn_videos + get_gp_name(gp) + VIDEO_EXTENSION
|
|
|
|
|
|
func get_gp_sound_path(gp: Dictionary) -> String:
|
|
- return base_path + language + language_sounds + Database.get_gp_name(gp) + sound_extension
|
|
+ return base_path + language + language_sounds + Database.get_gp_name(gp) + SOUND_EXTENSION
|
|
|
|
|
|
func get_syllable_sound_path(syllable: Dictionary) -> String:
|
|
- return base_path + language + language_sounds + syllable.Grapheme + sound_extension
|
|
+ return base_path + language + language_sounds + syllable.Grapheme + SOUND_EXTENSION
|
|
|
|
|
|
func get_word_sound_path(word: Dictionary) -> String:
|
|
- return base_path + language + language_sounds + word.Word + sound_extension
|
|
+ return base_path + language + language_sounds + word.Word + SOUND_EXTENSION
|
|
|
|
|
|
func get_kalulu_speech_path(speech_category: String, speech_name: String) -> String:
|
|
- return base_path + language + language_sounds + kalulu_folder + speech_category + "_" + speech_name + sound_extension
|
|
+ return base_path + language + language_sounds + kalulu_folder + speech_category + "_" + speech_name + SOUND_EXTENSION
|
|
|
|
|
|
func load_external_sound(path: String) -> AudioStreamMP3:
|
|
diff --git a/sources/utils/fx/fireworks.gd b/sources/utils/fx/fireworks.gd
|
|
index 28e65ba8..2666ce32 100644
|
|
--- a/sources/utils/fx/fireworks.gd
|
|
+++ b/sources/utils/fx/fireworks.gd
|
|
@@ -1,9 +1,9 @@
|
|
extends Node
|
|
+class_name Fireworks
|
|
|
|
signal finished()
|
|
|
|
-const Rocket: = preload("res://sources/utils/fx/rocket.gd")
|
|
-const rocket_scene: PackedScene = preload("res://sources/utils/fx/rocket.tscn")
|
|
+const ROKCET_SCENE: PackedScene = preload("res://sources/utils/fx/rocket.tscn")
|
|
|
|
@export var number_of_rockets: int = 25
|
|
|
|
@@ -30,7 +30,7 @@ func _on_FireDelayTimer_timeout() -> void:
|
|
var start_node: Node2D = starts[randi() % starts.size()]
|
|
var end_node: Node2D = ends[randi() % ends.size()]
|
|
|
|
- var rocket: Rocket = rocket_scene.instantiate()
|
|
+ var rocket: Rocket = ROKCET_SCENE.instantiate()
|
|
rockets.add_child(rocket)
|
|
rocket.start(start_node.global_position, end_node.global_position + Vector2(randf_range(-25.0, 25.0), randf_range(-25.0, 25.0)))
|
|
|
|
diff --git a/sources/utils/fx/rocket.gd b/sources/utils/fx/rocket.gd
|
|
index accb943d..92ce0dce 100644
|
|
--- a/sources/utils/fx/rocket.gd
|
|
+++ b/sources/utils/fx/rocket.gd
|
|
@@ -1,4 +1,5 @@
|
|
extends Path2D
|
|
+class_name Rocket
|
|
|
|
@export var spread_angle: float = PI/8.0
|
|
@export var segments: int = 5
|
|
--
|
|
2.33.0.windows.1
|
|
|