From 494834442288e6b399cd5c69ffc911a62c925242 Mon Sep 17 00:00:00 2001 From: Agathe Date: Thu, 1 Feb 2024 17:05:15 +0100 Subject: [PATCH] create the navigation system with the previous screens --- licenses/Licenses.md | 2 + main.py | 14 ++++- resources/images/quests.png | Bin 0 -> 5886 bytes resources/images/success.png | Bin 0 -> 11950 bytes screens/__init__.py | 1 + screens/boosters.py | 7 +-- screens/classic_mode.py | 8 ++- screens/custom_widgets/bottom_bar.py | 8 +-- screens/custom_widgets/levels_branchs.py | 6 +- screens/customization.py | 2 +- screens/game.kv | 10 ++++ screens/game.py | 14 +++++ screens/home.py | 2 +- screens/levels.py | 21 +++++-- screens/opening.py | 6 +- screens/profile.py | 3 +- screens/quests.kv | 33 +++++++++++ screens/quests.py | 67 +++++++++++++++++++++++ screens/themes.py | 7 ++- tools/constants.py | 1 + tools/kivy_tools/screen.py | 7 +-- 21 files changed, 187 insertions(+), 32 deletions(-) create mode 100644 resources/images/quests.png create mode 100644 resources/images/success.png create mode 100644 screens/quests.kv create mode 100644 screens/quests.py diff --git a/licenses/Licenses.md b/licenses/Licenses.md index 0e23204..ed3d312 100644 --- a/licenses/Licenses.md +++ b/licenses/Licenses.md @@ -19,4 +19,6 @@ The following list includes all the references of the assets used by this applic - Google play music icons created by Pixel perfect - Flaticon - Art icons created by Freepik - Flaticon - Backspace icons created by Icon Smart - Flaticon +- Quest icons created by Vitaly Gorbachev - Flaticon +- Achievement icons created by VectorPortal - Flaticon - Music by Artur Aravidi from Pixabay \ No newline at end of file diff --git a/main.py b/main.py index bc5de6b..bfbceef 100644 --- a/main.py +++ b/main.py @@ -53,7 +53,7 @@ class WindowManager(ScreenManager): def __init__(self, **kwargs): super().__init__(**kwargs) self.transition = NoTransition() - self.list_former_screens = [] + self.list_previous_screens = [] current_screen = Screen(name="temp") self.add_widget(current_screen) self.current = "temp" @@ -64,6 +64,18 @@ def change_all_background_images(self, new_image_path): screen = self.get_screen(screen_name) screen.set_back_image_path(new_image_path) + def go_to_previous_screen(self): + if len(self.list_previous_screens) != 0: + previous_screen = self.list_previous_screens.pop() + screen_name = previous_screen[0] + self.get_screen(screen_name).reload_kwargs(previous_screen[1]) + self.current = screen_name + + def go_to_next_screen(self, next_screen_name, current_dict_kwargs={}, next_dict_kwargs={}): + current_screen_name = self.current + self.list_previous_screens.append((current_screen_name, current_dict_kwargs)) + self.get_screen(next_screen_name).reload_kwargs(next_dict_kwargs) + self.current = next_screen_name class MainApp(App, Widget): """ diff --git a/resources/images/quests.png b/resources/images/quests.png new file mode 100644 index 0000000000000000000000000000000000000000..c4ae26339fc16c405e879c1f121007147ae99a96 GIT binary patch literal 5886 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 literal 0 HcmV?d00001 diff --git a/resources/images/success.png b/resources/images/success.png new file mode 100644 index 0000000000000000000000000000000000000000..bafca6e7a350f46b6f63c5abe44a73b50bb440f8 GIT binary patch literal 11950 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 AY5)KL literal 0 HcmV?d00001 diff --git a/screens/__init__.py b/screens/__init__.py index 875c4bd..69c632c 100644 --- a/screens/__init__.py +++ b/screens/__init__.py @@ -32,3 +32,4 @@ from screens.levels import LevelsScreen from screens.customization import CustomizationScreen from screens.game import GameScreen +from screens.quests import QuestsScreen diff --git a/screens/boosters.py b/screens/boosters.py index 331a413..9b3d7b2 100644 --- a/screens/boosters.py +++ b/screens/boosters.py @@ -44,7 +44,6 @@ class BoostersScreen(ImprovedScreen): coins_count = NumericProperty() primary_color = ColorProperty((0, 0, 0, 1)) secondary_color = ColorProperty((0, 0, 0, 1)) - former_screen = StringProperty() list_ads = ListProperty() list_buy = ListProperty() @@ -67,9 +66,6 @@ def on_enter(self, *args): self.build_list_buy() return super().on_enter(*args) - def go_backwards(self): - self.manager.current = self.former_screen - def build_list_ads(self): self.list_ads = [] for ad in USER_DATA.ads: @@ -126,3 +122,6 @@ def buy_booster(self, number: int): None """ pass + + def go_backwards(self): + self.manager.go_to_previous_screen() diff --git a/screens/classic_mode.py b/screens/classic_mode.py index 029bcc5..dbb5531 100644 --- a/screens/classic_mode.py +++ b/screens/classic_mode.py @@ -101,5 +101,9 @@ def fill_scrollview(self): scrollview_layout.add_widget(self.ACT_BUTTON_DICT[act]) def open_levels_screen(self, act_id): - self.manager.get_screen("levels").current_act_id = act_id - self.manager.current = "levels" + dict_kwargs = { + "current_act_id": act_id + } + self.manager.go_to_next_screen( + next_screen_name="levels", + next_dict_kwargs=dict_kwargs) diff --git a/screens/custom_widgets/bottom_bar.py b/screens/custom_widgets/bottom_bar.py index ef62ba2..c8fbc5e 100644 --- a/screens/custom_widgets/bottom_bar.py +++ b/screens/custom_widgets/bottom_bar.py @@ -51,22 +51,22 @@ def open_home(self): """ Open the home screen. """ - self.parent.manager.current = "home" + self.parent.manager.go_to_next_screen(next_screen_name="home") def open_settings(self): """ Open the settings screen. """ - self.parent.manager.current = "settings" + self.parent.manager.go_to_next_screen(next_screen_name="settings") def open_customization(self): """ Open the customization screen. """ - self.parent.manager.current = "customization" + self.parent.manager.go_to_next_screen(next_screen_name="customization") def open_profile(self): """ Open the profile screen. """ - self.parent.manager.current = "profile" + self.parent.manager.go_to_next_screen(next_screen_name="profile") diff --git a/screens/custom_widgets/levels_branchs.py b/screens/custom_widgets/levels_branchs.py index c3dbccf..3beefb5 100644 --- a/screens/custom_widgets/levels_branchs.py +++ b/screens/custom_widgets/levels_branchs.py @@ -100,11 +100,7 @@ def on_release(self): if not self.disable_button: self.opacity = 1 self.get_root_window().children[0].get_screen( - "game").current_act_id = self.parent.act_id - self.get_root_window().children[0].get_screen( - "game").current_level_id = str(self.level_id) - self.get_root_window().children[0].current = "game" - + "levels").open_game_screen(str(self.level_id)) class LevelBranch(RelativeLayout): diff --git a/screens/customization.py b/screens/customization.py index f372b9c..5bdedbb 100644 --- a/screens/customization.py +++ b/screens/customization.py @@ -45,4 +45,4 @@ def open_musics_screen(self, *_): pass def open_themes_screen(self, *_): - self.manager.current = "themes" + self.manager.go_to_next_screen(next_screen_name="themes") diff --git a/screens/game.kv b/screens/game.kv index 700a4f5..66aac4b 100644 --- a/screens/game.kv +++ b/screens/game.kv @@ -7,6 +7,7 @@ #:import LETTER_FONT_SIZE tools.constants.LETTER_FONT_SIZE #:import TEXT_FONT_COLOR tools.constants.TEXT_FONT_COLOR #:import POS_HINT_BACK_ARROW tools.constants.POS_HINT_BACK_ARROW +#:import POS_HINT_RIGHT_TOP_BUTTON tools.constants.POS_HINT_RIGHT_TOP_BUTTON : Label: @@ -27,6 +28,15 @@ colors: root.primary_color on_release: root.go_backwards() + # Button for the quests + RoundedButtonImage: + image_path: PATH_IMAGES + "quests.png" + pos_hint: POS_HINT_RIGHT_TOP_BUTTON + size_hint: (0.1, None) + height: self.width + colors: root.primary_color + on_release: root.go_to_quests_screen() + # Stars ThreeStars: id: three_stars diff --git a/screens/game.py b/screens/game.py index 19d1053..db2d187 100644 --- a/screens/game.py +++ b/screens/game.py @@ -71,6 +71,10 @@ def __init__(self, **kwargs) -> None: self.current_act_id: str self.current_level_id: str + def reload_kwargs(self, dict_kwargs): + self.current_act_id = dict_kwargs["current_act_id"] + self.current_level_id = dict_kwargs["current_level_id"] + def on_pre_enter(self, *args): # Initialise the current word self.current_word = self.start_word @@ -274,6 +278,16 @@ def disable_submit_button(self): # self.ids.submit_button.opacity = 0 self.ids.submit_button.disable_button = True + def go_to_quests_screen(self): + dict_kwargs = { + "current_level_id": self.current_level_id, + "current_act_id": self.current_act_id + } + self.manager.go_to_next_screen( + next_screen_name="quests", + current_dict_kwargs=dict_kwargs, + next_dict_kwargs=dict_kwargs) + def go_backwards(self): self.manager.get_screen("levels").current_act_id = self.current_act_id self.manager.current = "levels" diff --git a/screens/home.py b/screens/home.py index 24b28e8..d756821 100644 --- a/screens/home.py +++ b/screens/home.py @@ -51,4 +51,4 @@ def open_classic_mode(self): """ Open the classic mode screen. """ - self.manager.current = "classic_mode" + self.manager.go_to_next_screen(next_screen_name="classic_mode") diff --git a/screens/levels.py b/screens/levels.py index efb5e62..626bb92 100644 --- a/screens/levels.py +++ b/screens/levels.py @@ -46,7 +46,10 @@ def __init__(self, **kwargs) -> None: back_image_path=PATH_BACKGROUNDS + THEMES_DICT[current_theme_image]["image"], **kwargs) - self.current_act_id = "" + self.current_act_id : str + + def reload_kwargs(self, dict_kwargs): + self.current_act_id = dict_kwargs["current_act_id"] def on_pre_enter(self, *args): current_theme_colors = USER_DATA.settings["current_theme_colors"] @@ -63,6 +66,16 @@ def on_leave(self, *args): self.ids.level_layout.clear_widgets() return super().on_leave(*args) - def open_game_screen(self): - self.manager.get_screen("game").current_act_id = self.current_act_id - self.manager.current = "game" + def open_game_screen(self, level_id): + current_dict_kwargs = { + "current_act_id": self.current_act_id + } + next_dict_kwargs = { + "current_act_id": self.current_act_id, + "current_level_id": level_id + } + self.manager.go_to_next_screen( + next_screen_name="game", + current_dict_kwargs=current_dict_kwargs, + next_dict_kwargs=next_dict_kwargs + ) diff --git a/screens/opening.py b/screens/opening.py index f17f195..e6499a5 100644 --- a/screens/opening.py +++ b/screens/opening.py @@ -64,7 +64,8 @@ def load_kv_files(self, *_): BoostersScreen, LevelsScreen, CustomizationScreen, - GameScreen + GameScreen, + QuestsScreen ) screen_files = [file for file in os.listdir( @@ -86,6 +87,7 @@ def load_kv_files(self, *_): self.LevelsScreen = LevelsScreen self.CustomizationScreen = CustomizationScreen self.GameScreen = GameScreen + self.QuestsScreen = QuestsScreen Clock.schedule_once(self.load_other_screens) @@ -111,6 +113,8 @@ def load_other_screens(self, *args): self.manager.add_widget(levels_screen) game_screen = self.GameScreen(name="game") self.manager.add_widget(game_screen) + quests_screen = self.QuestsScreen(name="quests") + self.manager.add_widget(quests_screen) customization_screen = self.CustomizationScreen(name="customization") self.manager.add_widget(customization_screen) Clock.schedule_once(self.switch_to_menu) diff --git a/screens/profile.py b/screens/profile.py index 126f751..857b5cb 100644 --- a/screens/profile.py +++ b/screens/profile.py @@ -63,5 +63,4 @@ def on_enter(self, *args): return super().on_enter(*args) def go_to_boosters(self): - self.manager.get_screen("boosters").former_screen = "profile" - self.manager.current = "boosters" + self.manager.go_to_next_screen(next_screen_name="boosters") diff --git a/screens/quests.kv b/screens/quests.kv new file mode 100644 index 0000000..1c0952a --- /dev/null +++ b/screens/quests.kv @@ -0,0 +1,33 @@ +#:kivy 2.2.1 +#:import PATH_IMAGES tools.path.PATH_IMAGES +#:import PATH_TITLE_FONT tools.path.PATH_TITLE_FONT +#:import TITLE_FONT_SIZE tools.constants.TITLE_FONT_SIZE +#:import TITLE_OUTLINE_WIDTH tools.constants.TITLE_OUTLINE_WIDTH +#:import TITLE_OUTLINE_COLOR tools.constants.TITLE_OUTLINE_COLOR +#:import PATH_TEXT_FONT tools.path.PATH_TEXT_FONT +#:import TEXT_FONT_COLOR tools.constants.TEXT_FONT_COLOR +#:import BOTTOM_BAR_HEIGHT tools.constants.BOTTOM_BAR_HEIGHT + + +: + Label: + text: "Quests" + font_name: PATH_TITLE_FONT + font_size: TITLE_FONT_SIZE * root.font_ratio + pos_hint: {"center_x":0.5, "center_y":0.9} + outline_width: TITLE_OUTLINE_WIDTH + outline_color: TITLE_OUTLINE_COLOR + color: TEXT_FONT_COLOR + + BottomBar: + size_hint: (1, BOTTOM_BAR_HEIGHT) + pos_hint: {"bottom":0,"left":0} + selected: "none" + + RoundedButtonImage: + image_path: PATH_IMAGES + "left_arrow.png" + pos_hint: POS_HINT_BACK_ARROW + size_hint: (0.1, None) + height: self.width + colors: root.primary_color + on_release: root.go_backwards() diff --git a/screens/quests.py b/screens/quests.py new file mode 100644 index 0000000..413c0c7 --- /dev/null +++ b/screens/quests.py @@ -0,0 +1,67 @@ +""" +Module to create the profile screen. +""" + +############### +### Imports ### +############### + +### Kivy imports ### + +from kivy.properties import ( + StringProperty, + ColorProperty +) + +### Local imports ### + +from tools.path import ( + PATH_BACKGROUNDS, + PATH_BADGES +) +from tools.constants import ( + USER_DATA, + THEMES_DICT +) +from tools.kivy_tools import ( + ImprovedScreen +) + + +############# +### Class ### +############# + + +class QuestsScreen(ImprovedScreen): + """ + Class to manage the screen that contains the profile information. + """ + + primary_color = ColorProperty((0, 0, 0, 1)) + secondary_color = ColorProperty((0, 0, 0, 1)) + + def __init__(self, **kwargs) -> None: + current_theme_image = USER_DATA.settings["current_theme_image"] + super().__init__( + back_image_path=PATH_BACKGROUNDS + + THEMES_DICT[current_theme_image]["image"], + **kwargs) + self.current_act_id: str + self.current_level_id: str | None + + def reload_kwargs(self, dict_kwargs): + self.current_act_id = dict_kwargs["current_act_id"] + self.current_level_id = dict_kwargs["current_level_id"] + + def on_enter(self, *args): + current_theme_image = USER_DATA.settings["current_theme_image"] + current_theme_colors = USER_DATA.settings["current_theme_colors"] + self.primary_color = THEMES_DICT[current_theme_colors]["primary"] + self.secondary_color = THEMES_DICT[current_theme_colors]["secondary"] + self.set_back_image_path( + PATH_BACKGROUNDS + THEMES_DICT[current_theme_image]["image"]) + return super().on_enter(*args) + + def go_backwards(self): + self.manager.go_to_previous_screen() diff --git a/screens/themes.py b/screens/themes.py index 56d65e0..5eb2990 100644 --- a/screens/themes.py +++ b/screens/themes.py @@ -70,11 +70,12 @@ def on_resize(self, *args): return super().on_resize(*args) def go_backwards(self): - self.manager.current = "customization" + self.manager.go_to_previous_screen() def go_to_boosters(self): - self.manager.get_screen("boosters").former_screen = "themes" - self.manager.current = "boosters" + self.manager.go_to_next_screen( + next_screen_name="boosters" + ) def update_coins(self): self.coins_count = USER_DATA.user_profile["coins"] diff --git a/tools/constants.py b/tools/constants.py index a2d3222..979ec9e 100644 --- a/tools/constants.py +++ b/tools/constants.py @@ -201,6 +201,7 @@ def __init__(self) -> None: CUSTOM_BUTTON_BACKGROUND_COLOR = (1, 1, 1, 0.7) OPACITY_ON_BUTTON_PRESS = 0.8 POS_HINT_BACK_ARROW = {"x": 0.02, "top": 0.99} +POS_HINT_RIGHT_TOP_BUTTON = {"right": 0.98, "top": 0.99} RATE_CHANGE_OPACITY = 0.05 DISABLE_BUTTON_COLOR = (0.15, 0.15, 0.15, 1) diff --git a/tools/kivy_tools/screen.py b/tools/kivy_tools/screen.py index 4ad418b..36dd986 100644 --- a/tools/kivy_tools/screen.py +++ b/tools/kivy_tools/screen.py @@ -41,7 +41,6 @@ class ImprovedScreen(Screen): """ Improved Screen class based on the kivy one. """ - # Create the back image properties back_image_width = NumericProperty(Window.size[0]) back_image_height = NumericProperty(Window.size[1]) @@ -222,9 +221,6 @@ def on_enter(self, *args): # Bind to update attributes when the size of the window is changed Window.bind(on_resize=self.on_resize) - # Add the screen name to the list of former screens - self.manager.list_former_screens.append(self.name) - # Update the back image size self.update_back_image_size() @@ -324,3 +320,6 @@ def change_background_opacity(self, *args): else: Clock.unschedule(self.change_background_opacity, 1/FPS) self.opacity_state = "main" + + def reload_kwargs(self, dict_kwargs): + pass