Add high scores level with specific settings, new resources for images and textures, update project configuration to include HighScoreMgr, and define style boxes for game theme.

This commit is contained in:
Dan 2024-05-11 13:53:04 +01:00
parent 3eaa959910
commit 115b4b0a69
22 changed files with 821 additions and 12 deletions

View file

@ -0,0 +1,19 @@
extends Level
class_name HighScoresScreen
func _ready():
update_game_state()
%BeeDeathLabel.text = Str.format_number(HighScoreMgr.loaded_data.total_bees_killed)
%HoneyCountLabel.text = Str.format_number(HighScoreMgr.loaded_data.total_honey_collected)
%LevelOneScoreLabel.text = Str.format_number(HighScoreMgr.loaded_data.level_1_score)
%LevelTwoScoreLabel.text = Str.format_number(HighScoreMgr.loaded_data.level_2_score)
%LevelThreeScoreLabel.text = Str.format_number(HighScoreMgr.loaded_data.level_3_score)
%LevelFourScoreLabel.text = Str.format_number(HighScoreMgr.loaded_data.level_4_score)
%LevelFiveScoreLabel.text = Str.format_number(HighScoreMgr.loaded_data.level_5_score)
%LevelSixScoreLabel.text = Str.format_number(HighScoreMgr.loaded_data.level_6_score)
%MainMenuButton.connect("pressed", Callable(self, "on_main_menu_button_pressed"))
func on_main_menu_button_pressed():
SceneMgr.load_scene("MAINMENU")

View file

@ -39,6 +39,7 @@ func _on_item_menu_pressed(id):
func on_high_scores_pressed():
## Load the high scores screen
Log.pr("High scores button pressed")
SceneMgr.load_scene("HIGHSCORES")
pass
func on_exit_pressed():

View file

@ -3,7 +3,7 @@ class_name SceneManager
const SCENES : Dictionary = {
"MAINMENU" : "res://scenes/main_menu.tscn",
"HIGHSCORES" : "res://scenes/highscores.tscn",
"HIGHSCORES" : "res://scenes/high_scores.tscn",
"LEVEL1" : "res://levels/level_1.tscn",
"LEVEL2" : "res://levels/level_2.tscn",
"LEVEL3" : "res://levels/level_3.tscn",
@ -15,6 +15,12 @@ const SCENES : Dictionary = {
var loading_scene_res : Resource = null
func _ready():
## LOAD GAME DATA
HighScoreMgr.load()
HighScoreMgr.debug_output()
# HighScoreMgr.debug_save_high_score()
Log.pr("SceneManager is ready.")
SceneMgr.connect("change_scene", Callable(self, "_on_change_scene"))
$TransitionScene.connect("transitioned", Callable(self, "_on_transition_scene_transitioned"))