├── .gitattributes ├── .gitignore ├── ATTRIBUTION.md ├── LICENSE.txt ├── README.md ├── addons └── maaacks_menus_template │ ├── ATTRIBUTION.md │ ├── LICENSE.txt │ ├── README.md │ ├── assets │ └── input-icons │ │ ├── License.txt │ │ ├── icons-filled-colored-2x.png │ │ ├── icons-filled-colored-2x.png.import │ │ ├── icons-filled-colored-vector.svg │ │ ├── icons-filled-colored-vector.svg.import │ │ ├── icons-filled-colored.png │ │ ├── icons-filled-colored.png.import │ │ ├── icons-filled-white-2x.png │ │ ├── icons-filled-white-2x.png.import │ │ ├── icons-filled-white-vector.svg │ │ ├── icons-filled-white-vector.svg.import │ │ ├── icons-filled-white.png │ │ ├── icons-filled-white.png.import │ │ ├── icons-outlined-colored-2x.png │ │ ├── icons-outlined-colored-2x.png.import │ │ ├── icons-outlined-colored-vector.svg │ │ ├── icons-outlined-colored-vector.svg.import │ │ ├── icons-outlined-colored.png │ │ ├── icons-outlined-colored.png.import │ │ ├── icons-outlined-white-2x.png │ │ ├── icons-outlined-white-2x.png.import │ │ ├── icons-outlined-white-vector.svg │ │ ├── icons-outlined-white-vector.svg.import │ │ ├── icons-outlined-white.png │ │ └── icons-outlined-white.png.import │ ├── base │ ├── assets │ │ └── remapping_input_icons │ │ │ ├── LICENSE.txt │ │ │ ├── addition_symbol.png │ │ │ ├── addition_symbol.png.import │ │ │ ├── subtraction_symbol.png │ │ │ └── subtraction_symbol.png.import │ ├── scenes │ │ ├── autoloads │ │ │ ├── app_config.gd │ │ │ ├── app_config.gd.uid │ │ │ ├── app_config.tscn │ │ │ ├── project_music_controller.tscn │ │ │ ├── project_ui_sound_controller.tscn │ │ │ ├── scene_loader.gd │ │ │ ├── scene_loader.gd.uid │ │ │ └── scene_loader.tscn │ │ ├── credits │ │ │ ├── credits.gd │ │ │ ├── credits.gd.uid │ │ │ └── credits.tscn │ │ ├── loading_screen │ │ │ ├── loading_screen.gd │ │ │ ├── loading_screen.gd.uid │ │ │ └── loading_screen.tscn │ │ ├── menus │ │ │ ├── main_menu │ │ │ │ ├── config_name_label.gd │ │ │ │ ├── config_name_label.gd.uid │ │ │ │ ├── config_version_label.gd │ │ │ │ ├── config_version_label.gd.uid │ │ │ │ ├── main_menu.gd │ │ │ │ ├── main_menu.gd.uid │ │ │ │ └── main_menu.tscn │ │ │ └── options_menu │ │ │ │ ├── audio │ │ │ │ ├── audio_options_menu.gd │ │ │ │ ├── audio_options_menu.gd.uid │ │ │ │ └── audio_options_menu.tscn │ │ │ │ ├── input │ │ │ │ ├── input_actions_list.gd │ │ │ │ ├── input_actions_list.gd.uid │ │ │ │ ├── input_actions_list.tscn │ │ │ │ ├── input_actions_tree.gd │ │ │ │ ├── input_actions_tree.gd.uid │ │ │ │ ├── input_actions_tree.tscn │ │ │ │ ├── input_icon_mapper.gd │ │ │ │ ├── input_icon_mapper.gd.uid │ │ │ │ ├── input_icon_mapper.tscn │ │ │ │ ├── input_options_menu.gd │ │ │ │ ├── input_options_menu.gd.uid │ │ │ │ ├── input_options_menu.tscn │ │ │ │ ├── key_assignment_dialog.gd │ │ │ │ └── key_assignment_dialog.gd.uid │ │ │ │ ├── master_options_menu.gd │ │ │ │ ├── master_options_menu.gd.uid │ │ │ │ ├── master_options_menu.tscn │ │ │ │ ├── master_options_menu_with_tabs.tscn │ │ │ │ ├── mini_options_menu.gd │ │ │ │ ├── mini_options_menu.gd.uid │ │ │ │ ├── mini_options_menu.tscn │ │ │ │ ├── option_control │ │ │ │ ├── list_option_control.gd │ │ │ │ ├── list_option_control.gd.uid │ │ │ │ ├── list_option_control.tscn │ │ │ │ ├── option_control.gd │ │ │ │ ├── option_control.gd.uid │ │ │ │ ├── option_control.tscn │ │ │ │ ├── slider_option_control.tscn │ │ │ │ ├── toggle_option_control.tscn │ │ │ │ ├── vector_2_list_option_control.gd │ │ │ │ ├── vector_2_list_option_control.gd.uid │ │ │ │ └── vector_2_list_option_control.tscn │ │ │ │ └── video │ │ │ │ ├── video_options_menu.gd │ │ │ │ ├── video_options_menu.gd.uid │ │ │ │ └── video_options_menu.tscn │ │ ├── music_players │ │ │ └── background_music_player.tscn │ │ ├── opening │ │ │ ├── opening.gd │ │ │ ├── opening.gd.uid │ │ │ └── opening.tscn │ │ ├── overlaid_menu │ │ │ ├── menus │ │ │ │ ├── mini_options_overlaid_menu.tscn │ │ │ │ ├── pause_menu.gd │ │ │ │ ├── pause_menu.gd.uid │ │ │ │ └── pause_menu.tscn │ │ │ ├── overlaid_menu.gd │ │ │ ├── overlaid_menu.gd.uid │ │ │ ├── overlaid_menu.tscn │ │ │ ├── overlaid_menu_container.gd │ │ │ ├── overlaid_menu_container.gd.uid │ │ │ └── overlaid_menu_container.tscn │ │ └── utilities │ │ │ ├── api_client.gd │ │ │ ├── api_client.gd.uid │ │ │ ├── api_client.tscn │ │ │ ├── download_and_extract.gd │ │ │ ├── download_and_extract.gd.uid │ │ │ └── download_and_extract.tscn │ ├── scripts │ │ ├── app_settings.gd │ │ ├── app_settings.gd.uid │ │ ├── capture_focus.gd │ │ ├── capture_focus.gd.uid │ │ ├── config.gd │ │ ├── config.gd.uid │ │ ├── file_lister.gd │ │ ├── file_lister.gd.uid │ │ ├── input_helper.gd │ │ ├── input_helper.gd.uid │ │ ├── music_controller.gd │ │ ├── music_controller.gd.uid │ │ ├── pause_menu_controller.gd │ │ ├── pause_menu_controller.gd.uid │ │ ├── ui_sound_controller.gd │ │ └── ui_sound_controller.gd.uid │ └── translations │ │ ├── menus_translations.csv │ │ ├── menus_translations.csv.import │ │ ├── menus_translations.en.translation │ │ └── menus_translations.fr.translation │ ├── docs │ ├── ExistingProject.md │ ├── GameSceneSetup.md │ ├── GamesMade.md │ ├── HowPartsWork.md │ ├── InputIconMapping.md │ ├── JoypadInputs.md │ ├── MainMenuSetup.md │ ├── NewProject.md │ ├── PluginSuite.md │ ├── Screenshots.md │ └── Videos.md │ ├── examples │ ├── ATTRIBUTION.md │ ├── assets │ │ └── godot_engine_logo │ │ │ ├── LICENSE.txt │ │ │ ├── logo_vertical_color_dark.png │ │ │ └── logo_vertical_color_dark.png.import │ ├── resources │ │ └── themes │ │ │ ├── expedition.tres │ │ │ ├── gravity.tres │ │ │ ├── grow.tres │ │ │ ├── lab.tres │ │ │ ├── lore.tres │ │ │ └── steal_this_theme.tres │ └── scenes │ │ ├── credits │ │ ├── credits.gd │ │ ├── credits.gd.uid │ │ └── credits.tscn │ │ ├── end_credits │ │ ├── end_credits.gd │ │ ├── end_credits.gd.uid │ │ └── end_credits.tscn │ │ ├── loading_screen │ │ ├── loading_screen.gd │ │ ├── loading_screen.gd.uid │ │ ├── loading_screen.tscn │ │ ├── loading_screen_with_shader_caching.gd │ │ ├── loading_screen_with_shader_caching.gd.uid │ │ └── loading_screen_with_shader_caching.tscn │ │ ├── menus │ │ ├── main_menu │ │ │ ├── main_menu.gd │ │ │ ├── main_menu.gd.uid │ │ │ ├── main_menu.tscn │ │ │ ├── main_menu_with_animations.gd │ │ │ ├── main_menu_with_animations.gd.uid │ │ │ └── main_menu_with_animations.tscn │ │ └── options_menu │ │ │ ├── audio │ │ │ ├── audio_input_option_control.gd │ │ │ ├── audio_input_option_control.gd.uid │ │ │ ├── audio_input_option_control.tscn │ │ │ ├── audio_options_menu.gd │ │ │ ├── audio_options_menu.gd.uid │ │ │ └── audio_options_menu.tscn │ │ │ ├── input │ │ │ ├── input_extras_menu.tscn │ │ │ ├── input_options_menu.gd │ │ │ ├── input_options_menu.gd.uid │ │ │ ├── input_options_menu.tscn │ │ │ └── input_options_menu_with_mouse_sensitivity.tscn │ │ │ ├── master_options_menu.gd │ │ │ ├── master_options_menu.gd.uid │ │ │ ├── master_options_menu.tscn │ │ │ ├── master_options_menu_with_tabs.tscn │ │ │ ├── mini_options_menu.gd │ │ │ ├── mini_options_menu.gd.uid │ │ │ ├── mini_options_menu.tscn │ │ │ ├── mini_options_menu_with_reset.gd.uid │ │ │ └── video │ │ │ ├── video_options_menu.gd │ │ │ ├── video_options_menu.gd.uid │ │ │ ├── video_options_menu.tscn │ │ │ └── video_options_menu_with_extras.tscn │ │ ├── opening │ │ ├── opening.gd │ │ ├── opening.gd.uid │ │ ├── opening.tscn │ │ └── opening_with_logo.tscn │ │ └── overlaid_menus │ │ ├── mini_options_overlaid_menu.tscn │ │ ├── overlaid_menu.gd │ │ ├── overlaid_menu.gd.uid │ │ ├── overlaid_menu.tscn │ │ ├── overlaid_menu_container.gd │ │ ├── overlaid_menu_container.gd.uid │ │ ├── overlaid_menu_container.tscn │ │ ├── pause_menu.gd │ │ ├── pause_menu.gd.uid │ │ └── pause_menu.tscn │ ├── installer │ ├── check_plugin_version.gd │ ├── check_plugin_version.gd.uid │ ├── check_plugin_version.tscn │ ├── copy_confirmation_dialog.tscn │ ├── delete_examples_confirmation_dialog.tscn │ ├── delete_examples_short_confirmation_dialog.tscn │ ├── destination_dialog.tscn │ ├── kenney_input_prompts_dialog.gd │ ├── kenney_input_prompts_dialog.gd.uid │ ├── kenney_input_prompts_dialog.tscn │ ├── kenney_input_prompts_installer.gd │ ├── kenney_input_prompts_installer.gd.uid │ ├── kenney_input_prompts_installer.tscn │ ├── main_scene_confirmation_dialog.tscn │ ├── override.cfg │ ├── play_opening_confirmation_dialog.tscn │ ├── theme_selection_dialog.gd │ ├── theme_selection_dialog.gd.uid │ ├── theme_selection_dialog.tscn │ ├── update_plugin.gd │ ├── update_plugin.gd.uid │ └── update_plugin.tscn │ ├── maaacks_menus_template.gd │ ├── maaacks_menus_template.gd.uid │ ├── media │ ├── .gdignore │ ├── credits_scene-icon-black-transparent-256x256.png │ ├── game-icon-black-transparent-256x256.png │ ├── input_remapping-icon-black-transparent-256x256.png │ ├── maaack-black-transparent-256x256.png │ ├── maaacks-plugin-suite-256x256.gif │ ├── menus-icon-black-transparent-256x256.png │ ├── music_controller-icon-black-transparent-256x256.png │ ├── options-icon-black-transparent-256x256.png │ ├── scene_loader-icon-black-transparent-256x256.png │ ├── screenshot-5-juliocacko-1.png │ ├── screenshot-5-juliocacko-2.png │ ├── screenshot-5-kenney-1.png │ ├── screenshot-5-kenney-2.png │ ├── screenshot-5-kenney-3.png │ ├── screenshot-5-kenney-4.png │ ├── screenshot-5-xelu-1.png │ ├── screenshot-5-xelu-2.png │ ├── screenshot-6-audio-options-1.png │ ├── screenshot-6-audio-options-2.png │ ├── screenshot-6-audio-options-3.png │ ├── screenshot-6-audio-options-4.png │ ├── screenshot-6-audio-options-5.png │ ├── screenshot-6-audio-options-6.png │ ├── screenshot-6-input-list-1.png │ ├── screenshot-6-input-list-2.png │ ├── screenshot-6-input-list-3.png │ ├── screenshot-6-input-list-4.png │ ├── screenshot-6-input-list-5.png │ ├── screenshot-6-input-list-6.png │ ├── screenshot-6-input-list-7.png │ ├── screenshot-6-input-list-8.png │ ├── screenshot-6-input-list-9.png │ ├── screenshot-6-input-sensitivity-1.png │ ├── screenshot-6-input-sensitivity-2.png │ ├── screenshot-6-input-sensitivity-3.png │ ├── screenshot-6-input-sensitivity-4.png │ ├── screenshot-6-input-sensitivity-5.png │ ├── screenshot-6-input-tree-1.png │ ├── screenshot-6-input-tree-2.png │ ├── screenshot-6-input-tree-3.png │ ├── screenshot-6-input-tree-4.png │ ├── screenshot-6-input-tree-5.png │ ├── screenshot-6-level-lost-1.png │ ├── screenshot-6-level-lost-2.png │ ├── screenshot-6-level-lost-3.png │ ├── screenshot-6-level-select-1.png │ ├── screenshot-6-level-state-1.png │ ├── screenshot-6-level-state-2.png │ ├── screenshot-6-level-state-3.png │ ├── screenshot-6-level-won-1.png │ ├── screenshot-6-level-won-2.png │ ├── screenshot-6-level-won-3.png │ ├── screenshot-6-loading-screen-1.png │ ├── screenshot-6-loading-screen-2.png │ ├── screenshot-6-loading-screen-3.png │ ├── screenshot-6-loading-screen-4.png │ ├── screenshot-6-main-menu-1.png │ ├── screenshot-6-main-menu-2.png │ ├── screenshot-6-main-menu-3.png │ ├── screenshot-6-main-menu-4.png │ ├── screenshot-6-main-menu-5.png │ ├── screenshot-6-mini-options-1.png │ ├── screenshot-6-mini-options-2.png │ ├── screenshot-6-pause-menu-1.png │ ├── screenshot-6-pause-menu-2.png │ ├── screenshot-6-pause-menu-3.png │ ├── screenshot-6-pause-menu-4.png │ ├── screenshot-6-pause-menu-5.png │ ├── screenshot-6-theme-selector-1.png │ ├── screenshot-6-theme-selector-10.png │ ├── screenshot-6-theme-selector-11.png │ ├── screenshot-6-theme-selector-12.png │ ├── screenshot-6-theme-selector-2.png │ ├── screenshot-6-theme-selector-3.png │ ├── screenshot-6-theme-selector-4.png │ ├── screenshot-6-theme-selector-5.png │ ├── screenshot-6-theme-selector-6.png │ ├── screenshot-6-theme-selector-7.png │ ├── screenshot-6-theme-selector-8.png │ ├── screenshot-6-theme-selector-9.png │ ├── screenshot-6-video-options-1.png │ ├── screenshot-6-video-options-2.png │ ├── screenshot-6-video-options-3.png │ ├── screenshot-6-video-options-4.png │ ├── screenshot-6-video-options-5.png │ ├── screenshot-6-video-options-6.png │ ├── screenshot-game-a-darkness-like-gravity.png │ ├── screenshot-game-harvest-hill.png │ ├── screenshot-game-nannybot-overload.png │ ├── screenshot-game-rent-seek-kill.png │ ├── screenshot-game-spud-customs.png │ └── ui_sound_controller-icon-black-transparent-256x256.png │ └── plugin.cfg ├── assets └── godot_engine_logo │ ├── LICENSE.txt │ ├── logo_vertical_color_dark.png │ └── logo_vertical_color_dark.png.import ├── default_bus_layout.tres ├── dev_scripts ├── rsync-source-location.txt └── rsync_with_game_template.sh ├── icon.png ├── icon.png.import ├── override.cfg ├── project.godot ├── resources └── themes │ ├── expedition.tres │ ├── gravity.tres │ ├── grow.tres │ ├── lab.tres │ ├── lore.tres │ └── steal_this_theme.tres └── scenes ├── credits ├── credits.gd ├── credits.gd.uid └── credits.tscn ├── end_credits ├── end_credits.gd ├── end_credits.gd.uid └── end_credits.tscn ├── loading_screen ├── loading_screen.gd ├── loading_screen.gd.uid ├── loading_screen.tscn ├── loading_screen_with_shader_caching.gd ├── loading_screen_with_shader_caching.gd.uid └── loading_screen_with_shader_caching.tscn ├── menus ├── main_menu │ ├── main_menu.gd │ ├── main_menu.gd.uid │ ├── main_menu.tscn │ ├── main_menu_with_animations.gd │ ├── main_menu_with_animations.gd.uid │ └── main_menu_with_animations.tscn └── options_menu │ ├── audio │ ├── audio_input_option_control.gd │ ├── audio_input_option_control.gd.uid │ ├── audio_input_option_control.tscn │ ├── audio_options_menu.gd │ ├── audio_options_menu.gd.uid │ └── audio_options_menu.tscn │ ├── input │ ├── input_extras_menu.tscn │ ├── input_options_menu.gd │ ├── input_options_menu.gd.uid │ ├── input_options_menu.tscn │ └── input_options_menu_with_mouse_sensitivity.tscn │ ├── master_options_menu.gd │ ├── master_options_menu.gd.uid │ ├── master_options_menu.tscn │ ├── master_options_menu_with_tabs.tscn │ ├── mini_options_menu.gd │ ├── mini_options_menu.gd.uid │ ├── mini_options_menu.tscn │ └── video │ ├── video_options_menu.gd │ ├── video_options_menu.gd.uid │ ├── video_options_menu.tscn │ └── video_options_menu_with_extras.tscn ├── opening ├── opening.gd ├── opening.gd.uid ├── opening.tscn └── opening_with_logo.tscn └── overlaid_menus ├── mini_options_overlaid_menu.tscn ├── overlaid_menu.gd ├── overlaid_menu.gd.uid ├── overlaid_menu.tscn ├── overlaid_menu_container.gd ├── overlaid_menu_container.gd.uid ├── overlaid_menu_container.tscn ├── pause_menu.gd ├── pause_menu.gd.uid └── pause_menu.tscn /.gitattributes: -------------------------------------------------------------------------------- 1 | # Normalize line endings for all files that Git considers text files. 2 | * text=auto eol=lf 3 | 4 | # Exclude github directory 5 | /.github export-ignore 6 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # Godot 4+ specific ignores 2 | .godot/ 3 | 4 | # Godot-specific ignores 5 | .import/ 6 | export.cfg 7 | export_presets.cfg 8 | 9 | # Imported translations (automatically generated from CSV files) 10 | *.translation.godot/ 11 | 12 | # Mono-specific ignores 13 | .mono/ 14 | data_*/ 15 | mono_crash.*.json 16 | 17 | # Export folders 18 | exports/ 19 | Exports/ 20 | 21 | # IDE and OS specific 22 | .idea/ 23 | .DS_Store 24 | -------------------------------------------------------------------------------- /ATTRIBUTION.md: -------------------------------------------------------------------------------- 1 | # Attribution 2 | ## Collaborators 3 | 4 | ### Godot Menus Template 5 | Author: [Marek Belski and contributors](https://github.com/Maaack/Godot-Menus-Template/graphs/contributors) 6 | Source: [github: Godot-Menus-Template](https://github.com/Maaack/Godot-Menus-Template) 7 | License: [MIT License](LICENSE.txt) 8 | 9 | ## Sourced 10 | #### Godot Engine Logo 11 | Author: Andrea Calabró 12 | Source: [godotengine.org : press](https://godotengine.org/press/) 13 | License: [CC BY 4.0 International](https://github.com/godotengine/godot/blob/master/LOGO_LICENSE.txt) 14 | 15 | ## Tools 16 | #### Godot 17 | Author: [Juan Linietsky, Ariel Manzur, and contributors](https://godotengine.org/contact) 18 | Source: [godotengine.org](https://godotengine.org/) 19 | License: [MIT License](https://github.com/godotengine/godot/blob/master/LICENSE.txt) 20 | 21 | #### Visual Studio Code 22 | Author: [Microsoft](https://opensource.microsoft.com/) 23 | Source: [github: vscode](https://github.com/microsoft/vscode) 24 | License: [MIT License](https://github.com/microsoft/vscode/blob/main/LICENSE.txt) 25 | 26 | #### Git 27 | Author: [Linus Torvalds](https://github.com/torvalds) 28 | Source: [git-scm.com](https://git-scm.com/downloads) 29 | License: [GNU General Public License version 2](https://opensource.org/licenses/GPL-2.0) 30 | -------------------------------------------------------------------------------- /LICENSE.txt: -------------------------------------------------------------------------------- 1 | Copyright (c) 2022-present Marek Belski. 2 | 3 | Permission is hereby granted, free of charge, to any person obtaining a copy 4 | of this software and associated documentation files (the "Software"), to deal 5 | in the Software without restriction, including without limitation the rights 6 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | copies of the Software, and to permit persons to whom the Software is 8 | furnished to do so, subject to the following conditions: 9 | 10 | The above copyright notice and this permission notice shall be included in all 11 | copies or substantial portions of the Software. 12 | 13 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 19 | SOFTWARE. 20 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/ATTRIBUTION.md: -------------------------------------------------------------------------------- 1 | # Attribution 2 | ## Collaborators 3 | 4 | ### Godot Menus Template 5 | Author: [Marek Belski and contributors](https://github.com/Maaack/Godot-Menus-Template/graphs/contributors) 6 | Source: [github: Godot-Menus-Template](https://github.com/Maaack/Godot-Menus-Template) 7 | License: [MIT License](LICENSE.txt) 8 | 9 | ## Sourced 10 | #### Godot Engine Logo 11 | Author: Andrea Calabró 12 | Source: [godotengine.org : press](https://godotengine.org/press/) 13 | License: [CC BY 4.0 International](https://github.com/godotengine/godot/blob/master/LOGO_LICENSE.txt) 14 | 15 | ## Tools 16 | #### Godot 17 | Author: [Juan Linietsky, Ariel Manzur, and contributors](https://godotengine.org/contact) 18 | Source: [godotengine.org](https://godotengine.org/) 19 | License: [MIT License](https://github.com/godotengine/godot/blob/master/LICENSE.txt) 20 | 21 | #### Visual Studio Code 22 | Author: [Microsoft](https://opensource.microsoft.com/) 23 | Source: [github: vscode](https://github.com/microsoft/vscode) 24 | License: [MIT License](https://github.com/microsoft/vscode/blob/main/LICENSE.txt) 25 | 26 | #### Git 27 | Author: [Linus Torvalds](https://github.com/torvalds) 28 | Source: [git-scm.com](https://git-scm.com/downloads) 29 | License: [GNU General Public License version 2](https://opensource.org/licenses/GPL-2.0) 30 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/LICENSE.txt: -------------------------------------------------------------------------------- 1 | Copyright (c) 2022-present Marek Belski. 2 | 3 | Permission is hereby granted, free of charge, to any person obtaining a copy 4 | of this software and associated documentation files (the "Software"), to deal 5 | in the Software without restriction, including without limitation the rights 6 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | copies of the Software, and to permit persons to whom the Software is 8 | furnished to do so, subject to the following conditions: 9 | 10 | The above copyright notice and this permission notice shall be included in all 11 | copies or substantial portions of the Software. 12 | 13 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 19 | SOFTWARE. 20 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/assets/input-icons/License.txt: -------------------------------------------------------------------------------- 1 | 2 | 3 | Input Prompts (1.1b) 4 | 5 | Created/distributed by Kenney (www.kenney.nl) 6 | Creation date: 26-06-2024 7 | 8 | ------------------------------ 9 | 10 | License: (Creative Commons Zero, CC0) 11 | http://creativecommons.org/publicdomain/zero/1.0/ 12 | 13 | You can use this content for personal, educational, and commercial purposes. 14 | 15 | Support by crediting 'Kenney' or 'www.kenney.nl' (this is not a requirement) 16 | 17 | ------------------------------ 18 | 19 | • Website : www.kenney.nl 20 | • Donate : www.kenney.nl/donate 21 | 22 | • Patreon : patreon.com/kenney 23 | 24 | Follow on social media for updates: 25 | 26 | • Twitter: twitter.com/KenneyNL 27 | • Instagram: instagram.com/kenney_nl 28 | • Mastodon: mastodon.gamedev.place/@kenney -------------------------------------------------------------------------------- /addons/maaacks_menus_template/assets/input-icons/icons-filled-colored-2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/addons/maaacks_menus_template/assets/input-icons/icons-filled-colored-2x.png -------------------------------------------------------------------------------- /addons/maaacks_menus_template/assets/input-icons/icons-filled-colored-2x.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="CompressedTexture2D" 5 | uid="uid://bt1yqttw3d5xn" 6 | path="res://.godot/imported/icons-filled-colored-2x.png-c9950719aa4b6e9fa0a07b10025eb715.ctex" 7 | metadata={ 8 | "vram_texture": false 9 | } 10 | 11 | [deps] 12 | 13 | source_file="res://addons/maaacks_menus_template/assets/input-icons/icons-filled-colored-2x.png" 14 | dest_files=["res://.godot/imported/icons-filled-colored-2x.png-c9950719aa4b6e9fa0a07b10025eb715.ctex"] 15 | 16 | [params] 17 | 18 | compress/mode=0 19 | compress/high_quality=false 20 | compress/lossy_quality=0.7 21 | compress/hdr_compression=1 22 | compress/normal_map=0 23 | compress/channel_pack=0 24 | mipmaps/generate=false 25 | mipmaps/limit=-1 26 | roughness/mode=0 27 | roughness/src_normal="" 28 | process/fix_alpha_border=true 29 | process/premult_alpha=false 30 | process/normal_map_invert_y=false 31 | process/hdr_as_srgb=false 32 | process/hdr_clamp_exposure=false 33 | process/size_limit=0 34 | detect_3d/compress_to=1 35 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/assets/input-icons/icons-filled-colored-vector.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/assets/input-icons/icons-filled-colored-vector.svg.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="CompressedTexture2D" 5 | uid="uid://ix1d2e62f233" 6 | path="res://.godot/imported/icons-filled-colored-vector.svg-1ef5d6c8df05e319d6d14568369b0495.ctex" 7 | metadata={ 8 | "vram_texture": false 9 | } 10 | 11 | [deps] 12 | 13 | source_file="res://addons/maaacks_menus_template/assets/input-icons/icons-filled-colored-vector.svg" 14 | dest_files=["res://.godot/imported/icons-filled-colored-vector.svg-1ef5d6c8df05e319d6d14568369b0495.ctex"] 15 | 16 | [params] 17 | 18 | compress/mode=0 19 | compress/high_quality=false 20 | compress/lossy_quality=0.7 21 | compress/hdr_compression=1 22 | compress/normal_map=0 23 | compress/channel_pack=0 24 | mipmaps/generate=false 25 | mipmaps/limit=-1 26 | roughness/mode=0 27 | roughness/src_normal="" 28 | process/fix_alpha_border=true 29 | process/premult_alpha=false 30 | process/normal_map_invert_y=false 31 | process/hdr_as_srgb=false 32 | process/hdr_clamp_exposure=false 33 | process/size_limit=0 34 | detect_3d/compress_to=1 35 | svg/scale=1.0 36 | editor/scale_with_editor_scale=false 37 | editor/convert_colors_with_editor_theme=false 38 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/assets/input-icons/icons-filled-colored.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/addons/maaacks_menus_template/assets/input-icons/icons-filled-colored.png -------------------------------------------------------------------------------- /addons/maaacks_menus_template/assets/input-icons/icons-filled-colored.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="CompressedTexture2D" 5 | uid="uid://cmni5hv40bfaa" 6 | path="res://.godot/imported/icons-filled-colored.png-f28e960097ff6bcffdd3b3d8656306ef.ctex" 7 | metadata={ 8 | "vram_texture": false 9 | } 10 | 11 | [deps] 12 | 13 | source_file="res://addons/maaacks_menus_template/assets/input-icons/icons-filled-colored.png" 14 | dest_files=["res://.godot/imported/icons-filled-colored.png-f28e960097ff6bcffdd3b3d8656306ef.ctex"] 15 | 16 | [params] 17 | 18 | compress/mode=0 19 | compress/high_quality=false 20 | compress/lossy_quality=0.7 21 | compress/hdr_compression=1 22 | compress/normal_map=0 23 | compress/channel_pack=0 24 | mipmaps/generate=false 25 | mipmaps/limit=-1 26 | roughness/mode=0 27 | roughness/src_normal="" 28 | process/fix_alpha_border=true 29 | process/premult_alpha=false 30 | process/normal_map_invert_y=false 31 | process/hdr_as_srgb=false 32 | process/hdr_clamp_exposure=false 33 | process/size_limit=0 34 | detect_3d/compress_to=1 35 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/assets/input-icons/icons-filled-white-2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/addons/maaacks_menus_template/assets/input-icons/icons-filled-white-2x.png -------------------------------------------------------------------------------- /addons/maaacks_menus_template/assets/input-icons/icons-filled-white-2x.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="CompressedTexture2D" 5 | uid="uid://bit8o3p506th6" 6 | path="res://.godot/imported/icons-filled-white-2x.png-7266d9974cb75469dd49a6e4de6b2eaf.ctex" 7 | metadata={ 8 | "vram_texture": false 9 | } 10 | 11 | [deps] 12 | 13 | source_file="res://addons/maaacks_menus_template/assets/input-icons/icons-filled-white-2x.png" 14 | dest_files=["res://.godot/imported/icons-filled-white-2x.png-7266d9974cb75469dd49a6e4de6b2eaf.ctex"] 15 | 16 | [params] 17 | 18 | compress/mode=0 19 | compress/high_quality=false 20 | compress/lossy_quality=0.7 21 | compress/hdr_compression=1 22 | compress/normal_map=0 23 | compress/channel_pack=0 24 | mipmaps/generate=false 25 | mipmaps/limit=-1 26 | roughness/mode=0 27 | roughness/src_normal="" 28 | process/fix_alpha_border=true 29 | process/premult_alpha=false 30 | process/normal_map_invert_y=false 31 | process/hdr_as_srgb=false 32 | process/hdr_clamp_exposure=false 33 | process/size_limit=0 34 | detect_3d/compress_to=1 35 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/assets/input-icons/icons-filled-white-vector.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/assets/input-icons/icons-filled-white-vector.svg.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="CompressedTexture2D" 5 | uid="uid://c37gofthe2bh3" 6 | path="res://.godot/imported/icons-filled-white-vector.svg-af17fdef281e2d7e46656a1eea5243e3.ctex" 7 | metadata={ 8 | "vram_texture": false 9 | } 10 | 11 | [deps] 12 | 13 | source_file="res://addons/maaacks_menus_template/assets/input-icons/icons-filled-white-vector.svg" 14 | dest_files=["res://.godot/imported/icons-filled-white-vector.svg-af17fdef281e2d7e46656a1eea5243e3.ctex"] 15 | 16 | [params] 17 | 18 | compress/mode=0 19 | compress/high_quality=false 20 | compress/lossy_quality=0.7 21 | compress/hdr_compression=1 22 | compress/normal_map=0 23 | compress/channel_pack=0 24 | mipmaps/generate=false 25 | mipmaps/limit=-1 26 | roughness/mode=0 27 | roughness/src_normal="" 28 | process/fix_alpha_border=true 29 | process/premult_alpha=false 30 | process/normal_map_invert_y=false 31 | process/hdr_as_srgb=false 32 | process/hdr_clamp_exposure=false 33 | process/size_limit=0 34 | detect_3d/compress_to=1 35 | svg/scale=1.0 36 | editor/scale_with_editor_scale=false 37 | editor/convert_colors_with_editor_theme=false 38 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/assets/input-icons/icons-filled-white.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/addons/maaacks_menus_template/assets/input-icons/icons-filled-white.png -------------------------------------------------------------------------------- /addons/maaacks_menus_template/assets/input-icons/icons-filled-white.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="CompressedTexture2D" 5 | uid="uid://deskx061vlcgx" 6 | path="res://.godot/imported/icons-filled-white.png-82756b68275bad47a01374037759a5b3.ctex" 7 | metadata={ 8 | "vram_texture": false 9 | } 10 | 11 | [deps] 12 | 13 | source_file="res://addons/maaacks_menus_template/assets/input-icons/icons-filled-white.png" 14 | dest_files=["res://.godot/imported/icons-filled-white.png-82756b68275bad47a01374037759a5b3.ctex"] 15 | 16 | [params] 17 | 18 | compress/mode=0 19 | compress/high_quality=false 20 | compress/lossy_quality=0.7 21 | compress/hdr_compression=1 22 | compress/normal_map=0 23 | compress/channel_pack=0 24 | mipmaps/generate=false 25 | mipmaps/limit=-1 26 | roughness/mode=0 27 | roughness/src_normal="" 28 | process/fix_alpha_border=true 29 | process/premult_alpha=false 30 | process/normal_map_invert_y=false 31 | process/hdr_as_srgb=false 32 | process/hdr_clamp_exposure=false 33 | process/size_limit=0 34 | detect_3d/compress_to=1 35 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/assets/input-icons/icons-outlined-colored-2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/addons/maaacks_menus_template/assets/input-icons/icons-outlined-colored-2x.png -------------------------------------------------------------------------------- /addons/maaacks_menus_template/assets/input-icons/icons-outlined-colored-2x.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="CompressedTexture2D" 5 | uid="uid://cqb86gp1gh3y8" 6 | path="res://.godot/imported/icons-outlined-colored-2x.png-301db7969004486648144245676d1fc0.ctex" 7 | metadata={ 8 | "vram_texture": false 9 | } 10 | 11 | [deps] 12 | 13 | source_file="res://addons/maaacks_menus_template/assets/input-icons/icons-outlined-colored-2x.png" 14 | dest_files=["res://.godot/imported/icons-outlined-colored-2x.png-301db7969004486648144245676d1fc0.ctex"] 15 | 16 | [params] 17 | 18 | compress/mode=0 19 | compress/high_quality=false 20 | compress/lossy_quality=0.7 21 | compress/hdr_compression=1 22 | compress/normal_map=0 23 | compress/channel_pack=0 24 | mipmaps/generate=false 25 | mipmaps/limit=-1 26 | roughness/mode=0 27 | roughness/src_normal="" 28 | process/fix_alpha_border=true 29 | process/premult_alpha=false 30 | process/normal_map_invert_y=false 31 | process/hdr_as_srgb=false 32 | process/hdr_clamp_exposure=false 33 | process/size_limit=0 34 | detect_3d/compress_to=1 35 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/assets/input-icons/icons-outlined-colored-vector.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/assets/input-icons/icons-outlined-colored-vector.svg.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="CompressedTexture2D" 5 | uid="uid://bsgf78aysgdnd" 6 | path="res://.godot/imported/icons-outlined-colored-vector.svg-f9889d54d4e268bcaf276818401d867b.ctex" 7 | metadata={ 8 | "vram_texture": false 9 | } 10 | 11 | [deps] 12 | 13 | source_file="res://addons/maaacks_menus_template/assets/input-icons/icons-outlined-colored-vector.svg" 14 | dest_files=["res://.godot/imported/icons-outlined-colored-vector.svg-f9889d54d4e268bcaf276818401d867b.ctex"] 15 | 16 | [params] 17 | 18 | compress/mode=0 19 | compress/high_quality=false 20 | compress/lossy_quality=0.7 21 | compress/hdr_compression=1 22 | compress/normal_map=0 23 | compress/channel_pack=0 24 | mipmaps/generate=false 25 | mipmaps/limit=-1 26 | roughness/mode=0 27 | roughness/src_normal="" 28 | process/fix_alpha_border=true 29 | process/premult_alpha=false 30 | process/normal_map_invert_y=false 31 | process/hdr_as_srgb=false 32 | process/hdr_clamp_exposure=false 33 | process/size_limit=0 34 | detect_3d/compress_to=1 35 | svg/scale=1.0 36 | editor/scale_with_editor_scale=false 37 | editor/convert_colors_with_editor_theme=false 38 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/assets/input-icons/icons-outlined-colored.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/addons/maaacks_menus_template/assets/input-icons/icons-outlined-colored.png -------------------------------------------------------------------------------- /addons/maaacks_menus_template/assets/input-icons/icons-outlined-colored.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="CompressedTexture2D" 5 | uid="uid://bohem6w6kcl3x" 6 | path="res://.godot/imported/icons-outlined-colored.png-95929c2c5149ccac68b0821f3d5ad423.ctex" 7 | metadata={ 8 | "vram_texture": false 9 | } 10 | 11 | [deps] 12 | 13 | source_file="res://addons/maaacks_menus_template/assets/input-icons/icons-outlined-colored.png" 14 | dest_files=["res://.godot/imported/icons-outlined-colored.png-95929c2c5149ccac68b0821f3d5ad423.ctex"] 15 | 16 | [params] 17 | 18 | compress/mode=0 19 | compress/high_quality=false 20 | compress/lossy_quality=0.7 21 | compress/hdr_compression=1 22 | compress/normal_map=0 23 | compress/channel_pack=0 24 | mipmaps/generate=false 25 | mipmaps/limit=-1 26 | roughness/mode=0 27 | roughness/src_normal="" 28 | process/fix_alpha_border=true 29 | process/premult_alpha=false 30 | process/normal_map_invert_y=false 31 | process/hdr_as_srgb=false 32 | process/hdr_clamp_exposure=false 33 | process/size_limit=0 34 | detect_3d/compress_to=1 35 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/assets/input-icons/icons-outlined-white-2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/addons/maaacks_menus_template/assets/input-icons/icons-outlined-white-2x.png -------------------------------------------------------------------------------- /addons/maaacks_menus_template/assets/input-icons/icons-outlined-white-2x.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="CompressedTexture2D" 5 | uid="uid://d3bsc6o2ae88q" 6 | path="res://.godot/imported/icons-outlined-white-2x.png-1d98f87b45a8ba37a96bfea1434cb7c6.ctex" 7 | metadata={ 8 | "vram_texture": false 9 | } 10 | 11 | [deps] 12 | 13 | source_file="res://addons/maaacks_menus_template/assets/input-icons/icons-outlined-white-2x.png" 14 | dest_files=["res://.godot/imported/icons-outlined-white-2x.png-1d98f87b45a8ba37a96bfea1434cb7c6.ctex"] 15 | 16 | [params] 17 | 18 | compress/mode=0 19 | compress/high_quality=false 20 | compress/lossy_quality=0.7 21 | compress/hdr_compression=1 22 | compress/normal_map=0 23 | compress/channel_pack=0 24 | mipmaps/generate=false 25 | mipmaps/limit=-1 26 | roughness/mode=0 27 | roughness/src_normal="" 28 | process/fix_alpha_border=true 29 | process/premult_alpha=false 30 | process/normal_map_invert_y=false 31 | process/hdr_as_srgb=false 32 | process/hdr_clamp_exposure=false 33 | process/size_limit=0 34 | detect_3d/compress_to=1 35 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/assets/input-icons/icons-outlined-white-vector.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/assets/input-icons/icons-outlined-white-vector.svg.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="CompressedTexture2D" 5 | uid="uid://c1lpc33fpmd4p" 6 | path="res://.godot/imported/icons-outlined-white-vector.svg-0a1a99c43f123270fa6e7a031ca02383.ctex" 7 | metadata={ 8 | "vram_texture": false 9 | } 10 | 11 | [deps] 12 | 13 | source_file="res://addons/maaacks_menus_template/assets/input-icons/icons-outlined-white-vector.svg" 14 | dest_files=["res://.godot/imported/icons-outlined-white-vector.svg-0a1a99c43f123270fa6e7a031ca02383.ctex"] 15 | 16 | [params] 17 | 18 | compress/mode=0 19 | compress/high_quality=false 20 | compress/lossy_quality=0.7 21 | compress/hdr_compression=1 22 | compress/normal_map=0 23 | compress/channel_pack=0 24 | mipmaps/generate=false 25 | mipmaps/limit=-1 26 | roughness/mode=0 27 | roughness/src_normal="" 28 | process/fix_alpha_border=true 29 | process/premult_alpha=false 30 | process/normal_map_invert_y=false 31 | process/hdr_as_srgb=false 32 | process/hdr_clamp_exposure=false 33 | process/size_limit=0 34 | detect_3d/compress_to=1 35 | svg/scale=1.0 36 | editor/scale_with_editor_scale=false 37 | editor/convert_colors_with_editor_theme=false 38 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/assets/input-icons/icons-outlined-white.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/addons/maaacks_menus_template/assets/input-icons/icons-outlined-white.png -------------------------------------------------------------------------------- /addons/maaacks_menus_template/assets/input-icons/icons-outlined-white.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="CompressedTexture2D" 5 | uid="uid://bq211jkfnm7k7" 6 | path="res://.godot/imported/icons-outlined-white.png-9333f76640a28e5b1d74db82ecd1d491.ctex" 7 | metadata={ 8 | "vram_texture": false 9 | } 10 | 11 | [deps] 12 | 13 | source_file="res://addons/maaacks_menus_template/assets/input-icons/icons-outlined-white.png" 14 | dest_files=["res://.godot/imported/icons-outlined-white.png-9333f76640a28e5b1d74db82ecd1d491.ctex"] 15 | 16 | [params] 17 | 18 | compress/mode=0 19 | compress/high_quality=false 20 | compress/lossy_quality=0.7 21 | compress/hdr_compression=1 22 | compress/normal_map=0 23 | compress/channel_pack=0 24 | mipmaps/generate=false 25 | mipmaps/limit=-1 26 | roughness/mode=0 27 | roughness/src_normal="" 28 | process/fix_alpha_border=true 29 | process/premult_alpha=false 30 | process/normal_map_invert_y=false 31 | process/hdr_as_srgb=false 32 | process/hdr_clamp_exposure=false 33 | process/size_limit=0 34 | detect_3d/compress_to=1 35 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/base/assets/remapping_input_icons/LICENSE.txt: -------------------------------------------------------------------------------- 1 | Remapping input icons by Marek Belski is marked with CC0 1.0. To view a copy of this license, visit https://creativecommons.org/publicdomain/zero/1.0/ -------------------------------------------------------------------------------- /addons/maaacks_menus_template/base/assets/remapping_input_icons/addition_symbol.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/addons/maaacks_menus_template/base/assets/remapping_input_icons/addition_symbol.png -------------------------------------------------------------------------------- /addons/maaacks_menus_template/base/assets/remapping_input_icons/addition_symbol.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="CompressedTexture2D" 5 | uid="uid://c1eqf1cse1hch" 6 | path="res://.godot/imported/addition_symbol.png-a6efc1568e039eb98c2861ed8493d258.ctex" 7 | metadata={ 8 | "vram_texture": false 9 | } 10 | 11 | [deps] 12 | 13 | source_file="res://addons/maaacks_menus_template/base/assets/remapping_input_icons/addition_symbol.png" 14 | dest_files=["res://.godot/imported/addition_symbol.png-a6efc1568e039eb98c2861ed8493d258.ctex"] 15 | 16 | [params] 17 | 18 | compress/mode=0 19 | compress/high_quality=false 20 | compress/lossy_quality=0.7 21 | compress/hdr_compression=1 22 | compress/normal_map=0 23 | compress/channel_pack=0 24 | mipmaps/generate=false 25 | mipmaps/limit=-1 26 | roughness/mode=0 27 | roughness/src_normal="" 28 | process/fix_alpha_border=true 29 | process/premult_alpha=false 30 | process/normal_map_invert_y=false 31 | process/hdr_as_srgb=false 32 | process/hdr_clamp_exposure=false 33 | process/size_limit=0 34 | detect_3d/compress_to=1 35 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/base/assets/remapping_input_icons/subtraction_symbol.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/addons/maaacks_menus_template/base/assets/remapping_input_icons/subtraction_symbol.png -------------------------------------------------------------------------------- /addons/maaacks_menus_template/base/assets/remapping_input_icons/subtraction_symbol.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="CompressedTexture2D" 5 | uid="uid://bteq3ica74h30" 6 | path="res://.godot/imported/subtraction_symbol.png-ce800600281c4f951ef82cbba15dc400.ctex" 7 | metadata={ 8 | "vram_texture": false 9 | } 10 | 11 | [deps] 12 | 13 | source_file="res://addons/maaacks_menus_template/base/assets/remapping_input_icons/subtraction_symbol.png" 14 | dest_files=["res://.godot/imported/subtraction_symbol.png-ce800600281c4f951ef82cbba15dc400.ctex"] 15 | 16 | [params] 17 | 18 | compress/mode=0 19 | compress/high_quality=false 20 | compress/lossy_quality=0.7 21 | compress/hdr_compression=1 22 | compress/normal_map=0 23 | compress/channel_pack=0 24 | mipmaps/generate=false 25 | mipmaps/limit=-1 26 | roughness/mode=0 27 | roughness/src_normal="" 28 | process/fix_alpha_border=true 29 | process/premult_alpha=false 30 | process/normal_map_invert_y=false 31 | process/hdr_as_srgb=false 32 | process/hdr_clamp_exposure=false 33 | process/size_limit=0 34 | detect_3d/compress_to=1 35 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/base/scenes/autoloads/app_config.gd: -------------------------------------------------------------------------------- 1 | extends Node 2 | 3 | func _ready() -> void: 4 | AppSettings.set_from_config_and_window(get_window()) 5 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/base/scenes/autoloads/app_config.gd.uid: -------------------------------------------------------------------------------- 1 | uid://cno5ujal5t3kf 2 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/base/scenes/autoloads/app_config.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=2 format=3 uid="uid://cjke6crjg14a0"] 2 | 3 | [ext_resource type="Script" uid="uid://cno5ujal5t3kf" path="res://addons/maaacks_menus_template/base/scenes/autoloads/app_config.gd" id="1_o0k5w"] 4 | 5 | [node name="AppConfig" type="Node"] 6 | script = ExtResource("1_o0k5w") 7 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/base/scenes/autoloads/project_music_controller.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=2 format=3 uid="uid://r5t485lr3p7t"] 2 | 3 | [ext_resource type="Script" uid="uid://ctrh4qyxqncss" path="res://addons/maaacks_menus_template/base/scripts/music_controller.gd" id="1_wbudo"] 4 | 5 | [node name="ProjectMusicController" type="Node"] 6 | process_mode = 3 7 | script = ExtResource("1_wbudo") 8 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/base/scenes/autoloads/project_ui_sound_controller.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=2 format=3 uid="uid://cc37235kj4384"] 2 | 3 | [ext_resource type="Script" uid="uid://b5oej1q4h7jvh" path="res://addons/maaacks_menus_template/base/scripts/ui_sound_controller.gd" id="1_dmagn"] 4 | 5 | [node name="ProjectUISoundController" type="Node"] 6 | script = ExtResource("1_dmagn") 7 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/base/scenes/autoloads/scene_loader.gd.uid: -------------------------------------------------------------------------------- 1 | uid://cxrcy0evb0j3l 2 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/base/scenes/autoloads/scene_loader.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=2 format=3 uid="uid://cbwmrnp0af35y"] 2 | 3 | [ext_resource type="Script" uid="uid://cxrcy0evb0j3l" path="res://addons/maaacks_menus_template/base/scenes/autoloads/scene_loader.gd" id="1_l0dhx"] 4 | 5 | [node name="SceneLoader" type="Node"] 6 | script = ExtResource("1_l0dhx") 7 | loading_screen_path = "res://addons/maaacks_menus_template/base/scenes/loading_screen/loading_screen.tscn" 8 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/base/scenes/credits/credits.gd.uid: -------------------------------------------------------------------------------- 1 | uid://bnub0cq2y0deh 2 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/base/scenes/credits/credits.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=2 format=3 uid="uid://t2dui8ppm3a4"] 2 | 3 | [ext_resource type="Script" uid="uid://bnub0cq2y0deh" path="res://addons/maaacks_menus_template/base/scenes/credits/credits.gd" id="4"] 4 | 5 | [node name="Credits" type="Control"] 6 | layout_mode = 3 7 | anchors_preset = 15 8 | anchor_right = 1.0 9 | anchor_bottom = 1.0 10 | grow_horizontal = 2 11 | grow_vertical = 2 12 | script = ExtResource("4") 13 | attribution_file_path = "" 14 | h1_font_size = 64 15 | h2_font_size = 48 16 | h3_font_size = 32 17 | h4_font_size = 24 18 | 19 | [node name="ScrollContainer" type="ScrollContainer" parent="."] 20 | layout_mode = 0 21 | anchor_right = 1.0 22 | anchor_bottom = 1.0 23 | scroll_vertical = 100 24 | horizontal_scroll_mode = 0 25 | vertical_scroll_mode = 3 26 | 27 | [node name="VBoxContainer" type="VBoxContainer" parent="ScrollContainer"] 28 | layout_mode = 2 29 | size_flags_horizontal = 3 30 | 31 | [node name="HeaderSpace" type="Control" parent="ScrollContainer/VBoxContainer"] 32 | unique_name_in_owner = true 33 | custom_minimum_size = Vector2(0, 720) 34 | layout_mode = 2 35 | 36 | [node name="CreditsLabel" type="RichTextLabel" parent="ScrollContainer/VBoxContainer"] 37 | unique_name_in_owner = true 38 | custom_minimum_size = Vector2(1280, 0) 39 | layout_mode = 2 40 | size_flags_horizontal = 3 41 | size_flags_vertical = 5 42 | bbcode_enabled = true 43 | fit_content = true 44 | scroll_active = false 45 | 46 | [node name="FooterSpace" type="Control" parent="ScrollContainer/VBoxContainer"] 47 | unique_name_in_owner = true 48 | custom_minimum_size = Vector2(0, 720) 49 | layout_mode = 2 50 | 51 | [node name="ScrollResetTimer" type="Timer" parent="."] 52 | wait_time = 1.5 53 | one_shot = true 54 | 55 | [connection signal="gui_input" from="ScrollContainer" to="." method="_on_scroll_container_gui_input"] 56 | [connection signal="resized" from="ScrollContainer" to="." method="_on_scroll_container_resized"] 57 | [connection signal="scroll_started" from="ScrollContainer" to="." method="_on_scroll_container_scroll_started"] 58 | [connection signal="meta_clicked" from="ScrollContainer/VBoxContainer/CreditsLabel" to="." method="_on_CreditsLabel_meta_clicked"] 59 | [connection signal="timeout" from="ScrollResetTimer" to="." method="_on_scroll_reset_timer_timeout"] 60 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/base/scenes/loading_screen/loading_screen.gd.uid: -------------------------------------------------------------------------------- 1 | uid://dgeewyjjpk4qn 2 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/base/scenes/menus/main_menu/config_name_label.gd: -------------------------------------------------------------------------------- 1 | @tool 2 | extends Label 3 | class_name ConfigNameLabel 4 | ## Displays the value of `application/config/name`, set in project settings. 5 | 6 | const NO_NAME_STRING : String = "Title" 7 | 8 | @export var lock : bool = false 9 | 10 | func update_name_label(): 11 | if lock: return 12 | var config_name : String = ProjectSettings.get_setting("application/config/name", NO_NAME_STRING) 13 | if config_name.is_empty(): 14 | config_name = NO_NAME_STRING 15 | text = config_name 16 | 17 | func _ready(): 18 | update_name_label() 19 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/base/scenes/menus/main_menu/config_name_label.gd.uid: -------------------------------------------------------------------------------- 1 | uid://bkwlopi4qn32o 2 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/base/scenes/menus/main_menu/config_version_label.gd: -------------------------------------------------------------------------------- 1 | @tool 2 | extends Label 3 | class_name ConfigVersionLabel 4 | ## Displays the value of `application/config/version`, set in project settings. 5 | 6 | const NO_VERSION_STRING : String = "0.0.0" 7 | 8 | ## Prefixes the value of `application/config/version` when displaying to the user. 9 | @export var version_prefix : String = "v" 10 | 11 | func update_version_label() -> void: 12 | var config_version : String = ProjectSettings.get_setting("application/config/version", NO_VERSION_STRING) 13 | if config_version.is_empty(): 14 | config_version = NO_VERSION_STRING 15 | text = version_prefix + config_version 16 | 17 | func _ready() -> void: 18 | update_version_label() 19 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/base/scenes/menus/main_menu/config_version_label.gd.uid: -------------------------------------------------------------------------------- 1 | uid://dmkubt2nsnsbn 2 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/base/scenes/menus/main_menu/main_menu.gd.uid: -------------------------------------------------------------------------------- 1 | uid://bhgs1upaahk3y 2 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/base/scenes/menus/options_menu/audio/audio_options_menu.gd: -------------------------------------------------------------------------------- 1 | class_name AudioOptionsMenu 2 | extends Control 3 | 4 | @export var audio_control_scene : PackedScene 5 | @export var hide_busses : Array[String] 6 | 7 | @onready var mute_control = %MuteControl 8 | 9 | func _on_bus_changed(bus_value : float, bus_iter : int) -> void: 10 | AppSettings.set_bus_volume(bus_iter, bus_value) 11 | 12 | func _add_audio_control(bus_name : String, bus_value : float, bus_iter : int) -> void: 13 | if audio_control_scene == null or bus_name in hide_busses or bus_name.begins_with(AppSettings.SYSTEM_BUS_NAME_PREFIX): 14 | return 15 | var audio_control = audio_control_scene.instantiate() 16 | %AudioControlContainer.call_deferred("add_child", audio_control) 17 | if audio_control is OptionControl: 18 | audio_control.option_section = OptionControl.OptionSections.AUDIO 19 | audio_control.option_name = bus_name 20 | audio_control.value = bus_value 21 | audio_control.connect("setting_changed", _on_bus_changed.bind(bus_iter)) 22 | 23 | func _add_audio_bus_controls() -> void: 24 | for bus_iter in AudioServer.bus_count: 25 | var bus_name : String = AppSettings.get_audio_bus_name(bus_iter) 26 | var linear : float = AppSettings.get_bus_volume(bus_iter) 27 | _add_audio_control(bus_name, linear, bus_iter) 28 | 29 | func _update_ui() -> void: 30 | _add_audio_bus_controls() 31 | mute_control.value = AppSettings.is_muted() 32 | 33 | func _ready() -> void: 34 | _update_ui() 35 | 36 | func _on_mute_control_setting_changed(value : bool) -> void: 37 | AppSettings.set_mute(value) 38 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/base/scenes/menus/options_menu/audio/audio_options_menu.gd.uid: -------------------------------------------------------------------------------- 1 | uid://bwugqn2cjr41e 2 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/base/scenes/menus/options_menu/audio/audio_options_menu.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=5 format=3 uid="uid://c8vnncjwqcpab"] 2 | 3 | [ext_resource type="Script" uid="uid://bwugqn2cjr41e" path="res://addons/maaacks_menus_template/base/scenes/menus/options_menu/audio/audio_options_menu.gd" id="1"] 4 | [ext_resource type="PackedScene" uid="uid://cl416gdb1fgwr" path="res://addons/maaacks_menus_template/base/scenes/menus/options_menu/option_control/slider_option_control.tscn" id="2_raehj"] 5 | [ext_resource type="Script" uid="uid://1nf36h0gms3q" path="res://addons/maaacks_menus_template/base/scripts/capture_focus.gd" id="3_dtraq"] 6 | [ext_resource type="PackedScene" uid="uid://bsxh6v7j0257h" path="res://addons/maaacks_menus_template/base/scenes/menus/options_menu/option_control/toggle_option_control.tscn" id="4_ojfec"] 7 | 8 | [node name="Audio" type="MarginContainer"] 9 | custom_minimum_size = Vector2(305, 0) 10 | anchors_preset = 15 11 | anchor_right = 1.0 12 | anchor_bottom = 1.0 13 | grow_horizontal = 2 14 | grow_vertical = 2 15 | theme_override_constants/margin_top = 24 16 | theme_override_constants/margin_bottom = 24 17 | script = ExtResource("1") 18 | audio_control_scene = ExtResource("2_raehj") 19 | 20 | [node name="VBoxContainer" type="VBoxContainer" parent="."] 21 | custom_minimum_size = Vector2(400, 0) 22 | layout_mode = 2 23 | size_flags_horizontal = 4 24 | theme_override_constants/separation = 8 25 | alignment = 1 26 | script = ExtResource("3_dtraq") 27 | search_depth = 3 28 | 29 | [node name="AudioControlContainer" type="VBoxContainer" parent="VBoxContainer"] 30 | unique_name_in_owner = true 31 | layout_mode = 2 32 | theme_override_constants/separation = 8 33 | 34 | [node name="MuteControl" parent="VBoxContainer" instance=ExtResource("4_ojfec")] 35 | unique_name_in_owner = true 36 | layout_mode = 2 37 | option_name = "Mute" 38 | option_section = 2 39 | key = "Mute" 40 | section = "AudioSettings" 41 | 42 | [connection signal="setting_changed" from="VBoxContainer/MuteControl" to="." method="_on_mute_control_setting_changed"] 43 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/base/scenes/menus/options_menu/input/input_actions_list.gd.uid: -------------------------------------------------------------------------------- 1 | uid://b3q5fgjev8gyo 2 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/base/scenes/menus/options_menu/input/input_actions_list.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=2 format=3 uid="uid://bxp45814v6ydv"] 2 | 3 | [ext_resource type="Script" uid="uid://b3q5fgjev8gyo" path="res://addons/maaacks_menus_template/base/scenes/menus/options_menu/input/input_actions_list.gd" id="1_cxorh"] 4 | 5 | [node name="InputActionsList" type="ScrollContainer"] 6 | custom_minimum_size = Vector2(560, 240) 7 | anchors_preset = 15 8 | anchor_right = 1.0 9 | anchor_bottom = 1.0 10 | grow_horizontal = 2 11 | grow_vertical = 2 12 | size_flags_horizontal = 3 13 | size_flags_vertical = 3 14 | follow_focus = true 15 | script = ExtResource("1_cxorh") 16 | action_groups = 3 17 | action_group_names = Array[String](["Primary", "Secondary", "Tertiary", "Quaternary", "Quinary"]) 18 | input_action_names = Array[StringName]([&"move_forward", &"move_backward", &"move_up", &"move_down", &"move_left", &"move_right", &"interact"]) 19 | readable_action_names = Array[String](["Move Forward", "Move Backward", "Move Up", "Move Down", "Move Left", "Move Right", "Interact"]) 20 | action_name_map = { 21 | "interact": "Interact", 22 | "move_backward": "Move Backward", 23 | "move_down": "Move Down", 24 | "move_forward": "Move Forward", 25 | "move_left": "Move Left", 26 | "move_right": "Move Right", 27 | "move_up": "Move Up" 28 | } 29 | 30 | [node name="ParentBoxContainer" type="BoxContainer" parent="."] 31 | unique_name_in_owner = true 32 | layout_mode = 2 33 | size_flags_horizontal = 3 34 | size_flags_vertical = 3 35 | vertical = true 36 | 37 | [node name="ActionBoxContainer" type="BoxContainer" parent="ParentBoxContainer"] 38 | unique_name_in_owner = true 39 | visible = false 40 | layout_mode = 2 41 | size_flags_vertical = 3 42 | 43 | [node name="ActionNameLabel" type="Label" parent="ParentBoxContainer/ActionBoxContainer"] 44 | custom_minimum_size = Vector2(150, 0) 45 | layout_mode = 2 46 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/base/scenes/menus/options_menu/input/input_actions_tree.gd.uid: -------------------------------------------------------------------------------- 1 | uid://bp7d2e5djo2tp 2 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/base/scenes/menus/options_menu/input/input_actions_tree.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=4 format=3 uid="uid://ci6wgl2ngd35n"] 2 | 3 | [ext_resource type="Script" uid="uid://bp7d2e5djo2tp" path="res://addons/maaacks_menus_template/base/scenes/menus/options_menu/input/input_actions_tree.gd" id="1_o33o4"] 4 | [ext_resource type="Texture2D" uid="uid://c1eqf1cse1hch" path="res://addons/maaacks_menus_template/base/assets/remapping_input_icons/addition_symbol.png" id="2_ppi0j"] 5 | [ext_resource type="Texture2D" uid="uid://bteq3ica74h30" path="res://addons/maaacks_menus_template/base/assets/remapping_input_icons/subtraction_symbol.png" id="3_hb3xh"] 6 | 7 | [node name="InputActionsTree" type="Tree"] 8 | custom_minimum_size = Vector2(400, 240) 9 | size_flags_vertical = 3 10 | hide_root = true 11 | script = ExtResource("1_o33o4") 12 | input_action_names = Array[StringName]([&"move_forward", &"move_backward", &"move_up", &"move_down", &"move_left", &"move_right", &"interact"]) 13 | readable_action_names = Array[String](["Move Forward", "Move Backward", "Move Up", "Move Down", "Move Left", "Move Right", "Interact"]) 14 | add_button_texture = ExtResource("2_ppi0j") 15 | remove_button_texture = ExtResource("3_hb3xh") 16 | action_name_map = { 17 | "interact": "Interact", 18 | "move_backward": "Move Backward", 19 | "move_down": "Move Down", 20 | "move_forward": "Move Forward", 21 | "move_left": "Move Left", 22 | "move_right": "Move Right", 23 | "move_up": "Move Up" 24 | } 25 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/base/scenes/menus/options_menu/input/input_icon_mapper.gd.uid: -------------------------------------------------------------------------------- 1 | uid://cqigj1uumknrp 2 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/base/scenes/menus/options_menu/input/input_icon_mapper.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=2 format=3 uid="uid://qoexj4ptqt8a"] 2 | 3 | [ext_resource type="Script" uid="uid://cqigj1uumknrp" path="res://addons/maaacks_menus_template/base/scenes/menus/options_menu/input/input_icon_mapper.gd" id="1_msrpt"] 4 | 5 | [node name="InputIconMapper" type="Node"] 6 | script = ExtResource("1_msrpt") 7 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/base/scenes/menus/options_menu/input/input_options_menu.gd.uid: -------------------------------------------------------------------------------- 1 | uid://eborw7q4b07h 2 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/base/scenes/menus/options_menu/input/key_assignment_dialog.gd.uid: -------------------------------------------------------------------------------- 1 | uid://custha7r0uoic 2 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/base/scenes/menus/options_menu/master_options_menu.gd: -------------------------------------------------------------------------------- 1 | class_name MasterOptionsMenu 2 | extends Control 3 | 4 | func _unhandled_input(event : InputEvent) -> void: 5 | if not is_visible_in_tree(): 6 | return 7 | if event.is_action_pressed("ui_page_down"): 8 | $TabContainer.current_tab = ($TabContainer.current_tab+1) % $TabContainer.get_tab_count() 9 | elif event.is_action_pressed("ui_page_up"): 10 | if $TabContainer.current_tab == 0: 11 | $TabContainer.current_tab = $TabContainer.get_tab_count()-1 12 | else: 13 | $TabContainer.current_tab = $TabContainer.current_tab-1 14 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/base/scenes/menus/options_menu/master_options_menu.gd.uid: -------------------------------------------------------------------------------- 1 | uid://c3mignmhuvvq4 2 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/base/scenes/menus/options_menu/master_options_menu.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=2 format=3 uid="uid://bvwl11s2p0hd"] 2 | 3 | [ext_resource type="Script" uid="uid://c3mignmhuvvq4" path="res://addons/maaacks_menus_template/base/scenes/menus/options_menu/master_options_menu.gd" id="1_u08d5"] 4 | 5 | [node name="MasterOptionsMenu" type="Control"] 6 | layout_mode = 3 7 | anchors_preset = 15 8 | anchor_right = 1.0 9 | anchor_bottom = 1.0 10 | grow_horizontal = 2 11 | grow_vertical = 2 12 | size_flags_horizontal = 3 13 | size_flags_vertical = 3 14 | script = ExtResource("1_u08d5") 15 | 16 | [node name="TabContainer" type="TabContainer" parent="."] 17 | layout_mode = 1 18 | anchors_preset = 15 19 | anchor_right = 1.0 20 | anchor_bottom = 1.0 21 | grow_horizontal = 2 22 | grow_vertical = 2 23 | tab_alignment = 1 24 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/base/scenes/menus/options_menu/master_options_menu_with_tabs.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=5 format=3 uid="uid://hmx6o472ropw"] 2 | 3 | [ext_resource type="PackedScene" uid="uid://bvwl11s2p0hd" path="res://addons/maaacks_menus_template/base/scenes/menus/options_menu/master_options_menu.tscn" id="1_uaidt"] 4 | [ext_resource type="PackedScene" uid="uid://dp3rgqaehb3xu" path="res://addons/maaacks_menus_template/base/scenes/menus/options_menu/input/input_options_menu.tscn" id="2_15wl6"] 5 | [ext_resource type="PackedScene" uid="uid://c8vnncjwqcpab" path="res://addons/maaacks_menus_template/base/scenes/menus/options_menu/audio/audio_options_menu.tscn" id="3_qg4me"] 6 | [ext_resource type="PackedScene" uid="uid://b2numvphf2kau" path="res://addons/maaacks_menus_template/base/scenes/menus/options_menu/video/video_options_menu.tscn" id="4_1t848"] 7 | 8 | [node name="MasterOptionsMenu" instance=ExtResource("1_uaidt")] 9 | 10 | [node name="TabContainer" parent="." index="0"] 11 | current_tab = 0 12 | 13 | [node name="Controls" parent="TabContainer" index="1" instance=ExtResource("2_15wl6")] 14 | layout_mode = 2 15 | metadata/_tab_index = 0 16 | 17 | [node name="Audio" parent="TabContainer" index="2" instance=ExtResource("3_qg4me")] 18 | visible = false 19 | layout_mode = 2 20 | metadata/_tab_index = 1 21 | 22 | [node name="Video" parent="TabContainer" index="3" instance=ExtResource("4_1t848")] 23 | visible = false 24 | layout_mode = 2 25 | metadata/_tab_index = 2 26 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/base/scenes/menus/options_menu/mini_options_menu.gd: -------------------------------------------------------------------------------- 1 | class_name MiniOptionsMenu 2 | extends Control 3 | 4 | @onready var mute_control = %MuteControl 5 | @onready var fullscreen_control = %FullscreenControl 6 | 7 | @export var audio_control_scene : PackedScene 8 | @export var hide_busses : Array[String] 9 | 10 | func _on_bus_changed(bus_value : float, bus_iter : int) -> void: 11 | AppSettings.set_bus_volume(bus_iter, bus_value) 12 | 13 | func _add_audio_control(bus_name : String, bus_value : float, bus_iter : int) -> void: 14 | if audio_control_scene == null or bus_name in hide_busses or bus_name.begins_with(AppSettings.SYSTEM_BUS_NAME_PREFIX): 15 | return 16 | var audio_control = audio_control_scene.instantiate() 17 | %AudioControlContainer.call_deferred("add_child", audio_control) 18 | if audio_control is OptionControl: 19 | audio_control.option_section = OptionControl.OptionSections.AUDIO 20 | audio_control.option_name = bus_name 21 | audio_control.value = bus_value 22 | audio_control.connect("setting_changed", _on_bus_changed.bind(bus_iter)) 23 | 24 | func _add_audio_bus_controls() -> void: 25 | for bus_iter in AudioServer.bus_count: 26 | var bus_name : String = AppSettings.get_audio_bus_name(bus_iter) 27 | var linear : float = AppSettings.get_bus_volume(bus_iter) 28 | _add_audio_control(bus_name, linear, bus_iter) 29 | 30 | func _update_ui() -> void: 31 | _add_audio_bus_controls() 32 | mute_control.value = AppSettings.is_muted() 33 | fullscreen_control.value = AppSettings.is_fullscreen(get_window()) 34 | 35 | func _sync_with_config() -> void: 36 | _update_ui() 37 | 38 | func _ready() -> void: 39 | _sync_with_config() 40 | 41 | func _on_mute_control_setting_changed(value : bool) -> void: 42 | AppSettings.set_mute(value) 43 | 44 | func _on_fullscreen_control_setting_changed(value : bool) -> void: 45 | AppSettings.set_fullscreen_enabled(value, get_window()) 46 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/base/scenes/menus/options_menu/mini_options_menu.gd.uid: -------------------------------------------------------------------------------- 1 | uid://1c0iyo5djoxj 2 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/base/scenes/menus/options_menu/mini_options_menu.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=5 format=3 uid="uid://vh1ucj2rfbby"] 2 | 3 | [ext_resource type="Script" uid="uid://1c0iyo5djoxj" path="res://addons/maaacks_menus_template/base/scenes/menus/options_menu/mini_options_menu.gd" id="1_32vm2"] 4 | [ext_resource type="PackedScene" uid="uid://cl416gdb1fgwr" path="res://addons/maaacks_menus_template/base/scenes/menus/options_menu/option_control/slider_option_control.tscn" id="2_kpc65"] 5 | [ext_resource type="Script" uid="uid://1nf36h0gms3q" path="res://addons/maaacks_menus_template/base/scripts/capture_focus.gd" id="3_7qt1o"] 6 | [ext_resource type="PackedScene" uid="uid://bsxh6v7j0257h" path="res://addons/maaacks_menus_template/base/scenes/menus/options_menu/option_control/toggle_option_control.tscn" id="4_b20fb"] 7 | 8 | [node name="MiniOptionsMenu" type="VBoxContainer"] 9 | custom_minimum_size = Vector2(400, 260) 10 | anchors_preset = 8 11 | anchor_left = 0.5 12 | anchor_top = 0.5 13 | anchor_right = 0.5 14 | anchor_bottom = 0.5 15 | offset_left = -200.0 16 | offset_top = -130.0 17 | offset_right = 200.0 18 | offset_bottom = 130.0 19 | grow_horizontal = 2 20 | grow_vertical = 2 21 | size_flags_horizontal = 4 22 | theme_override_constants/separation = 8 23 | alignment = 1 24 | script = ExtResource("1_32vm2") 25 | audio_control_scene = ExtResource("2_kpc65") 26 | 27 | [node name="AudioControlContainer" type="VBoxContainer" parent="."] 28 | unique_name_in_owner = true 29 | layout_mode = 2 30 | theme_override_constants/separation = 8 31 | script = ExtResource("3_7qt1o") 32 | search_depth = 2 33 | 34 | [node name="MuteControl" parent="." instance=ExtResource("4_b20fb")] 35 | unique_name_in_owner = true 36 | layout_mode = 2 37 | option_name = "Mute" 38 | option_section = 2 39 | key = "Mute" 40 | section = "AudioSettings" 41 | 42 | [node name="FullscreenControl" parent="." instance=ExtResource("4_b20fb")] 43 | unique_name_in_owner = true 44 | layout_mode = 2 45 | option_name = "Fullscreen" 46 | option_section = 3 47 | key = "FullscreenEnabled" 48 | section = "VideoSettings" 49 | 50 | [connection signal="setting_changed" from="MuteControl" to="." method="_on_mute_control_setting_changed"] 51 | [connection signal="setting_changed" from="FullscreenControl" to="." method="_on_fullscreen_control_setting_changed"] 52 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/base/scenes/menus/options_menu/option_control/list_option_control.gd.uid: -------------------------------------------------------------------------------- 1 | uid://b8xqufg4re3c2 2 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/base/scenes/menus/options_menu/option_control/list_option_control.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=3 format=3 uid="uid://b6bl3n5mp3m1e"] 2 | 3 | [ext_resource type="PackedScene" uid="uid://d7te75il06t7" path="res://addons/maaacks_menus_template/base/scenes/menus/options_menu/option_control/option_control.tscn" id="1_blo3b"] 4 | [ext_resource type="Script" uid="uid://b8xqufg4re3c2" path="res://addons/maaacks_menus_template/base/scenes/menus/options_menu/option_control/list_option_control.gd" id="2_kt4vl"] 5 | 6 | [node name="OptionControl" instance=ExtResource("1_blo3b")] 7 | script = ExtResource("2_kt4vl") 8 | lock_titles = false 9 | option_values = [] 10 | option_titles = [] 11 | 12 | [node name="OptionButton" type="OptionButton" parent="." index="1"] 13 | unique_name_in_owner = true 14 | layout_mode = 2 15 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/base/scenes/menus/options_menu/option_control/option_control.gd.uid: -------------------------------------------------------------------------------- 1 | uid://cafqki2b08kwu 2 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/base/scenes/menus/options_menu/option_control/option_control.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=2 format=3 uid="uid://d7te75il06t7"] 2 | 3 | [ext_resource type="Script" uid="uid://cafqki2b08kwu" path="res://addons/maaacks_menus_template/base/scenes/menus/options_menu/option_control/option_control.gd" id="1_jvl5q"] 4 | 5 | [node name="OptionControl" type="HBoxContainer"] 6 | custom_minimum_size = Vector2(0, 40) 7 | offset_right = 400.0 8 | offset_bottom = 40.0 9 | script = ExtResource("1_jvl5q") 10 | default_value = false 11 | 12 | [node name="OptionLabel" type="Label" parent="."] 13 | unique_name_in_owner = true 14 | layout_mode = 2 15 | size_flags_horizontal = 3 16 | text = " :" 17 | vertical_alignment = 1 18 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/base/scenes/menus/options_menu/option_control/slider_option_control.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=2 format=3 uid="uid://cl416gdb1fgwr"] 2 | 3 | [ext_resource type="PackedScene" uid="uid://d7te75il06t7" path="res://addons/maaacks_menus_template/base/scenes/menus/options_menu/option_control/option_control.tscn" id="1_16hlr"] 4 | 5 | [node name="OptionControl" instance=ExtResource("1_16hlr")] 6 | custom_minimum_size = Vector2(0, 28) 7 | offset_bottom = 28.0 8 | property_type = 3 9 | default_value = 1.0 10 | 11 | [node name="HSlider" type="HSlider" parent="." index="1"] 12 | custom_minimum_size = Vector2(256, 0) 13 | layout_mode = 2 14 | size_flags_vertical = 4 15 | max_value = 1.0 16 | step = 0.05 17 | value = 1.0 18 | tick_count = 11 19 | ticks_on_borders = true 20 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/base/scenes/menus/options_menu/option_control/toggle_option_control.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=2 format=3 uid="uid://bsxh6v7j0257h"] 2 | 3 | [ext_resource type="PackedScene" uid="uid://d7te75il06t7" path="res://addons/maaacks_menus_template/base/scenes/menus/options_menu/option_control/option_control.tscn" id="1_8rnmo"] 4 | 5 | [node name="OptionControl" instance=ExtResource("1_8rnmo")] 6 | 7 | [node name="CheckButton" type="CheckButton" parent="." index="1"] 8 | layout_mode = 2 9 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/base/scenes/menus/options_menu/option_control/vector_2_list_option_control.gd: -------------------------------------------------------------------------------- 1 | @tool 2 | class_name Vector2ListOptionControl 3 | extends ListOptionControl 4 | 5 | func _value_title_map(value : Variant) -> String: 6 | if value is Vector2 or value is Vector2i: 7 | return "%d x %d" % [value.x , value.y] 8 | else: 9 | return super._value_title_map(value) 10 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/base/scenes/menus/options_menu/option_control/vector_2_list_option_control.gd.uid: -------------------------------------------------------------------------------- 1 | uid://brntdgf3sv0s0 2 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/base/scenes/menus/options_menu/option_control/vector_2_list_option_control.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=3 format=3 uid="uid://c01ayjblhcg1t"] 2 | 3 | [ext_resource type="PackedScene" uid="uid://b6bl3n5mp3m1e" path="res://addons/maaacks_menus_template/base/scenes/menus/options_menu/option_control/list_option_control.tscn" id="1_jqwiw"] 4 | [ext_resource type="Script" uid="uid://brntdgf3sv0s0" path="res://addons/maaacks_menus_template/base/scenes/menus/options_menu/option_control/vector_2_list_option_control.gd" id="2_w33vs"] 5 | 6 | [node name="OptionControl" instance=ExtResource("1_jqwiw")] 7 | script = ExtResource("2_w33vs") 8 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/base/scenes/menus/options_menu/video/video_options_menu.gd: -------------------------------------------------------------------------------- 1 | class_name VideoOptionsMenu 2 | extends Control 3 | 4 | func _preselect_resolution(window : Window) -> void: 5 | %ResolutionControl.value = window.size 6 | 7 | func _update_resolution_options_enabled(window : Window) -> void: 8 | if OS.has_feature("web"): 9 | %ResolutionControl.editable = false 10 | %ResolutionControl.tooltip_text = "Disabled for web" 11 | elif AppSettings.is_fullscreen(window): 12 | %ResolutionControl.editable = false 13 | %ResolutionControl.tooltip_text = "Disabled for fullscreen" 14 | else: 15 | %ResolutionControl.editable = true 16 | %ResolutionControl.tooltip_text = "Select a screen size" 17 | 18 | func _update_ui(window : Window) -> void: 19 | %FullscreenControl.value = AppSettings.is_fullscreen(window) 20 | _preselect_resolution(window) 21 | %VSyncControl.value = AppSettings.get_vsync(window) 22 | _update_resolution_options_enabled(window) 23 | 24 | func _ready() -> void: 25 | var window : Window = get_window() 26 | _update_ui(window) 27 | window.connect("size_changed", _preselect_resolution.bind(window)) 28 | 29 | func _on_fullscreen_control_setting_changed(value) -> void: 30 | var window : Window = get_window() 31 | AppSettings.set_fullscreen_enabled(value, window) 32 | _update_resolution_options_enabled(window) 33 | 34 | func _on_resolution_control_setting_changed(value) -> void: 35 | AppSettings.set_resolution(value, get_window(), false) 36 | 37 | func _on_v_sync_control_setting_changed(value) -> void: 38 | AppSettings.set_vsync(value, get_window()) 39 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/base/scenes/menus/options_menu/video/video_options_menu.gd.uid: -------------------------------------------------------------------------------- 1 | uid://cpe5r24151r5n 2 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/base/scenes/music_players/background_music_player.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene format=3 uid="uid://bkcsjsk2ciff"] 2 | 3 | [node name="BackgroundMusicPlayer" type="AudioStreamPlayer"] 4 | process_mode = 3 5 | autoplay = true 6 | bus = &"Music" 7 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/base/scenes/opening/opening.gd.uid: -------------------------------------------------------------------------------- 1 | uid://dtco0s8byckx6 2 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/base/scenes/opening/opening.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=2 format=3 uid="uid://sikc02ddepyt"] 2 | 3 | [ext_resource type="Script" uid="uid://dtco0s8byckx6" path="res://addons/maaacks_menus_template/base/scenes/opening/opening.gd" id="1_fcjph"] 4 | 5 | [node name="Opening" type="Control"] 6 | layout_mode = 3 7 | anchors_preset = 15 8 | anchor_right = 1.0 9 | anchor_bottom = 1.0 10 | grow_horizontal = 2 11 | grow_vertical = 2 12 | script = ExtResource("1_fcjph") 13 | next_scene = "res://addons/maaacks_menus_template/base/scenes/menus/main_menu/main_menu.tscn" 14 | 15 | [node name="BackgroundMusicPlayer" type="AudioStreamPlayer" parent="."] 16 | process_mode = 3 17 | autoplay = true 18 | bus = &"Music" 19 | 20 | [node name="ImagesContainer" type="MarginContainer" parent="."] 21 | unique_name_in_owner = true 22 | layout_mode = 1 23 | anchors_preset = 15 24 | anchor_right = 1.0 25 | anchor_bottom = 1.0 26 | grow_horizontal = 2 27 | grow_vertical = 2 28 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/base/scenes/overlaid_menu/menus/mini_options_overlaid_menu.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=3 format=3 uid="uid://cikf3o5omnunl"] 2 | 3 | [ext_resource type="PackedScene" uid="uid://bqqngki8bm3iq" path="res://addons/maaacks_menus_template/base/scenes/overlaid_menu/overlaid_menu_container.tscn" id="1_kverk"] 4 | [ext_resource type="PackedScene" uid="uid://vh1ucj2rfbby" path="res://addons/maaacks_menus_template/base/scenes/menus/options_menu/mini_options_menu.tscn" id="2_ihtu5"] 5 | 6 | [node name="OverlaidMenuContainer" instance=ExtResource("1_kverk")] 7 | menu_scene = ExtResource("2_ihtu5") 8 | 9 | [node name="TitleLabel" parent="MenuPanelContainer/MarginContainer/BoxContainer/TitleMargin" index="0"] 10 | text = "Options" 11 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/base/scenes/overlaid_menu/menus/pause_menu.gd: -------------------------------------------------------------------------------- 1 | class_name PauseMenu 2 | extends OverlaidMenu 3 | 4 | @export var options_packed_scene : PackedScene 5 | @export_file("*.tscn") var main_menu_scene : String 6 | 7 | var popup_open : Node 8 | 9 | func close_popup() -> void: 10 | if popup_open != null: 11 | popup_open.hide() 12 | popup_open = null 13 | 14 | func _disable_focus() -> void: 15 | for child in %MenuButtons.get_children(): 16 | if child is Control: 17 | child.focus_mode = FOCUS_NONE 18 | 19 | func _enable_focus() -> void: 20 | for child in %MenuButtons.get_children(): 21 | if child is Control: 22 | child.focus_mode = FOCUS_ALL 23 | 24 | func _load_scene(scene_path: String) -> void: 25 | _scene_tree.paused = false 26 | SceneLoader.load_scene(scene_path) 27 | 28 | func open_options_menu() -> void: 29 | var options_scene := options_packed_scene.instantiate() 30 | add_child(options_scene) 31 | _disable_focus.call_deferred() 32 | await options_scene.tree_exiting 33 | _enable_focus.call_deferred() 34 | 35 | func _handle_cancel_input() -> void: 36 | if popup_open != null: 37 | close_popup() 38 | else: 39 | super._handle_cancel_input() 40 | 41 | func _hide_exit_for_web() -> void: 42 | if OS.has_feature("web"): 43 | %ExitButton.hide() 44 | 45 | func _hide_options_if_unset() -> void: 46 | if options_packed_scene == null: 47 | %OptionsButton.hide() 48 | 49 | func _hide_main_menu_if_unset() -> void: 50 | if main_menu_scene.is_empty(): 51 | %MainMenuButton.hide() 52 | 53 | func _ready() -> void: 54 | _hide_exit_for_web() 55 | _hide_options_if_unset() 56 | _hide_main_menu_if_unset() 57 | 58 | func _on_restart_button_pressed() -> void: 59 | %ConfirmRestart.popup_centered() 60 | popup_open = %ConfirmRestart 61 | 62 | func _on_options_button_pressed() -> void: 63 | open_options_menu() 64 | 65 | func _on_main_menu_button_pressed() -> void: 66 | %ConfirmMainMenu.popup_centered() 67 | popup_open = %ConfirmMainMenu 68 | 69 | func _on_exit_button_pressed() -> void: 70 | %ConfirmExit.popup_centered() 71 | popup_open = %ConfirmExit 72 | 73 | func _on_confirm_restart_confirmed() -> void: 74 | SceneLoader.reload_current_scene() 75 | close() 76 | 77 | func _on_confirm_main_menu_confirmed() -> void: 78 | _load_scene(main_menu_scene) 79 | 80 | func _on_confirm_exit_confirmed() -> void: 81 | get_tree().quit() 82 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/base/scenes/overlaid_menu/menus/pause_menu.gd.uid: -------------------------------------------------------------------------------- 1 | uid://uidwhqh4fyhj 2 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/base/scenes/overlaid_menu/overlaid_menu.gd: -------------------------------------------------------------------------------- 1 | @tool 2 | class_name OverlaidMenu 3 | extends Control 4 | 5 | @export var pauses_game : bool = false : 6 | set(value): 7 | pauses_game = value 8 | if pauses_game: 9 | process_mode = PROCESS_MODE_ALWAYS 10 | else: 11 | process_mode = PROCESS_MODE_INHERIT 12 | @export var makes_mouse_visible : bool = true 13 | 14 | var _initial_pause_state : bool = false 15 | var _initial_focus_mode : FocusMode = FOCUS_ALL 16 | var _initial_mouse_mode : Input.MouseMode 17 | var _initial_focus_control 18 | var _scene_tree : SceneTree 19 | 20 | func close() -> void: 21 | _scene_tree.paused = _initial_pause_state 22 | Input.set_mouse_mode(_initial_mouse_mode) 23 | if is_instance_valid(_initial_focus_control) and _initial_focus_control.is_inside_tree(): 24 | _initial_focus_control.focus_mode = _initial_focus_mode 25 | _initial_focus_control.grab_focus() 26 | queue_free() 27 | 28 | func _handle_cancel_input() -> void: 29 | close() 30 | 31 | func _unhandled_input(event : InputEvent) -> void: 32 | if event.is_action_pressed("ui_cancel"): 33 | _handle_cancel_input() 34 | get_viewport().set_input_as_handled() 35 | 36 | func _on_close_button_pressed() -> void: 37 | close() 38 | 39 | func _enter_tree() -> void: 40 | _scene_tree = get_tree() 41 | _initial_pause_state = _scene_tree.paused 42 | _initial_mouse_mode = Input.get_mouse_mode() 43 | _initial_focus_control = get_viewport().gui_get_focus_owner() 44 | if _initial_focus_control: 45 | _initial_focus_mode = _initial_focus_control.focus_mode 46 | if Engine.is_editor_hint(): return 47 | _scene_tree.paused = pauses_game or _initial_pause_state 48 | if makes_mouse_visible: 49 | Input.set_mouse_mode(Input.MOUSE_MODE_VISIBLE) 50 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/base/scenes/overlaid_menu/overlaid_menu.gd.uid: -------------------------------------------------------------------------------- 1 | uid://xfugmpspqbcc 2 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/base/scenes/overlaid_menu/overlaid_menu_container.gd: -------------------------------------------------------------------------------- 1 | @tool 2 | class_name OverlaidMenuContainer 3 | extends OverlaidMenu 4 | 5 | @export var menu_scene : PackedScene : 6 | set(value): 7 | var _value_changed = menu_scene != value 8 | menu_scene = value 9 | if _value_changed: 10 | for child in %MenuContainer.get_children(): 11 | child.queue_free() 12 | if menu_scene: 13 | var _instance = menu_scene.instantiate() 14 | %MenuContainer.add_child(_instance) 15 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/base/scenes/overlaid_menu/overlaid_menu_container.gd.uid: -------------------------------------------------------------------------------- 1 | uid://droejgtv8bu0s 2 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/base/scenes/overlaid_menu/overlaid_menu_container.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=3 format=3 uid="uid://bqqngki8bm3iq"] 2 | 3 | [ext_resource type="PackedScene" uid="uid://wny2d8dvp3ok" path="res://addons/maaacks_menus_template/base/scenes/overlaid_menu/overlaid_menu.tscn" id="1_xgkve"] 4 | [ext_resource type="Script" uid="uid://droejgtv8bu0s" path="res://addons/maaacks_menus_template/base/scenes/overlaid_menu/overlaid_menu_container.gd" id="2_owcue"] 5 | 6 | [node name="OverlaidMenuContainer" instance=ExtResource("1_xgkve")] 7 | script = ExtResource("2_owcue") 8 | menu_scene = null 9 | 10 | [node name="MenuContainer" type="MarginContainer" parent="MenuPanelContainer/MarginContainer/BoxContainer" index="2"] 11 | unique_name_in_owner = true 12 | layout_mode = 2 13 | size_flags_vertical = 3 14 | 15 | [node name="MenuButtonsMargin" parent="MenuPanelContainer/MarginContainer/BoxContainer" index="3"] 16 | theme_override_constants/margin_top = 16 17 | theme_override_constants/margin_bottom = 16 18 | 19 | [node name="CloseButton" parent="MenuPanelContainer/MarginContainer/BoxContainer/MenuButtonsMargin/MenuButtons" index="0"] 20 | size_flags_horizontal = 4 21 | text = "Back" 22 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/base/scenes/utilities/api_client.gd.uid: -------------------------------------------------------------------------------- 1 | uid://s0j82xowl675 2 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/base/scenes/utilities/api_client.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=2 format=3 uid="uid://drhhakm62vjsy"] 2 | 3 | [ext_resource type="Script" uid="uid://s0j82xowl675" path="res://addons/maaacks_menus_template/base/scenes/utilities/api_client.gd" id="1_c5ofg"] 4 | 5 | [node name="APIClient" type="Node"] 6 | script = ExtResource("1_c5ofg") 7 | 8 | [node name="HTTPRequest" type="HTTPRequest" parent="."] 9 | 10 | [node name="TimeoutTimer" type="Timer" parent="."] 11 | 12 | [connection signal="request_completed" from="HTTPRequest" to="." method="_on_http_request_request_completed"] 13 | [connection signal="timeout" from="TimeoutTimer" to="." method="_on_timeout_timer_timeout"] 14 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/base/scenes/utilities/download_and_extract.gd.uid: -------------------------------------------------------------------------------- 1 | uid://bqu3bc0tttrfk 2 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/base/scenes/utilities/download_and_extract.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=2 format=3 uid="uid://dlkmofxhavh10"] 2 | 3 | [ext_resource type="Script" uid="uid://bqu3bc0tttrfk" path="res://addons/maaacks_menus_template/base/scenes/utilities/download_and_extract.gd" id="1_1few7"] 4 | 5 | [node name="DownloadAndExtract" type="Node"] 6 | script = ExtResource("1_1few7") 7 | 8 | [node name="HTTPRequest" type="HTTPRequest" parent="."] 9 | 10 | [node name="TimeoutTimer" type="Timer" parent="."] 11 | one_shot = true 12 | 13 | [connection signal="request_completed" from="HTTPRequest" to="." method="_on_http_request_request_completed"] 14 | [connection signal="timeout" from="TimeoutTimer" to="." method="_on_timeout_timer_timeout"] 15 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/base/scripts/app_settings.gd.uid: -------------------------------------------------------------------------------- 1 | uid://dwflyh7g2rjxt 2 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/base/scripts/capture_focus.gd: -------------------------------------------------------------------------------- 1 | class_name CaptureFocus 2 | extends Control 3 | ## Node that captures UI focus for games with a hidden mouse or joypad enabled. 4 | ## 5 | ## This script assists with capturing UI focus when 6 | ## opening, closing, or switching between menus. 7 | ## When attached to a node, it will check if it was changed to visible 8 | ## and if it should grab focus. If both are true, it will capture focus 9 | ## on the first eligible node in its scene tree. 10 | 11 | ## Hierarchical depth to search in the scene tree. 12 | @export var search_depth : int = 1 13 | @export var enabled : bool = false 14 | @export var null_focus_enabled : bool = true 15 | @export var joypad_enabled : bool = true 16 | @export var mouse_hidden_enabled : bool = true 17 | 18 | ## Locks focus 19 | @export var lock : bool = false : 20 | set(value): 21 | var value_changed : bool = lock != value 22 | lock = value 23 | if value_changed and not lock: 24 | update_focus() 25 | 26 | func _focus_first_search(control_node : Control, levels : int = 1) -> bool: 27 | if control_node == null or !control_node.is_visible_in_tree(): 28 | return false 29 | if control_node.focus_mode == FOCUS_ALL: 30 | control_node.grab_focus() 31 | if control_node is ItemList: 32 | control_node.select(0) 33 | return true 34 | if levels < 1: 35 | return false 36 | var children = control_node.get_children() 37 | for child in children: 38 | if _focus_first_search(child, levels - 1): 39 | return true 40 | return false 41 | 42 | func focus_first() -> void: 43 | _focus_first_search(self, search_depth) 44 | 45 | func update_focus() -> void: 46 | if lock : return 47 | if _is_visible_and_should_capture(): 48 | focus_first() 49 | 50 | func _should_capture_focus() -> bool: 51 | return enabled or \ 52 | (get_viewport().gui_get_focus_owner() == null and null_focus_enabled) or \ 53 | (Input.get_connected_joypads().size() > 0 and joypad_enabled) or \ 54 | (Input.mouse_mode not in [Input.MOUSE_MODE_VISIBLE, Input.MOUSE_MODE_CONFINED] and mouse_hidden_enabled) 55 | 56 | func _is_visible_and_should_capture() -> bool: 57 | return is_visible_in_tree() and _should_capture_focus() 58 | 59 | func _on_visibility_changed() -> void: 60 | call_deferred("update_focus") 61 | 62 | func _ready() -> void: 63 | if is_inside_tree(): 64 | update_focus() 65 | connect("visibility_changed", _on_visibility_changed) 66 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/base/scripts/capture_focus.gd.uid: -------------------------------------------------------------------------------- 1 | uid://1nf36h0gms3q 2 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/base/scripts/config.gd: -------------------------------------------------------------------------------- 1 | class_name Config 2 | extends Object 3 | 4 | ## Interface for a single configuration file through [ConfigFile]. 5 | 6 | const CONFIG_FILE_LOCATION := "user://config.cfg" 7 | 8 | static var config_file : ConfigFile 9 | 10 | static func _init() -> void: 11 | load_config_file() 12 | 13 | static func _save_config_file() -> void: 14 | var save_error : int = config_file.save(CONFIG_FILE_LOCATION) 15 | if save_error: 16 | push_error("save config file failed with error %d" % save_error) 17 | 18 | static func load_config_file() -> void: 19 | if config_file != null: 20 | return 21 | config_file = ConfigFile.new() 22 | var load_error : int = config_file.load(CONFIG_FILE_LOCATION) 23 | if load_error: 24 | var save_error : int = config_file.save(CONFIG_FILE_LOCATION) 25 | if save_error: 26 | push_error("save config file failed with error %d" % save_error) 27 | 28 | static func set_config(section: String, key: String, value) -> void: 29 | load_config_file() 30 | config_file.set_value(section, key, value) 31 | _save_config_file() 32 | 33 | static func get_config(section: String, key: String, default = null) -> Variant: 34 | load_config_file() 35 | return config_file.get_value(section, key, default) 36 | 37 | static func has_section(section: String) -> bool: 38 | load_config_file() 39 | return config_file.has_section(section) 40 | 41 | static func has_section_key(section: String, key: String) -> bool: 42 | load_config_file() 43 | return config_file.has_section_key(section, key) 44 | 45 | static func erase_section(section: String) -> void: 46 | if has_section(section): 47 | config_file.erase_section(section) 48 | _save_config_file() 49 | 50 | static func erase_section_key(section: String, key: String) -> void: 51 | if has_section_key(section, key): 52 | config_file.erase_section_key(section, key) 53 | _save_config_file() 54 | 55 | static func get_section_keys(section: String) -> PackedStringArray: 56 | load_config_file() 57 | if config_file.has_section(section): 58 | return config_file.get_section_keys(section) 59 | return PackedStringArray() 60 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/base/scripts/config.gd.uid: -------------------------------------------------------------------------------- 1 | uid://dxjk8pgi7yhtq 2 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/base/scripts/file_lister.gd: -------------------------------------------------------------------------------- 1 | @tool 2 | extends Node 3 | class_name FileLister 4 | ## Helper class for listing all the scenes in a directory. 5 | 6 | ## List of paths to scene files. 7 | @export var _refresh_files_action : bool = false : 8 | set(value): 9 | if value and Engine.is_editor_hint(): 10 | _refresh_files() 11 | # For Godot 4.4 12 | # @export_tool_button("Refresh Files") var _refresh_files_action = _refresh_files 13 | ## Filled in the editor by selecting a directory. 14 | @export var files : Array[String] 15 | ## Fills files with those discovered in directories, and matching constraints. 16 | @export_dir var directories : Array[String] : 17 | set(value): 18 | directories = value 19 | _refresh_files() 20 | 21 | @export_group("Constraints") 22 | @export var search : String 23 | @export var filter : String 24 | 25 | @export_subgroup("Advanced Search") 26 | @export var begins_with : String 27 | @export var ends_with : String 28 | @export var not_begins_with : String 29 | @export var not_ends_with : String 30 | 31 | 32 | func _refresh_files(): 33 | if not is_inside_tree(): return 34 | files.clear() 35 | for directory in directories: 36 | var dir_access = DirAccess.open(directory) 37 | if dir_access: 38 | for file in dir_access.get_files(): 39 | if (not search.is_empty()) and (not file.contains(search)): 40 | continue 41 | if (not filter.is_empty()) and (file.contains(filter)): 42 | continue 43 | if (not begins_with.is_empty()) and (not file.begins_with(begins_with)): 44 | continue 45 | if (not ends_with.is_empty()) and (not file.ends_with(ends_with)): 46 | continue 47 | if (not not_begins_with.is_empty()) and (file.begins_with(not_begins_with)): 48 | continue 49 | if (not not_ends_with.is_empty()) and (file.ends_with(not_ends_with)): 50 | continue 51 | files.append(directory + "/" + file) 52 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/base/scripts/file_lister.gd.uid: -------------------------------------------------------------------------------- 1 | uid://bij7wsh8d44gv 2 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/base/scripts/input_helper.gd.uid: -------------------------------------------------------------------------------- 1 | uid://6xujceamar4h 2 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/base/scripts/music_controller.gd.uid: -------------------------------------------------------------------------------- 1 | uid://ctrh4qyxqncss 2 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/base/scripts/pause_menu_controller.gd: -------------------------------------------------------------------------------- 1 | class_name PauseMenuController 2 | extends Node 3 | 4 | ## Node for opening a pause menu when detecting a 'ui_cancel' event. 5 | 6 | @export var pause_menu_packed : PackedScene 7 | @export var focused_viewport : Viewport 8 | 9 | func _unhandled_input(event : InputEvent) -> void: 10 | if event.is_action_pressed("ui_cancel"): 11 | if not focused_viewport: 12 | focused_viewport = get_viewport() 13 | var _initial_focus_control = focused_viewport.gui_get_focus_owner() 14 | var current_menu = pause_menu_packed.instantiate() 15 | get_tree().current_scene.call_deferred("add_child", current_menu) 16 | await current_menu.tree_exited 17 | if is_inside_tree() and _initial_focus_control: 18 | _initial_focus_control.grab_focus() 19 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/base/scripts/pause_menu_controller.gd.uid: -------------------------------------------------------------------------------- 1 | uid://cyh0d64pfygbl 2 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/base/scripts/ui_sound_controller.gd.uid: -------------------------------------------------------------------------------- 1 | uid://b5oej1q4h7jvh 2 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/base/translations/menus_translations.csv: -------------------------------------------------------------------------------- 1 | keys,en,fr 2 | 3 | ___ MAIN MENU,, 4 | 5 | Title,Title,Titre 6 | Subtitle,Subtitle,Sous-titre 7 | Play,Play,Jouer 8 | Options,Options,Options 9 | Credits,Credits,Crédits 10 | Exit,Exit,Quitter 11 | 12 | ___ LOADING SCREEN,, 13 | Loading...,Loading...,Chargement... 14 | 15 | ___ DIALOGS IN GAME,, 16 | 17 | You lose.,You lose.,Vous avez perdu. 18 | You won!,You won!,Vous avez gagné ! 19 | Thanks for playing!,Thanks for playing!,Merci d'avoir joué ! 20 | 21 | Exit Game,Exit Game,Quitter le jeu 22 | Main Menu,Main Menu,Menu principal 23 | Restart,Restart,Recommencer 24 | Continue,Continue,Continuer 25 | Menu,Menu,Menu 26 | 27 | Please Confirm...,Please Confirm...,Veuillez confirmer... 28 | Go back to main menu?,Go back to main menu?,Retourner au menu principal ? 29 | Quit the game?,Quit the game?,Quitter le jeu ? 30 | Cancel,Cancel,Annuler 31 | OK,OK,OK 32 | 33 | ___ OPTIONS MENU,, 34 | 35 | Controls,Controls,Contrôles 36 | Mouse Sensitivity :,Mouse Sensitivity :,Sensibilité souris : 37 | Actions & Inputs,Actions & Inputs,Actions et contrôles 38 | Add,Add,Ajouter 39 | Remove,Remove,Enlever 40 | Assign Key for {action},Assign Key for {action},Choisir le contrôle pour {action} 41 | Listening for input...,Listening for input...,Appuyez sur un bouton... 42 | Press again to confirm...,Press again to confirm...,Appuyez encore pour confirmer... 43 | Focus here to assign inputs.,Focus here to assign inputs.,Mettez le focus ici pour choisir le contrôle. 44 | Already Assigned,Already Assigned,Déjà utilisé 45 | {key} already assigned to {action}.,{key} already assigned to {action}.,{key} est déjà utilisé pour {action}. 46 | Remove Key for {action},Remove Key for {action},Supprimer le contrôle pour {action} 47 | Are you sure you want to remove {key} from {action}?,Are you sure you want to remove {key} from {action}?,Êtes-vous sûr de vouloir supprimer {key} pour {action} ? 48 | Reset,Reset,Réinitialiser 49 | 50 | Audio,Audio,Audio 51 | Master :,Master :,Principal : 52 | Music :,Music :,Musique : 53 | SFX :,SFX :,Effets : 54 | Mute :,Mute :,Silencieux : 55 | 56 | Video,Video,Vidéo 57 | Fullscreen :,Fullscreen :,Plein écran : 58 | Resolution :,Resolution :,Résolution : 59 | Anti-Aliasing :,Anti-Aliasing :,Anticrénelage : 60 | Disabled (Fastest),Disabled (Fastest),Désactivé (Plus rapide) 61 | 8x (Slowest),8x (Slowest),8x (Plus lent) 62 | Camera Shake :,Camera Shake :,Secousse Caméra : 63 | Normal,Normal,Normale 64 | Reduced,Reduced,Réduite 65 | Minimal,Minimal,Minimum 66 | None,None,Aucune 67 | 68 | Game,Game,Jeu 69 | Reset Game :,Reset Game :,Réinitialiser le jeu : 70 | Do you want to reset your game data?,Do you want to reset your game data?,Voulez-vous réinitialiser votre partie ? 71 | 72 | Back,Back,Retour 73 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/base/translations/menus_translations.csv.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="csv_translation" 4 | type="Translation" 5 | uid="uid://i6ihop1vp2ei" 6 | 7 | [deps] 8 | 9 | files=["res://addons/maaacks_menus_template/base/translations/menus_translations.en.translation", "res://addons/maaacks_menus_template/base/translations/menus_translations.fr.translation"] 10 | 11 | source_file="res://addons/maaacks_menus_template/base/translations/menus_translations.csv" 12 | dest_files=["res://addons/maaacks_menus_template/base/translations/menus_translations.en.translation", "res://addons/maaacks_menus_template/base/translations/menus_translations.fr.translation"] 13 | 14 | [params] 15 | 16 | compress=true 17 | delimiter=0 18 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/base/translations/menus_translations.en.translation: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/addons/maaacks_menus_template/base/translations/menus_translations.en.translation -------------------------------------------------------------------------------- /addons/maaacks_menus_template/base/translations/menus_translations.fr.translation: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/addons/maaacks_menus_template/base/translations/menus_translations.fr.translation -------------------------------------------------------------------------------- /addons/maaacks_menus_template/docs/GamesMade.md: -------------------------------------------------------------------------------- 1 | # Games 2 | This page features games using Maaack's Godot Game Template and/or plugins. 3 | 4 | If you have a game you'd like to share, join the [Discord server](https://discord.gg/AyZrJh5AMp ) and post a link to your game in #showcase. 5 | 6 | ## Featured 7 | 8 | | Spud Customs | Rent Seek Kill | A Darkness Like Gravity | 9 | | :-------:| :-------: | :-------: | 10 | ![Spud Customs](/addons/maaacks_menus_template/media/screenshot-game-spud-customs.png) | ![Rent-Seek-Kill](/addons/maaacks_menus_template/media/screenshot-game-rent-seek-kill.png) | ![A Darkness Like Gravity](/addons/maaacks_menus_template/media/screenshot-game-a-darkness-like-gravity.png) | 11 | [Find on Steam](https://store.steampowered.com/app/3291880/Spud_Customs/) | [Play on itch.io](https://xandruher.itch.io/rent-seek-kill) | [Play on itch.io](https://maaack.itch.io/a-darkness-like-gravity) | 12 | 13 | 14 | ## All Shared 15 | ### 2025 16 | https://schinken.itch.io/low-ink 17 | https://maaack.itch.io/furnace-in-the-archive 18 | https://plexsoup.itch.io/factoriohno 19 | https://maaack.itch.io/dungeon-fantasy-fashion-show 20 | https://maaack.itch.io/absurd-herd 21 | https://maaack.itch.io/indys-expedition-2 22 | https://baconeggsrl.itch.io/sprouts-journey 23 | 24 | ### 2024 25 | https://store.steampowered.com/app/3291880/Spud_Customs/ (Source: https://github.com/Lost-Rabbit-Digital/SpudCustoms) 26 | https://glockenberg.itch.io/icefire-temple 27 | https://maaack.itch.io/backroom-labyrinths 28 | https://maaack.itch.io/haunted-circuits 29 | https://maaack.itch.io/talk-up-the-tower 30 | https://marinaaaa.itch.io/meowntaineer 31 | https://maaack.itch.io/a-darkness-like-gravity 32 | https://maaack.itch.io/lore-of-the-wild-gwj-70 33 | https://maaack.itch.io/infinite-horizon 34 | https://elidef.itch.io/forge-ur-boss 35 | https://maaack.itch.io/forgeomino 36 | https://xandruher.itch.io/rent-seek-kill 37 | https://maaack.itch.io/blind-escape-gwj-66-edition 38 | https://justaguyjustaguy.itch.io/nannybot-overload 39 | https://maaack.itch.io/the-last-host-boss-rush 40 | https://kyveri.itch.io/riverking 41 | 42 | ### 2023 43 | https://xandruher.itch.io/spectral-war 44 | https://maaack.itch.io/the-cat-with-eight-gwj-63-edition 45 | https://maaack.itch.io/harvest-hill-gwj-62-edition 46 | https://shoddygames.itch.io/once-summoned 47 | https://maaack.itch.io/the-last-host 48 | https://maaack.itch.io/do-androids-dream-gwj-55-edition 49 | https://maaack.itch.io/character-builder-gwj-53-edition 50 | https://maaack.itch.io/rit-dot-wav 51 | https://maaack.itch.io/supercritical-a-post-apocalyptic-bonsai -------------------------------------------------------------------------------- /addons/maaacks_menus_template/docs/HowPartsWork.md: -------------------------------------------------------------------------------- 1 | # How Parts Work 2 | 3 | This page features snippets of extra documentation on key pieces of the plugin. It was previously included in the README. 4 | 5 | - `app_config.tscn` is set as the first autoload. It calls `app_settings.gd` to load all the configuration settings from the config file (if it exists) through `config.gd`. 6 | - `scene_loader.tscn` is set as the second autoload. It can load scenes in the background or with a loading screen (`loading_screen.tscn` by default). 7 | - `opening.tscn` is a simple scene for fading in/out a few images at the start of the game. It then loads the next scene (`main_menu.tscn`). 8 | - `main_menu.tscn` is where a player can start the game, change settings, watch credits, or quit. It can link to the path of a game scene to play, and the packed scene of an options menu to use. 9 | - `option_control.tscn` and its inherited scenes are used for most configurable options in the menus. They work with `config.gd` to keep settings persistent between runs. 10 | - `credits.tscn` reads from `ATTRIBUTION.md` to automatically generate the content for it's scrolling text label. 11 | - The `UISoundController` node automatically attaches sounds to buttons, tab bars, sliders, and line edits in the scene. `project_ui_sound_controller.tscn` is an autload used to apply UI sounds project-wide. 12 | - `project_music_controller.tscn` is an autoload that keeps music playing between scenes. It detects music stream players as they are added to the scene tree, reparents them to itself, and blends the tracks. 13 | - The `PauseMenuController` can be set to load `pause_menu.tscn` when triggering `ui-cancel`. 14 | - `pause_menu.tscn` is a type of `OverlaidMenu` with the `pauses_game` flag set to true. It will store the previously focused UI element, and return focus to it when closed. 15 | - `capture_focus.gd` is attached to container nodes throughout the UI. It focuses onto UI elements when they are shown, allowing for easier navigation without a mouse. 16 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/docs/JoypadInputs.md: -------------------------------------------------------------------------------- 1 | # Joypad Inputs 2 | 3 | This page covers topics related to working with joypads. 4 | 5 | ## Recognized Devices 6 | 7 | - Xbox 8 | - Playstation 4 9 | - Playstation 5 10 | 11 | ### Unconfirmed 12 | 13 | - Switch 14 | - Steam Deck 15 | 16 | ## Added UI Inputs 17 | 18 | There is a `override.cfg` in the project root directory that adds a few additional inputs to the project's built-in UI actions. 19 | 20 | These additional inputs are for joypads and include the following: 21 | 22 | - `UI Accept`: A Button (Xbox A / Sony X) 23 | - `UI Cancel`: Back Button (Xbox Back / Sony Select) 24 | - `UI Page Up`: Left Shoulder (Xbox LB / Sony L1) 25 | - `UI Page Down`: Right Shoulder (Xbox RB / Sony R2) 26 | 27 | However, for these to work in exported versions of the project, the inputs need to either be added manually to the project's built-in actions, or `override.cfg` will need to be included in the exports. The latter can be done by including the pattern (`*.cfg`) in **Filters to export non-resource files/folders** under the *Resources* tab of the *Export* window. 28 | 29 | ## Web Builds 30 | 31 | Godot (or the template) currently does not support joypad device detection on the web. If icons are being used for input remapping, the joypad icons will *not* update automatically to match a new detected controller. -------------------------------------------------------------------------------- /addons/maaacks_menus_template/docs/MainMenuSetup.md: -------------------------------------------------------------------------------- 1 | # Main Menu Setup 2 | 3 | These are instructions for further editing the menus. Basic instructions are available in the [README](/addons/maaacks_menus_template/README.md#usage). 4 | 5 | ## Inheritance 6 | 7 | Most example scenes in the template inherit from scenes in `addons`. This is useful for developing of the plugin, but often less useful for those using it. When editing the example scenes, any nodes inherited from a parent scene are highlighted in yellow in the scene tree. Inherited nodes cannot be edited like native nodes. Therefore, it is recommended to first right-click on the root node, and select `Clear Inheritance`. You'll get a warning that this cannot be undone, but it's okay. You probably won't need to undo it, and if you do, there are solutions. 8 | 9 | ## Visual Placement 10 | 11 | The positions and anchor presets of the UI elements can be adjusted to match most designs with ease. Buttons can be centered, right or left justfied, or arranged horizontally. Most visual UI elements are contained within `MarginContainer` and `Control` nodes that allow for fine-tuning of placement. 12 | 13 | ## Scene Structure 14 | Some designs may require rearranging the nodes in the scene tree. This is easier once the inheritance to the parent scene is cleared. However, if editing `main_menu_with_animations.tscn`, keep in mind that there are animations, and moving elements outside of the animated containers may have undesired effects. 15 | 16 | ## 3D Background 17 | When adding a 3D background to the menu, it is recommended to use a `SubViewportContainer` in place of or right above the `BackgroundTextureRect`. Then add a `SubViewport` to it, and finally the 3D world node to that. This structure gives fine-tune control of scaling, allows for layering 3D views when they have transparency, and makes it easy to add a texture shader to the whole background. 18 | 19 | ## Theming 20 | It is recommended to have a custom theme for a project. Create a theme resource file or use one of the ones provided with the template and set it as the custom theme in the project settings. Any changes made to the theme file will then apply automatically to the whole project. 21 | 22 | The main UI elements that are used throughout the project that require theming for customization are: 23 | - Button 24 | - Label 25 | - PanelContainer 26 | - ProgressBar 27 | - TabContainer 28 | - Tree -------------------------------------------------------------------------------- /addons/maaacks_menus_template/docs/PluginSuite.md: -------------------------------------------------------------------------------- 1 | # Plugin Suite 2 | 3 | ![Plugins Suite](../media/maaacks-plugin-suite-256x256.gif) 4 | 5 | Maaack's Game Template is a culmination of a suite of plugins, that can be downloaded individually, if desired. 6 | 7 | ## GitHub 8 | 9 | - [Game Template](https://github.com/Maaack/Godot-Game-Template) 10 | - [Menus Template](https://github.com/Maaack/Godot-Menus-Template) 11 | - [Options Menus](https://github.com/Maaack/Godot-Options-Menus) 12 | - [Input Remapping](https://github.com/Maaack/Godot-Input-Remapping) 13 | - [Scene Loader](https://github.com/Maaack/Godot-Scene-Loader) 14 | - [Credits Scene](https://github.com/Maaack/Godot-Credits-Scene) 15 | - [UI Sound Controller](https://github.com/Maaack/Godot-UI-Sound-Controller) 16 | - [Music Controller](https://github.com/Maaack/Godot-Music-Controller) 17 | 18 | ## Godot Asset Library 19 | 20 | - [Game Template](https://godotengine.org/asset-library/asset/2709) 21 | - [Menus Template](https://godotengine.org/asset-library/asset/2899) 22 | - [Options Menus](https://godotengine.org/asset-library/asset/3058) 23 | - [Input Remapping](https://godotengine.org/asset-library/asset/4051) 24 | - [Scene Loader](https://godotengine.org/asset-library/asset/2896) 25 | - [Credits Scene](https://godotengine.org/asset-library/asset/2932) 26 | - [UI Sound Controller](https://godotengine.org/asset-library/asset/2897) 27 | - [Music Controller](https://godotengine.org/asset-library/asset/2898) 28 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/docs/Videos.md: -------------------------------------------------------------------------------- 1 | # Videos 2 | 3 | [![Quick Intro Video](https://img.youtube.com/vi/U9CB3vKINVw/hqdefault.jpg)](https://youtu.be/U9CB3vKINVw) 4 | [![Installation Video](https://img.youtube.com/vi/-QWJnZ8bVdk/hqdefault.jpg)](https://youtu.be/-QWJnZ8bVdk) 5 | [![UI Theming (1) Video](https://img.youtube.com/vi/SBE4icfXYRA/hqdefault.jpg)](https://youtu.be/SBE4icfXYRA) 6 | [![UI Theming (2) Video](https://img.youtube.com/vi/wCc2QUnaBKo/hqdefault.jpg)](https://youtu.be/wCc2QUnaBKo) 7 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/examples/ATTRIBUTION.md: -------------------------------------------------------------------------------- 1 | # Attribution 2 | ## Collaborators 3 | 4 | ### Role 5 | Person 1 6 | Person 2 7 | [Person w/ Link]() 8 | 9 | 10 | ## Sourced / Unaffiliated 11 | ### Asset Type 12 | #### Use Case 13 | Author: [Name]() 14 | Source: [Domain : webpage.html]() 15 | License: [License]() 16 | 17 | #### Godot Engine Logo 18 | Author: Andrea Calabró 19 | Source: [godotengine.org : press](https://godotengine.org/press/) 20 | License: [CC BY 4.0 International](https://github.com/godotengine/godot/blob/master/LOGO_LICENSE.txt) 21 | 22 | ## Tools 23 | #### Godot 24 | Author: [Juan Linietsky, Ariel Manzur, and contributors](https://godotengine.org/contact) 25 | Source: [godotengine.org](https://godotengine.org/) 26 | License: [MIT License](https://github.com/godotengine/godot/blob/master/LICENSE.txt) 27 | 28 | #### Git 29 | Author: [Linus Torvalds](https://github.com/torvalds) 30 | Source: [git-scm.com](https://git-scm.com/downloads) 31 | License: [GNU General Public License version 2](https://opensource.org/licenses/GPL-2.0) 32 | 33 | #### Godot Menus Template 34 | Author: [Marek Belski and contributors](https://github.com/Maaack/Godot-Menus-Template/graphs/contributors) 35 | Source: [github: Godot-Menus-Template](https://github.com/Maaack/Godot-Menus-Template) 36 | License: [MIT License](LICENSE.txt) 37 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/examples/assets/godot_engine_logo/LICENSE.txt: -------------------------------------------------------------------------------- 1 | Godot Engine Logo 2 | Copyright (c) 2017 Andrea Calabró 3 | 4 | This work is licensed under the Creative Commons Attribution 4.0 International 5 | license (CC BY 4.0 International): https://creativecommons.org/licenses/by/4.0/ -------------------------------------------------------------------------------- /addons/maaacks_menus_template/examples/assets/godot_engine_logo/logo_vertical_color_dark.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/addons/maaacks_menus_template/examples/assets/godot_engine_logo/logo_vertical_color_dark.png -------------------------------------------------------------------------------- /addons/maaacks_menus_template/examples/assets/godot_engine_logo/logo_vertical_color_dark.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="CompressedTexture2D" 5 | uid="uid://5rltpvy6c5b" 6 | path="res://.godot/imported/logo_vertical_color_dark.png-69886133dfa13ad82985e644fd21e82d.ctex" 7 | metadata={ 8 | "vram_texture": false 9 | } 10 | 11 | [deps] 12 | 13 | source_file="res://addons/maaacks_menus_template/examples/assets/godot_engine_logo/logo_vertical_color_dark.png" 14 | dest_files=["res://.godot/imported/logo_vertical_color_dark.png-69886133dfa13ad82985e644fd21e82d.ctex"] 15 | 16 | [params] 17 | 18 | compress/mode=0 19 | compress/high_quality=false 20 | compress/lossy_quality=0.7 21 | compress/hdr_compression=1 22 | compress/normal_map=0 23 | compress/channel_pack=0 24 | mipmaps/generate=false 25 | mipmaps/limit=-1 26 | roughness/mode=0 27 | roughness/src_normal="" 28 | process/fix_alpha_border=true 29 | process/premult_alpha=false 30 | process/normal_map_invert_y=false 31 | process/hdr_as_srgb=false 32 | process/hdr_clamp_exposure=false 33 | process/size_limit=0 34 | detect_3d/compress_to=1 35 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/examples/scenes/credits/credits.gd: -------------------------------------------------------------------------------- 1 | @tool 2 | extends Credits 3 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/examples/scenes/credits/credits.gd.uid: -------------------------------------------------------------------------------- 1 | uid://btl0ormyca7s3 2 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/examples/scenes/credits/credits.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=3 format=3 uid="uid://c1g50h2avck3w"] 2 | 3 | [ext_resource type="PackedScene" uid="uid://t2dui8ppm3a4" path="res://addons/maaacks_menus_template/base/scenes/credits/credits.tscn" id="1_n45le"] 4 | [ext_resource type="Script" uid="uid://btl0ormyca7s3" path="res://addons/maaacks_menus_template/examples/scenes/credits/credits.gd" id="2_q7msw"] 5 | 6 | [node name="Credits" instance=ExtResource("1_n45le")] 7 | script = ExtResource("2_q7msw") 8 | attribution_file_path = "res://addons/maaacks_menus_template/examples/ATTRIBUTION.md" 9 | 10 | [node name="CreditsLabel" parent="ScrollContainer/VBoxContainer" index="1"] 11 | text = "[center][font_size=48]Collaborators[/font_size] 12 | 13 | [font_size=32]Role[/font_size] 14 | Person 1 15 | Person 2 16 | [url=]Person w/ Link[/url] 17 | 18 | 19 | [font_size=48]Sourced / Unaffiliated[/font_size] 20 | [font_size=32]Asset Type[/font_size] 21 | [font_size=24]Use Case[/font_size] 22 | Author: [url=]Name[/url] 23 | Source: [url=]Domain : webpage.html[/url] 24 | License: [url=]License[/url] 25 | 26 | [font_size=24]Godot Engine Logo[/font_size] 27 | Author: Andrea Calabró 28 | Source: [url=https://godotengine.org/press/]godotengine.org : press[/url] 29 | License: [url=https://github.com/godotengine/godot/blob/master/LOGO_LICENSE.txt]CC BY 4.0 International[/url] 30 | 31 | [font_size=48]Tools[/font_size] 32 | [font_size=24]Godot[/font_size] 33 | Author: [url=https://godotengine.org/contact]Juan Linietsky, Ariel Manzur, and contributors[/url] 34 | Source: [url=https://godotengine.org/]godotengine.org[/url] 35 | License: [url=https://github.com/godotengine/godot/blob/master/LICENSE.txt]MIT License[/url] 36 | 37 | [font_size=24]Git[/font_size] 38 | Author: [url=https://github.com/torvalds]Linus Torvalds[/url] 39 | Source: [url=https://git-scm.com/downloads]git-scm.com[/url] 40 | License: [url=https://opensource.org/licenses/GPL-2.0]GNU General Public License version 2[/url] 41 | 42 | [font_size=24]Godot Menus Template[/font_size] 43 | Author: [url=https://github.com/Maaack/Godot-Menus-Template/graphs/contributors]Marek Belski and contributors[/url] 44 | Source: [url=https://github.com/Maaack/Godot-Menus-Template]github: Godot-Menus-Template[/url] 45 | License: [url=LICENSE.txt]MIT License[/url] 46 | [/center]" 47 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/examples/scenes/end_credits/end_credits.gd: -------------------------------------------------------------------------------- 1 | @tool 2 | extends Credits 3 | 4 | @export_file("*.tscn") var main_menu_scene : String 5 | @onready var init_mouse_filter : MouseFilter = mouse_filter 6 | 7 | func _end_reached() -> void: 8 | %EndMessagePanel.show() 9 | mouse_filter = Control.MOUSE_FILTER_STOP 10 | super._end_reached() 11 | 12 | func _on_MenuButton_pressed() -> void: 13 | SceneLoader.load_scene(main_menu_scene) 14 | 15 | func _on_ExitButton_pressed() -> void: 16 | get_tree().quit() 17 | 18 | func _ready() -> void: 19 | if main_menu_scene.is_empty(): 20 | %MenuButton.hide() 21 | if OS.has_feature("web"): 22 | %ExitButton.hide() 23 | super._ready() 24 | 25 | func reset() -> void: 26 | super.reset() 27 | %EndMessagePanel.hide() 28 | mouse_filter = init_mouse_filter 29 | 30 | func _unhandled_input(event : InputEvent) -> void: 31 | if not enabled: return 32 | if event.is_action_pressed("ui_cancel"): 33 | if not %EndMessagePanel.visible: 34 | _end_reached() 35 | else: 36 | get_tree().quit() 37 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/examples/scenes/end_credits/end_credits.gd.uid: -------------------------------------------------------------------------------- 1 | uid://cn3sc0vsd5b1r 2 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/examples/scenes/loading_screen/loading_screen.gd: -------------------------------------------------------------------------------- 1 | extends LoadingScreen 2 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/examples/scenes/loading_screen/loading_screen.gd.uid: -------------------------------------------------------------------------------- 1 | uid://mav2omdpqfbe 2 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/examples/scenes/loading_screen/loading_screen.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=3 format=3 uid="uid://ddeagbc67f52m"] 2 | 3 | [ext_resource type="PackedScene" uid="uid://cd0jbh4metflb" path="res://addons/maaacks_menus_template/base/scenes/loading_screen/loading_screen.tscn" id="1_2dnq1"] 4 | [ext_resource type="Script" uid="uid://mav2omdpqfbe" path="res://addons/maaacks_menus_template/examples/scenes/loading_screen/loading_screen.gd" id="2_5h2y6"] 5 | 6 | [node name="LoadingScreen" instance=ExtResource("1_2dnq1")] 7 | script = ExtResource("2_5h2y6") 8 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/examples/scenes/loading_screen/loading_screen_with_shader_caching.gd.uid: -------------------------------------------------------------------------------- 1 | uid://ymuduuk7envr 2 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/examples/scenes/loading_screen/loading_screen_with_shader_caching.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=4 format=3 uid="uid://dvp3b2tdsbtmo"] 2 | 3 | [ext_resource type="PackedScene" uid="uid://cd0jbh4metflb" path="res://addons/maaacks_menus_template/base/scenes/loading_screen/loading_screen.tscn" id="1_4k0mc"] 4 | [ext_resource type="Script" uid="uid://ymuduuk7envr" path="res://addons/maaacks_menus_template/examples/scenes/loading_screen/loading_screen_with_shader_caching.gd" id="2_3xu6h"] 5 | 6 | [sub_resource type="QuadMesh" id="QuadMesh_klnwy"] 7 | 8 | [node name="LoadingScreen" instance=ExtResource("1_4k0mc")] 9 | script = ExtResource("2_3xu6h") 10 | _spatial_shader_material_dir = "" 11 | _cache_shaders_scene = "res://addons/maaacks_menus_template/examples/scenes/game_scene/game_ui.tscn" 12 | _mesh = SubResource("QuadMesh_klnwy") 13 | _matching_extensions = Array[String]([".tres", ".material", ".res"]) 14 | _ignore_subfolders = Array[String]([".", ".."]) 15 | _shader_delay_timer = 0.1 16 | 17 | [node name="SpatialShaderTypeCaches" type="Node3D" parent="." index="2"] 18 | unique_name_in_owner = true 19 | 20 | [node name="Camera3D" type="Camera3D" parent="SpatialShaderTypeCaches" index="0"] 21 | transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 1.408) 22 | current = true 23 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/examples/scenes/menus/main_menu/main_menu.gd: -------------------------------------------------------------------------------- 1 | extends MainMenu 2 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/examples/scenes/menus/main_menu/main_menu.gd.uid: -------------------------------------------------------------------------------- 1 | uid://bdet8115mn02d 2 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/examples/scenes/menus/main_menu/main_menu.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=5 format=3 uid="uid://byvydukidk6i2"] 2 | 3 | [ext_resource type="PackedScene" uid="uid://c6k5nnpbypshi" path="res://addons/maaacks_menus_template/base/scenes/menus/main_menu/main_menu.tscn" id="1_pss7b"] 4 | [ext_resource type="Script" uid="uid://bdet8115mn02d" path="res://addons/maaacks_menus_template/examples/scenes/menus/main_menu/main_menu.gd" id="2_lk0wa"] 5 | [ext_resource type="PackedScene" uid="uid://bdvdf5v87mmrr" path="res://addons/maaacks_menus_template/examples/scenes/menus/options_menu/master_options_menu_with_tabs.tscn" id="3_lqjmk"] 6 | [ext_resource type="PackedScene" uid="uid://c1g50h2avck3w" path="res://addons/maaacks_menus_template/examples/scenes/credits/credits.tscn" id="3_vmius"] 7 | 8 | [node name="MainMenu" instance=ExtResource("1_pss7b")] 9 | script = ExtResource("2_lk0wa") 10 | options_packed_scene = ExtResource("3_lqjmk") 11 | credits_packed_scene = ExtResource("3_vmius") 12 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/examples/scenes/menus/main_menu/main_menu_with_animations.gd: -------------------------------------------------------------------------------- 1 | extends MainMenu 2 | 3 | var animation_state_machine : AnimationNodeStateMachinePlayback 4 | 5 | func intro_done() -> void: 6 | animation_state_machine.travel("OpenMainMenu") 7 | 8 | func _is_in_intro() -> bool: 9 | return animation_state_machine.get_current_node() == "Intro" 10 | 11 | func _event_is_mouse_button_released(event : InputEvent) -> bool: 12 | return event is InputEventMouseButton and not event.is_pressed() 13 | 14 | func _event_skips_intro(event : InputEvent) -> bool: 15 | return event.is_action_released("ui_accept") or \ 16 | event.is_action_released("ui_select") or \ 17 | event.is_action_released("ui_cancel") or \ 18 | _event_is_mouse_button_released(event) 19 | 20 | func _open_sub_menu(menu : Node) -> void: 21 | super._open_sub_menu(menu) 22 | animation_state_machine.travel("OpenSubMenu") 23 | 24 | func _close_sub_menu() -> void: 25 | super._close_sub_menu() 26 | animation_state_machine.travel("OpenMainMenu") 27 | 28 | func _input(event : InputEvent) -> void: 29 | if _is_in_intro() and _event_skips_intro(event): 30 | intro_done() 31 | return 32 | super._input(event) 33 | 34 | func _ready() -> void: 35 | super._ready() 36 | animation_state_machine = $MenuAnimationTree.get("parameters/playback") 37 | 38 | func _on_continue_game_button_pressed() -> void: 39 | load_game_scene() 40 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/examples/scenes/menus/main_menu/main_menu_with_animations.gd.uid: -------------------------------------------------------------------------------- 1 | uid://b5qy5nr1wivs4 2 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/examples/scenes/menus/options_menu/audio/audio_input_option_control.gd: -------------------------------------------------------------------------------- 1 | @tool 2 | extends ListOptionControl 3 | 4 | func _set_input_device() -> void: 5 | var current_setting : Variant = _get_setting(default_value) 6 | if current_setting is bool: 7 | current_setting = &"Default" 8 | AudioServer.input_device = _get_setting(default_value) 9 | 10 | func _add_microphone_audio_stream() -> void: 11 | var instance := AudioStreamPlayer.new() 12 | instance.stream = AudioStreamMicrophone.new() 13 | instance.autoplay = true 14 | add_child.call_deferred(instance) 15 | instance.ready.connect(_set_input_device) 16 | 17 | func _ready() -> void: 18 | if ProjectSettings.get_setting("audio/driver/enable_input", false): 19 | if AudioServer.input_device.is_empty(): 20 | _add_microphone_audio_stream() 21 | else: 22 | _set_input_device() 23 | if not Engine.is_editor_hint(): 24 | option_values = AudioServer.get_input_device_list() 25 | else: 26 | hide() 27 | super._ready() 28 | 29 | func _on_setting_changed(value : Variant) -> void: 30 | if value >= option_values.size(): return 31 | AudioServer.input_device = option_values[value] 32 | super._on_setting_changed(value) 33 | 34 | func _value_title_map(value : Variant) -> String: 35 | if value is String: 36 | return value 37 | else: 38 | return super._value_title_map(value) 39 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/examples/scenes/menus/options_menu/audio/audio_input_option_control.gd.uid: -------------------------------------------------------------------------------- 1 | uid://bwiyqjcudqioy 2 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/examples/scenes/menus/options_menu/audio/audio_input_option_control.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=3 format=3 uid="uid://dxj1gsxtlp6v0"] 2 | 3 | [ext_resource type="PackedScene" uid="uid://b6bl3n5mp3m1e" path="res://addons/maaacks_menus_template/base/scenes/menus/options_menu/option_control/list_option_control.tscn" id="1_0vgeo"] 4 | [ext_resource type="Script" uid="uid://bwiyqjcudqioy" path="res://addons/maaacks_menus_template/examples/scenes/menus/options_menu/audio/audio_input_option_control.gd" id="2_6qeue"] 5 | 6 | [node name="AudioInputOptionControl" instance=ExtResource("1_0vgeo")] 7 | script = ExtResource("2_6qeue") 8 | option_name = "Input Device" 9 | option_section = 2 10 | key = "InputDevice" 11 | section = "AudioSettings" 12 | property_type = 4 13 | 14 | [node name="OptionLabel" parent="." index="0"] 15 | text = "Input Device :" 16 | 17 | [node name="OptionButton" parent="." index="1"] 18 | size_flags_horizontal = 3 19 | text_overrun_behavior = 1 20 | clip_text = true 21 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/examples/scenes/menus/options_menu/audio/audio_options_menu.gd: -------------------------------------------------------------------------------- 1 | extends AudioOptionsMenu 2 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/examples/scenes/menus/options_menu/audio/audio_options_menu.gd.uid: -------------------------------------------------------------------------------- 1 | uid://b1j3xptvj7fnr 2 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/examples/scenes/menus/options_menu/audio/audio_options_menu.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=4 format=3 uid="uid://dmgla7rq1g2cc"] 2 | 3 | [ext_resource type="PackedScene" uid="uid://c8vnncjwqcpab" path="res://addons/maaacks_menus_template/base/scenes/menus/options_menu/audio/audio_options_menu.tscn" id="1_ro573"] 4 | [ext_resource type="Script" uid="uid://b1j3xptvj7fnr" path="res://addons/maaacks_menus_template/examples/scenes/menus/options_menu/audio/audio_options_menu.gd" id="2_g4nfi"] 5 | [ext_resource type="PackedScene" uid="uid://dxj1gsxtlp6v0" path="res://addons/maaacks_menus_template/examples/scenes/menus/options_menu/audio/audio_input_option_control.tscn" id="3_orobk"] 6 | 7 | [node name="Audio" instance=ExtResource("1_ro573")] 8 | script = ExtResource("2_g4nfi") 9 | 10 | [node name="AudioInputOptionControl" parent="VBoxContainer" index="2" instance=ExtResource("3_orobk")] 11 | layout_mode = 2 12 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/examples/scenes/menus/options_menu/input/input_extras_menu.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=3 format=3 uid="uid://b24sg04dn21ke"] 2 | 3 | [ext_resource type="Script" uid="uid://1nf36h0gms3q" path="res://addons/maaacks_menus_template/base/scripts/capture_focus.gd" id="1_g6yfe"] 4 | [ext_resource type="PackedScene" uid="uid://cl416gdb1fgwr" path="res://addons/maaacks_menus_template/base/scenes/menus/options_menu/option_control/slider_option_control.tscn" id="2_mphg3"] 5 | 6 | [node name="Inputs" type="MarginContainer"] 7 | anchors_preset = 15 8 | anchor_right = 1.0 9 | anchor_bottom = 1.0 10 | grow_horizontal = 2 11 | grow_vertical = 2 12 | size_flags_horizontal = 3 13 | size_flags_vertical = 3 14 | 15 | [node name="VBoxContainer" type="VBoxContainer" parent="."] 16 | layout_mode = 2 17 | size_flags_horizontal = 4 18 | size_flags_vertical = 4 19 | theme_override_constants/separation = 8 20 | script = ExtResource("1_g6yfe") 21 | search_depth = 5 22 | 23 | [node name="MarginContainer" type="MarginContainer" parent="VBoxContainer"] 24 | layout_mode = 2 25 | theme_override_constants/margin_top = 32 26 | theme_override_constants/margin_bottom = 32 27 | 28 | [node name="VBoxContainer" type="VBoxContainer" parent="VBoxContainer/MarginContainer"] 29 | layout_mode = 2 30 | size_flags_vertical = 3 31 | theme_override_constants/separation = 8 32 | alignment = 1 33 | 34 | [node name="MouseSensitivityControl" parent="VBoxContainer/MarginContainer/VBoxContainer" instance=ExtResource("2_mphg3")] 35 | layout_mode = 2 36 | option_name = "Mouse Sensitivity" 37 | option_section = 1 38 | key = "MouseSensitivity" 39 | section = "InputSettings" 40 | 41 | [node name="OptionLabel" parent="VBoxContainer/MarginContainer/VBoxContainer/MouseSensitivityControl" index="0"] 42 | text = "Mouse Sensitivity :" 43 | 44 | [node name="HSlider" parent="VBoxContainer/MarginContainer/VBoxContainer/MouseSensitivityControl" index="1"] 45 | min_value = 0.25 46 | max_value = 2.0 47 | tick_count = 8 48 | 49 | [node name="JoypadSensitivityControl" parent="VBoxContainer/MarginContainer/VBoxContainer" instance=ExtResource("2_mphg3")] 50 | layout_mode = 2 51 | option_name = "Joypad Sensitivity" 52 | option_section = 1 53 | key = "JoypadSensitivity" 54 | section = "InputSettings" 55 | 56 | [node name="OptionLabel" parent="VBoxContainer/MarginContainer/VBoxContainer/JoypadSensitivityControl" index="0"] 57 | text = "Joypad Sensitivity :" 58 | 59 | [node name="HSlider" parent="VBoxContainer/MarginContainer/VBoxContainer/JoypadSensitivityControl" index="1"] 60 | min_value = 0.25 61 | max_value = 2.0 62 | tick_count = 8 63 | 64 | [editable path="VBoxContainer/MarginContainer/VBoxContainer/MouseSensitivityControl"] 65 | [editable path="VBoxContainer/MarginContainer/VBoxContainer/JoypadSensitivityControl"] 66 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/examples/scenes/menus/options_menu/input/input_options_menu.gd: -------------------------------------------------------------------------------- 1 | @tool 2 | extends InputOptionsMenu 3 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/examples/scenes/menus/options_menu/input/input_options_menu.gd.uid: -------------------------------------------------------------------------------- 1 | uid://drgrr8tqd11sm 2 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/examples/scenes/menus/options_menu/input/input_options_menu.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=3 format=3 uid="uid://1e3vf4u3brfm"] 2 | 3 | [ext_resource type="PackedScene" uid="uid://dp3rgqaehb3xu" path="res://addons/maaacks_menus_template/base/scenes/menus/options_menu/input/input_options_menu.tscn" id="1_b6ygu"] 4 | [ext_resource type="Script" uid="uid://drgrr8tqd11sm" path="res://addons/maaacks_menus_template/examples/scenes/menus/options_menu/input/input_options_menu.gd" id="2_gjulr"] 5 | 6 | [node name="Controls" instance=ExtResource("1_b6ygu")] 7 | script = ExtResource("2_gjulr") 8 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/examples/scenes/menus/options_menu/input/input_options_menu_with_mouse_sensitivity.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=4 format=3 uid="uid://b4r3gcnm31uo6"] 2 | 3 | [ext_resource type="PackedScene" uid="uid://dp3rgqaehb3xu" path="res://addons/maaacks_menus_template/base/scenes/menus/options_menu/input/input_options_menu.tscn" id="1_pi4g6"] 4 | [ext_resource type="PackedScene" uid="uid://cl416gdb1fgwr" path="res://addons/maaacks_menus_template/base/scenes/menus/options_menu/option_control/slider_option_control.tscn" id="2_ax2ge"] 5 | [ext_resource type="Script" uid="uid://drgrr8tqd11sm" path="res://addons/maaacks_menus_template/examples/scenes/menus/options_menu/input/input_options_menu.gd" id="2_diymx"] 6 | 7 | [node name="Controls" instance=ExtResource("1_pi4g6")] 8 | script = ExtResource("2_diymx") 9 | 10 | [node name="VBoxContainer" parent="." index="0"] 11 | theme_override_constants/separation = 16 12 | 13 | [node name="MarginContainer" type="MarginContainer" parent="VBoxContainer" index="0"] 14 | layout_mode = 2 15 | theme_override_constants/margin_top = 32 16 | theme_override_constants/margin_bottom = 32 17 | 18 | [node name="VBoxContainer" type="VBoxContainer" parent="VBoxContainer/MarginContainer" index="0"] 19 | layout_mode = 2 20 | size_flags_vertical = 3 21 | alignment = 1 22 | 23 | [node name="MouseSensitivityControl" parent="VBoxContainer/MarginContainer/VBoxContainer" index="0" instance=ExtResource("2_ax2ge")] 24 | layout_mode = 2 25 | option_name = "Mouse Sensitivity" 26 | option_section = 1 27 | key = "MouseSensitivity" 28 | section = "InputSettings" 29 | 30 | [node name="OptionLabel" parent="VBoxContainer/MarginContainer/VBoxContainer/MouseSensitivityControl" index="0"] 31 | text = "Mouse Sensitivity :" 32 | 33 | [node name="HSlider" parent="VBoxContainer/MarginContainer/VBoxContainer/MouseSensitivityControl" index="1"] 34 | min_value = 0.25 35 | max_value = 2.0 36 | tick_count = 8 37 | 38 | [node name="HSeparator" type="HSeparator" parent="VBoxContainer" index="1"] 39 | layout_mode = 2 40 | 41 | [editable path="VBoxContainer/MarginContainer/VBoxContainer/MouseSensitivityControl"] 42 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/examples/scenes/menus/options_menu/master_options_menu.gd: -------------------------------------------------------------------------------- 1 | extends MasterOptionsMenu 2 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/examples/scenes/menus/options_menu/master_options_menu.gd.uid: -------------------------------------------------------------------------------- 1 | uid://lxt3mcgcptek 2 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/examples/scenes/menus/options_menu/master_options_menu.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=3 format=3 uid="uid://c3s46qrj7m87p"] 2 | 3 | [ext_resource type="PackedScene" uid="uid://bvwl11s2p0hd" path="res://addons/maaacks_menus_template/base/scenes/menus/options_menu/master_options_menu.tscn" id="1_kgc1h"] 4 | [ext_resource type="Script" uid="uid://lxt3mcgcptek" path="res://addons/maaacks_menus_template/examples/scenes/menus/options_menu/master_options_menu.gd" id="2_4n0ab"] 5 | 6 | [node name="MasterOptionsMenu" instance=ExtResource("1_kgc1h")] 7 | script = ExtResource("2_4n0ab") 8 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/examples/scenes/menus/options_menu/master_options_menu_with_tabs.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=7 format=3 uid="uid://bdvdf5v87mmrr"] 2 | 3 | [ext_resource type="PackedScene" uid="uid://bvwl11s2p0hd" path="res://addons/maaacks_menus_template/base/scenes/menus/options_menu/master_options_menu.tscn" id="1_u1u8e"] 4 | [ext_resource type="Script" uid="uid://lxt3mcgcptek" path="res://addons/maaacks_menus_template/examples/scenes/menus/options_menu/master_options_menu.gd" id="2_etesu"] 5 | [ext_resource type="PackedScene" uid="uid://1e3vf4u3brfm" path="res://addons/maaacks_menus_template/examples/scenes/menus/options_menu/input/input_options_menu.tscn" id="3_cewlf"] 6 | [ext_resource type="PackedScene" uid="uid://dmgla7rq1g2cc" path="res://addons/maaacks_menus_template/examples/scenes/menus/options_menu/audio/audio_options_menu.tscn" id="3_vs2ne"] 7 | [ext_resource type="PackedScene" uid="uid://b24sg04dn21ke" path="res://addons/maaacks_menus_template/examples/scenes/menus/options_menu/input/input_extras_menu.tscn" id="4_mjf18"] 8 | [ext_resource type="PackedScene" uid="uid://cck3omvlkhpix" path="res://addons/maaacks_menus_template/examples/scenes/menus/options_menu/video/video_options_menu_with_extras.tscn" id="4_v3ewd"] 9 | 10 | [node name="MasterOptionsMenu" instance=ExtResource("1_u1u8e")] 11 | script = ExtResource("2_etesu") 12 | 13 | [node name="TabContainer" parent="." index="0"] 14 | current_tab = 0 15 | 16 | [node name="Controls" parent="TabContainer" index="1" instance=ExtResource("3_cewlf")] 17 | layout_mode = 2 18 | metadata/_tab_index = 0 19 | 20 | [node name="Inputs" parent="TabContainer" index="2" instance=ExtResource("4_mjf18")] 21 | visible = false 22 | layout_mode = 2 23 | metadata/_tab_index = 1 24 | 25 | [node name="Audio" parent="TabContainer" index="3" instance=ExtResource("3_vs2ne")] 26 | visible = false 27 | layout_mode = 2 28 | metadata/_tab_index = 2 29 | 30 | [node name="Video" parent="TabContainer" index="4" instance=ExtResource("4_v3ewd")] 31 | visible = false 32 | layout_mode = 2 33 | metadata/_tab_index = 3 34 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/examples/scenes/menus/options_menu/mini_options_menu.gd: -------------------------------------------------------------------------------- 1 | extends MiniOptionsMenu 2 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/examples/scenes/menus/options_menu/mini_options_menu.gd.uid: -------------------------------------------------------------------------------- 1 | uid://c0jjk82iuuyh3 2 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/examples/scenes/menus/options_menu/mini_options_menu.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=3 format=3 uid="uid://c6obwfb7wbibn"] 2 | 3 | [ext_resource type="PackedScene" uid="uid://vh1ucj2rfbby" path="res://addons/maaacks_menus_template/base/scenes/menus/options_menu/mini_options_menu.tscn" id="1_f2l25"] 4 | [ext_resource type="Script" uid="uid://c0jjk82iuuyh3" path="res://addons/maaacks_menus_template/examples/scenes/menus/options_menu/mini_options_menu.gd" id="2_hcx71"] 5 | 6 | [node name="MiniOptionsMenu" instance=ExtResource("1_f2l25")] 7 | script = ExtResource("2_hcx71") 8 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/examples/scenes/menus/options_menu/mini_options_menu_with_reset.gd.uid: -------------------------------------------------------------------------------- 1 | uid://bt52j7aly5clg 2 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/examples/scenes/menus/options_menu/video/video_options_menu.gd: -------------------------------------------------------------------------------- 1 | extends VideoOptionsMenu 2 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/examples/scenes/menus/options_menu/video/video_options_menu.gd.uid: -------------------------------------------------------------------------------- 1 | uid://cgn8jg7g5ylr 2 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/examples/scenes/menus/options_menu/video/video_options_menu.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=3 format=3 uid="uid://b8kb81us6g3kr"] 2 | 3 | [ext_resource type="PackedScene" uid="uid://b2numvphf2kau" path="res://addons/maaacks_menus_template/base/scenes/menus/options_menu/video/video_options_menu.tscn" id="1_4gigb"] 4 | [ext_resource type="Script" uid="uid://cgn8jg7g5ylr" path="res://addons/maaacks_menus_template/examples/scenes/menus/options_menu/video/video_options_menu.gd" id="2_v2jlu"] 5 | 6 | [node name="Video" instance=ExtResource("1_4gigb")] 7 | script = ExtResource("2_v2jlu") 8 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/examples/scenes/menus/options_menu/video/video_options_menu_with_extras.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=4 format=3 uid="uid://cck3omvlkhpix"] 2 | 3 | [ext_resource type="PackedScene" uid="uid://b2numvphf2kau" path="res://addons/maaacks_menus_template/base/scenes/menus/options_menu/video/video_options_menu.tscn" id="1_nrerc"] 4 | [ext_resource type="Script" uid="uid://cgn8jg7g5ylr" path="res://addons/maaacks_menus_template/examples/scenes/menus/options_menu/video/video_options_menu.gd" id="2_qtdes"] 5 | [ext_resource type="PackedScene" uid="uid://b6bl3n5mp3m1e" path="res://addons/maaacks_menus_template/base/scenes/menus/options_menu/option_control/list_option_control.tscn" id="2_tyiki"] 6 | 7 | [node name="Video" instance=ExtResource("1_nrerc")] 8 | script = ExtResource("2_qtdes") 9 | 10 | [node name="AntiAliasingControl" parent="VBoxContainer" index="3" instance=ExtResource("2_tyiki")] 11 | layout_mode = 2 12 | lock_titles = true 13 | option_values = [0, 1, 2, 3] 14 | option_titles = Array[String](["Disabled (Fastest)", "2x", "4x", "8x (Slowest)"]) 15 | option_name = "Anti-Aliasing" 16 | option_section = 3 17 | key = "Anti-aliasing" 18 | section = "VideoSettings" 19 | property_type = 2 20 | default_value = 0 21 | 22 | [node name="CameraShakeControl" parent="VBoxContainer" index="4" instance=ExtResource("2_tyiki")] 23 | visible = false 24 | layout_mode = 2 25 | lock_titles = true 26 | option_values = [1.0, 0.75, 0.5, 0.0] 27 | option_titles = Array[String](["Normal", "Reduced", "Minimal", "None"]) 28 | option_name = "Camera Shake" 29 | option_section = 3 30 | key = "CameraShake" 31 | section = "VideoSettings" 32 | property_type = 3 33 | default_value = 1.0 34 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/examples/scenes/opening/opening.gd: -------------------------------------------------------------------------------- 1 | extends "res://addons/maaacks_menus_template/base/scenes/opening/opening.gd" 2 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/examples/scenes/opening/opening.gd.uid: -------------------------------------------------------------------------------- 1 | uid://upkolvghgj67 2 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/examples/scenes/opening/opening.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=3 format=3 uid="uid://b8u5wed0pve26"] 2 | 3 | [ext_resource type="PackedScene" uid="uid://sikc02ddepyt" path="res://addons/maaacks_menus_template/base/scenes/opening/opening.tscn" id="1_jidei"] 4 | [ext_resource type="Script" uid="uid://upkolvghgj67" path="res://addons/maaacks_menus_template/examples/scenes/opening/opening.gd" id="2_mjcrw"] 5 | 6 | [node name="Opening" instance=ExtResource("1_jidei")] 7 | script = ExtResource("2_mjcrw") 8 | next_scene = "res://addons/maaacks_menus_template/examples/scenes/menus/main_menu/main_menu_with_animations.tscn" 9 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/examples/scenes/opening/opening_with_logo.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=4 format=3 uid="uid://cyqy6dvynho67"] 2 | 3 | [ext_resource type="PackedScene" uid="uid://sikc02ddepyt" path="res://addons/maaacks_menus_template/base/scenes/opening/opening.tscn" id="1_tjbcx"] 4 | [ext_resource type="Script" uid="uid://upkolvghgj67" path="res://addons/maaacks_menus_template/examples/scenes/opening/opening.gd" id="2_up6er"] 5 | [ext_resource type="Texture2D" uid="uid://5rltpvy6c5b" path="res://addons/maaacks_menus_template/examples/assets/godot_engine_logo/logo_vertical_color_dark.png" id="3_powqu"] 6 | 7 | [node name="Opening" instance=ExtResource("1_tjbcx")] 8 | script = ExtResource("2_up6er") 9 | next_scene = "res://addons/maaacks_menus_template/examples/scenes/menus/main_menu/main_menu_with_animations.tscn" 10 | images = Array[Texture2D]([ExtResource("3_powqu")]) 11 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/examples/scenes/overlaid_menus/mini_options_overlaid_menu.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=3 format=3 uid="uid://65shnbd3xtxu"] 2 | 3 | [ext_resource type="PackedScene" uid="uid://cikf3o5omnunl" path="res://addons/maaacks_menus_template/base/scenes/overlaid_menu/menus/mini_options_overlaid_menu.tscn" id="1_nwj8l"] 4 | [ext_resource type="PackedScene" uid="uid://c6obwfb7wbibn" path="res://addons/maaacks_menus_template/examples/scenes/menus/options_menu/mini_options_menu.tscn" id="2_0xks0"] 5 | 6 | [node name="MiniOptionsOverlaidMenu" instance=ExtResource("1_nwj8l")] 7 | menu_scene = ExtResource("2_0xks0") 8 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/examples/scenes/overlaid_menus/overlaid_menu.gd: -------------------------------------------------------------------------------- 1 | extends OverlaidMenu 2 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/examples/scenes/overlaid_menus/overlaid_menu.gd.uid: -------------------------------------------------------------------------------- 1 | uid://cgqc81uh1jqwo 2 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/examples/scenes/overlaid_menus/overlaid_menu.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=3 format=3 uid="uid://bhgeiy1ll18mx"] 2 | 3 | [ext_resource type="PackedScene" uid="uid://wny2d8dvp3ok" path="res://addons/maaacks_menus_template/base/scenes/overlaid_menu/overlaid_menu.tscn" id="1_rymwu"] 4 | [ext_resource type="Script" uid="uid://cgqc81uh1jqwo" path="res://addons/maaacks_menus_template/examples/scenes/overlaid_menus/overlaid_menu.gd" id="2_5khjm"] 5 | 6 | [node name="OverlaidMenu" instance=ExtResource("1_rymwu")] 7 | script = ExtResource("2_5khjm") 8 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/examples/scenes/overlaid_menus/overlaid_menu_container.gd: -------------------------------------------------------------------------------- 1 | extends OverlaidMenuContainer 2 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/examples/scenes/overlaid_menus/overlaid_menu_container.gd.uid: -------------------------------------------------------------------------------- 1 | uid://beelg886sj3ws 2 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/examples/scenes/overlaid_menus/overlaid_menu_container.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=3 format=3 uid="uid://b8d87jvjhgdbo"] 2 | 3 | [ext_resource type="PackedScene" uid="uid://bqqngki8bm3iq" path="res://addons/maaacks_menus_template/base/scenes/overlaid_menu/overlaid_menu_container.tscn" id="1_348qb"] 4 | [ext_resource type="Script" uid="uid://beelg886sj3ws" path="res://addons/maaacks_menus_template/examples/scenes/overlaid_menus/overlaid_menu_container.gd" id="2_y3tb4"] 5 | 6 | [node name="OverlaidMenuContainer" instance=ExtResource("1_348qb")] 7 | script = ExtResource("2_y3tb4") 8 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/examples/scenes/overlaid_menus/pause_menu.gd: -------------------------------------------------------------------------------- 1 | extends PauseMenu 2 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/examples/scenes/overlaid_menus/pause_menu.gd.uid: -------------------------------------------------------------------------------- 1 | uid://4ieefgkpqugj 2 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/examples/scenes/overlaid_menus/pause_menu.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=4 format=3 uid="uid://cnmu4k37qncn8"] 2 | 3 | [ext_resource type="PackedScene" uid="uid://b5cd6sa8qq4vc" path="res://addons/maaacks_menus_template/base/scenes/overlaid_menu/menus/pause_menu.tscn" id="1_fd1e4"] 4 | [ext_resource type="Script" uid="uid://4ieefgkpqugj" path="res://addons/maaacks_menus_template/examples/scenes/overlaid_menus/pause_menu.gd" id="2_o57rn"] 5 | [ext_resource type="PackedScene" uid="uid://65shnbd3xtxu" path="res://addons/maaacks_menus_template/examples/scenes/overlaid_menus/mini_options_overlaid_menu.tscn" id="3_hewsk"] 6 | 7 | [node name="PauseMenu" instance=ExtResource("1_fd1e4")] 8 | script = ExtResource("2_o57rn") 9 | options_packed_scene = ExtResource("3_hewsk") 10 | main_menu_scene = "res://addons/maaacks_menus_template/examples/scenes/menus/main_menu/main_menu_with_animations.tscn" 11 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/installer/check_plugin_version.gd: -------------------------------------------------------------------------------- 1 | @tool 2 | extends Node 3 | 4 | signal new_version_detected(version: String) 5 | signal versions_matched 6 | signal failed 7 | 8 | const API_RELEASES_URL := "https://api.github.com/repos/%s/%s/releases" 9 | 10 | @export var plugin_directory : String 11 | @export var plugin_github_url : String : 12 | set(value): 13 | plugin_github_url = value 14 | _update_urls() 15 | @export_group("Advanced") 16 | @export var auto_start : bool = false 17 | @export var default_version : String = "0.0.0" 18 | @export var replace_tag_name : String = "v" 19 | @export var _test_action : bool = false : 20 | set(value): 21 | if value and Engine.is_editor_hint(): 22 | compare_versions() 23 | 24 | @onready var _api_client : APIClient = $APIClient 25 | 26 | var _zipball_url : String 27 | 28 | func get_plugin_version() -> String : 29 | if not plugin_directory.is_empty(): 30 | for enabled_plugin in ProjectSettings.get_setting("editor_plugins/enabled"): 31 | if enabled_plugin.contains(plugin_directory): 32 | var config := ConfigFile.new() 33 | var error = config.load(enabled_plugin) 34 | if error != OK: 35 | return default_version 36 | return config.get_value("plugin", "version", default_version) 37 | return default_version 38 | 39 | func _update_urls() -> void: 40 | if plugin_github_url.is_empty(): return 41 | if _api_client == null: return 42 | var regex := RegEx.create_from_string("https:\\/\\/github\\.com\\/([\\w-]+)\\/([\\w-]+)\\/*") 43 | var regex_match := regex.search(plugin_github_url) 44 | if regex_match == null: return 45 | var username := regex_match.get_string(1) 46 | var repository := regex_match.get_string(2) 47 | _api_client.api_url = API_RELEASES_URL % [username, repository] 48 | 49 | func _on_api_client_request_failed(error) -> void: 50 | failed.emit() 51 | queue_free() 52 | 53 | func _on_api_client_response_received(response_body) -> void: 54 | if response_body is not Array: 55 | failed.emit() 56 | queue_free() 57 | return 58 | var latest_release : Dictionary = response_body.front() 59 | var tag_name := default_version 60 | if latest_release.has("tag_name"): 61 | tag_name = latest_release["tag_name"] 62 | if replace_tag_name: 63 | tag_name = tag_name.replacen(replace_tag_name, "") 64 | var current_tag_name = get_plugin_version() 65 | if tag_name != current_tag_name: 66 | new_version_detected.emit(tag_name) 67 | else: 68 | versions_matched.emit() 69 | queue_free() 70 | 71 | func compare_versions() -> void: 72 | _api_client.request() 73 | 74 | func _ready() -> void: 75 | if auto_start: 76 | compare_versions() 77 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/installer/check_plugin_version.gd.uid: -------------------------------------------------------------------------------- 1 | uid://ye1geusqp1gd 2 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/installer/check_plugin_version.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=3 format=3 uid="uid://b5m61gpvjy1ao"] 2 | 3 | [ext_resource type="Script" uid="uid://ye1geusqp1gd" path="res://addons/maaacks_menus_template/installer/check_plugin_version.gd" id="1_aqelj"] 4 | [ext_resource type="PackedScene" uid="uid://drhhakm62vjsy" path="res://addons/maaacks_menus_template/base/scenes/utilities/api_client.tscn" id="2_5myc0"] 5 | 6 | [node name="CheckPluginVersion" type="Node"] 7 | script = ExtResource("1_aqelj") 8 | plugin_directory = "maaacks_menus_template" 9 | plugin_github_url = "https://github.com/Maaack/Godot-Menus-Template" 10 | 11 | [node name="APIClient" parent="." instance=ExtResource("2_5myc0")] 12 | api_url = "https://api.github.com/repos/Maaack/Godot-Menus-Template/releases" 13 | request_method = 0 14 | 15 | [connection signal="request_failed" from="APIClient" to="." method="_on_api_client_request_failed"] 16 | [connection signal="response_received" from="APIClient" to="." method="_on_api_client_response_received"] 17 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/installer/copy_confirmation_dialog.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene format=3 uid="uid://cyx4i4v30bw4o"] 2 | 3 | [node name="CopyConfirmationDialog" type="ConfirmationDialog"] 4 | title = "Copy Examples" 5 | initial_position = 2 6 | size = Vector2i(1024, 148) 7 | visible = true 8 | exclusive = false 9 | ok_button_text = "Yes" 10 | dialog_text = "Plugin enabled. It is recommended to copy the example scenes to a destination outside of the addons/ folder before editing them. 11 | 12 | Would you like to copy the examples now?" 13 | dialog_autowrap = true 14 | cancel_button_text = "No" 15 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/installer/delete_examples_confirmation_dialog.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene format=3 uid="uid://vgdxevcnv0vx"] 2 | 3 | [node name="DeleteExamplesConfirmationDialog" type="ConfirmationDialog"] 4 | title = "Delete Source Examples" 5 | initial_position = 2 6 | size = Vector2i(1024, 256) 7 | visible = true 8 | ok_button_text = "Yes" 9 | dialog_text = "If the copied scenes work as expected, you may delete the source examples folder. This avoids confusing both developers and the Godot editor. 10 | 11 | This will also remove the option to copy the examples again. However, one copy is enough for most use cases. 12 | 13 | Would you like to delete the source examples folder now?" 14 | dialog_autowrap = true 15 | cancel_button_text = "No" 16 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/installer/delete_examples_short_confirmation_dialog.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene format=3 uid="uid://d03csqgcaxm0m"] 2 | 3 | [node name="DeleteExamplesShortConfirmationDialog" type="ConfirmationDialog"] 4 | title = "Delete Source Examples" 5 | initial_position = 2 6 | size = Vector2i(1024, 128) 7 | visible = true 8 | ok_button_text = "Yes" 9 | dialog_text = "Are you sure you would like to delete the source examples folder?" 10 | dialog_autowrap = true 11 | cancel_button_text = "No" 12 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/installer/destination_dialog.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene format=3 uid="uid://ckx50am7thhd2"] 2 | 3 | [node name="DestinationDialog" type="FileDialog"] 4 | title = "Select a Destination" 5 | initial_position = 2 6 | size = Vector2i(1024, 640) 7 | visible = true 8 | exclusive = false 9 | ok_button_text = "Select Current Folder" 10 | mode_overrides_title = false 11 | file_mode = 2 12 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/installer/kenney_input_prompts_dialog.gd: -------------------------------------------------------------------------------- 1 | @tool 2 | extends ConfirmationDialog 3 | 4 | const SHORT_DESCRIPTION : String = "Choose a style for icons in the input remapping menu. This style can be changed later." 5 | 6 | signal configuration_selected(index : int) 7 | 8 | func _on_item_list_item_selected(index) -> void: 9 | configuration_selected.emit(index) 10 | 11 | func set_short_description() -> void: 12 | %Label.text = SHORT_DESCRIPTION 13 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/installer/kenney_input_prompts_dialog.gd.uid: -------------------------------------------------------------------------------- 1 | uid://bduy6qihnm0qo 2 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/installer/kenney_input_prompts_installer.gd.uid: -------------------------------------------------------------------------------- 1 | uid://ca36dy2vkk46q 2 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/installer/main_scene_confirmation_dialog.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene format=3 uid="uid://b8kr3y0cjxr8m"] 2 | 3 | [node name="MainSceneConfirmationDialog" type="ConfirmationDialog"] 4 | title = "Update Main Scene" 5 | initial_position = 2 6 | size = Vector2i(1024, 192) 7 | visible = true 8 | exclusive = false 9 | ok_button_text = "Yes" 10 | dialog_text = "Would you like to update the project's main scene? 11 | 12 | " 13 | dialog_autowrap = true 14 | cancel_button_text = "No" 15 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/installer/play_opening_confirmation_dialog.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene format=3 uid="uid://b8808yj7a0ghj"] 2 | 3 | [node name="PlayOpeningConfirmationDialog" type="ConfirmationDialog"] 4 | title = "Run & Test" 5 | initial_position = 2 6 | size = Vector2i(1024, 148) 7 | visible = true 8 | ok_button_text = "Yes" 9 | dialog_text = "It is recommended to run the opening scene of the plugin and test if any issues occurred during the copying process. 10 | 11 | Would you like to run and test the scenes now?" 12 | dialog_autowrap = true 13 | cancel_button_text = "No" 14 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/installer/theme_selection_dialog.gd: -------------------------------------------------------------------------------- 1 | @tool 2 | extends ConfirmationDialog 3 | 4 | signal theme_selected(theme_file: String) 5 | 6 | @export_dir var theme_directories : Array[String] : 7 | set(value): 8 | theme_directories = value 9 | if is_inside_tree(): 10 | %FileLister.directories = theme_directories 11 | _fill_with_themes() 12 | 13 | func _fill_with_themes() -> void: 14 | %ItemList.clear() 15 | for file in %FileLister.files: 16 | if file is String: 17 | var readable_name = file.get_file().get_basename().capitalize() 18 | %ItemList.add_item(readable_name) 19 | 20 | func _ready() -> void: 21 | get_ok_button().disabled = true 22 | 23 | func _preview_theme(theme_file: String) -> void: 24 | var theme_resource : Theme = load(theme_file) 25 | if theme_resource == null: return 26 | %ThemePreviewContainer.theme = theme_resource 27 | 28 | func _on_item_list_item_selected(index) -> void: 29 | get_ok_button().disabled = false 30 | if index < %FileLister.files.size(): 31 | var file = %FileLister.files[index] 32 | _preview_theme(file) 33 | theme_selected.emit(file) 34 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/installer/theme_selection_dialog.gd.uid: -------------------------------------------------------------------------------- 1 | uid://c6p8xjvlrgsfk 2 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/installer/update_plugin.gd.uid: -------------------------------------------------------------------------------- 1 | uid://cwj8dpqveao6o 2 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/maaacks_menus_template.gd.uid: -------------------------------------------------------------------------------- 1 | uid://bndaaa5when2r 2 | -------------------------------------------------------------------------------- /addons/maaacks_menus_template/media/.gdignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/addons/maaacks_menus_template/media/.gdignore -------------------------------------------------------------------------------- /addons/maaacks_menus_template/media/credits_scene-icon-black-transparent-256x256.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/addons/maaacks_menus_template/media/credits_scene-icon-black-transparent-256x256.png -------------------------------------------------------------------------------- /addons/maaacks_menus_template/media/game-icon-black-transparent-256x256.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/addons/maaacks_menus_template/media/game-icon-black-transparent-256x256.png -------------------------------------------------------------------------------- /addons/maaacks_menus_template/media/input_remapping-icon-black-transparent-256x256.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/addons/maaacks_menus_template/media/input_remapping-icon-black-transparent-256x256.png -------------------------------------------------------------------------------- /addons/maaacks_menus_template/media/maaack-black-transparent-256x256.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/addons/maaacks_menus_template/media/maaack-black-transparent-256x256.png -------------------------------------------------------------------------------- /addons/maaacks_menus_template/media/maaacks-plugin-suite-256x256.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/addons/maaacks_menus_template/media/maaacks-plugin-suite-256x256.gif -------------------------------------------------------------------------------- /addons/maaacks_menus_template/media/menus-icon-black-transparent-256x256.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/addons/maaacks_menus_template/media/menus-icon-black-transparent-256x256.png -------------------------------------------------------------------------------- /addons/maaacks_menus_template/media/music_controller-icon-black-transparent-256x256.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/addons/maaacks_menus_template/media/music_controller-icon-black-transparent-256x256.png -------------------------------------------------------------------------------- /addons/maaacks_menus_template/media/options-icon-black-transparent-256x256.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/addons/maaacks_menus_template/media/options-icon-black-transparent-256x256.png -------------------------------------------------------------------------------- /addons/maaacks_menus_template/media/scene_loader-icon-black-transparent-256x256.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/addons/maaacks_menus_template/media/scene_loader-icon-black-transparent-256x256.png -------------------------------------------------------------------------------- /addons/maaacks_menus_template/media/screenshot-5-juliocacko-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/addons/maaacks_menus_template/media/screenshot-5-juliocacko-1.png -------------------------------------------------------------------------------- /addons/maaacks_menus_template/media/screenshot-5-juliocacko-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/addons/maaacks_menus_template/media/screenshot-5-juliocacko-2.png -------------------------------------------------------------------------------- /addons/maaacks_menus_template/media/screenshot-5-kenney-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/addons/maaacks_menus_template/media/screenshot-5-kenney-1.png -------------------------------------------------------------------------------- /addons/maaacks_menus_template/media/screenshot-5-kenney-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/addons/maaacks_menus_template/media/screenshot-5-kenney-2.png -------------------------------------------------------------------------------- /addons/maaacks_menus_template/media/screenshot-5-kenney-3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/addons/maaacks_menus_template/media/screenshot-5-kenney-3.png -------------------------------------------------------------------------------- /addons/maaacks_menus_template/media/screenshot-5-kenney-4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/addons/maaacks_menus_template/media/screenshot-5-kenney-4.png -------------------------------------------------------------------------------- /addons/maaacks_menus_template/media/screenshot-5-xelu-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/addons/maaacks_menus_template/media/screenshot-5-xelu-1.png -------------------------------------------------------------------------------- /addons/maaacks_menus_template/media/screenshot-5-xelu-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/addons/maaacks_menus_template/media/screenshot-5-xelu-2.png -------------------------------------------------------------------------------- /addons/maaacks_menus_template/media/screenshot-6-audio-options-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/addons/maaacks_menus_template/media/screenshot-6-audio-options-1.png -------------------------------------------------------------------------------- /addons/maaacks_menus_template/media/screenshot-6-audio-options-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/addons/maaacks_menus_template/media/screenshot-6-audio-options-2.png -------------------------------------------------------------------------------- /addons/maaacks_menus_template/media/screenshot-6-audio-options-3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/addons/maaacks_menus_template/media/screenshot-6-audio-options-3.png -------------------------------------------------------------------------------- /addons/maaacks_menus_template/media/screenshot-6-audio-options-4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/addons/maaacks_menus_template/media/screenshot-6-audio-options-4.png -------------------------------------------------------------------------------- /addons/maaacks_menus_template/media/screenshot-6-audio-options-5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/addons/maaacks_menus_template/media/screenshot-6-audio-options-5.png -------------------------------------------------------------------------------- /addons/maaacks_menus_template/media/screenshot-6-audio-options-6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/addons/maaacks_menus_template/media/screenshot-6-audio-options-6.png -------------------------------------------------------------------------------- /addons/maaacks_menus_template/media/screenshot-6-input-list-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/addons/maaacks_menus_template/media/screenshot-6-input-list-1.png -------------------------------------------------------------------------------- /addons/maaacks_menus_template/media/screenshot-6-input-list-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/addons/maaacks_menus_template/media/screenshot-6-input-list-2.png -------------------------------------------------------------------------------- /addons/maaacks_menus_template/media/screenshot-6-input-list-3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/addons/maaacks_menus_template/media/screenshot-6-input-list-3.png -------------------------------------------------------------------------------- /addons/maaacks_menus_template/media/screenshot-6-input-list-4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/addons/maaacks_menus_template/media/screenshot-6-input-list-4.png -------------------------------------------------------------------------------- /addons/maaacks_menus_template/media/screenshot-6-input-list-5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/addons/maaacks_menus_template/media/screenshot-6-input-list-5.png -------------------------------------------------------------------------------- /addons/maaacks_menus_template/media/screenshot-6-input-list-6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/addons/maaacks_menus_template/media/screenshot-6-input-list-6.png -------------------------------------------------------------------------------- /addons/maaacks_menus_template/media/screenshot-6-input-list-7.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/addons/maaacks_menus_template/media/screenshot-6-input-list-7.png -------------------------------------------------------------------------------- /addons/maaacks_menus_template/media/screenshot-6-input-list-8.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/addons/maaacks_menus_template/media/screenshot-6-input-list-8.png -------------------------------------------------------------------------------- /addons/maaacks_menus_template/media/screenshot-6-input-list-9.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/addons/maaacks_menus_template/media/screenshot-6-input-list-9.png -------------------------------------------------------------------------------- /addons/maaacks_menus_template/media/screenshot-6-input-sensitivity-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/addons/maaacks_menus_template/media/screenshot-6-input-sensitivity-1.png -------------------------------------------------------------------------------- /addons/maaacks_menus_template/media/screenshot-6-input-sensitivity-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/addons/maaacks_menus_template/media/screenshot-6-input-sensitivity-2.png -------------------------------------------------------------------------------- /addons/maaacks_menus_template/media/screenshot-6-input-sensitivity-3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/addons/maaacks_menus_template/media/screenshot-6-input-sensitivity-3.png -------------------------------------------------------------------------------- /addons/maaacks_menus_template/media/screenshot-6-input-sensitivity-4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/addons/maaacks_menus_template/media/screenshot-6-input-sensitivity-4.png -------------------------------------------------------------------------------- /addons/maaacks_menus_template/media/screenshot-6-input-sensitivity-5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/addons/maaacks_menus_template/media/screenshot-6-input-sensitivity-5.png -------------------------------------------------------------------------------- /addons/maaacks_menus_template/media/screenshot-6-input-tree-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/addons/maaacks_menus_template/media/screenshot-6-input-tree-1.png -------------------------------------------------------------------------------- /addons/maaacks_menus_template/media/screenshot-6-input-tree-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/addons/maaacks_menus_template/media/screenshot-6-input-tree-2.png -------------------------------------------------------------------------------- /addons/maaacks_menus_template/media/screenshot-6-input-tree-3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/addons/maaacks_menus_template/media/screenshot-6-input-tree-3.png -------------------------------------------------------------------------------- /addons/maaacks_menus_template/media/screenshot-6-input-tree-4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/addons/maaacks_menus_template/media/screenshot-6-input-tree-4.png -------------------------------------------------------------------------------- /addons/maaacks_menus_template/media/screenshot-6-input-tree-5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/addons/maaacks_menus_template/media/screenshot-6-input-tree-5.png -------------------------------------------------------------------------------- /addons/maaacks_menus_template/media/screenshot-6-level-lost-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/addons/maaacks_menus_template/media/screenshot-6-level-lost-1.png -------------------------------------------------------------------------------- /addons/maaacks_menus_template/media/screenshot-6-level-lost-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/addons/maaacks_menus_template/media/screenshot-6-level-lost-2.png -------------------------------------------------------------------------------- /addons/maaacks_menus_template/media/screenshot-6-level-lost-3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/addons/maaacks_menus_template/media/screenshot-6-level-lost-3.png -------------------------------------------------------------------------------- /addons/maaacks_menus_template/media/screenshot-6-level-select-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/addons/maaacks_menus_template/media/screenshot-6-level-select-1.png -------------------------------------------------------------------------------- /addons/maaacks_menus_template/media/screenshot-6-level-state-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/addons/maaacks_menus_template/media/screenshot-6-level-state-1.png -------------------------------------------------------------------------------- /addons/maaacks_menus_template/media/screenshot-6-level-state-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/addons/maaacks_menus_template/media/screenshot-6-level-state-2.png -------------------------------------------------------------------------------- /addons/maaacks_menus_template/media/screenshot-6-level-state-3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/addons/maaacks_menus_template/media/screenshot-6-level-state-3.png -------------------------------------------------------------------------------- /addons/maaacks_menus_template/media/screenshot-6-level-won-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/addons/maaacks_menus_template/media/screenshot-6-level-won-1.png -------------------------------------------------------------------------------- /addons/maaacks_menus_template/media/screenshot-6-level-won-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/addons/maaacks_menus_template/media/screenshot-6-level-won-2.png -------------------------------------------------------------------------------- /addons/maaacks_menus_template/media/screenshot-6-level-won-3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/addons/maaacks_menus_template/media/screenshot-6-level-won-3.png -------------------------------------------------------------------------------- /addons/maaacks_menus_template/media/screenshot-6-loading-screen-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/addons/maaacks_menus_template/media/screenshot-6-loading-screen-1.png -------------------------------------------------------------------------------- /addons/maaacks_menus_template/media/screenshot-6-loading-screen-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/addons/maaacks_menus_template/media/screenshot-6-loading-screen-2.png -------------------------------------------------------------------------------- /addons/maaacks_menus_template/media/screenshot-6-loading-screen-3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/addons/maaacks_menus_template/media/screenshot-6-loading-screen-3.png -------------------------------------------------------------------------------- /addons/maaacks_menus_template/media/screenshot-6-loading-screen-4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/addons/maaacks_menus_template/media/screenshot-6-loading-screen-4.png -------------------------------------------------------------------------------- /addons/maaacks_menus_template/media/screenshot-6-main-menu-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/addons/maaacks_menus_template/media/screenshot-6-main-menu-1.png -------------------------------------------------------------------------------- /addons/maaacks_menus_template/media/screenshot-6-main-menu-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/addons/maaacks_menus_template/media/screenshot-6-main-menu-2.png -------------------------------------------------------------------------------- /addons/maaacks_menus_template/media/screenshot-6-main-menu-3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/addons/maaacks_menus_template/media/screenshot-6-main-menu-3.png -------------------------------------------------------------------------------- /addons/maaacks_menus_template/media/screenshot-6-main-menu-4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/addons/maaacks_menus_template/media/screenshot-6-main-menu-4.png -------------------------------------------------------------------------------- /addons/maaacks_menus_template/media/screenshot-6-main-menu-5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/addons/maaacks_menus_template/media/screenshot-6-main-menu-5.png -------------------------------------------------------------------------------- /addons/maaacks_menus_template/media/screenshot-6-mini-options-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/addons/maaacks_menus_template/media/screenshot-6-mini-options-1.png -------------------------------------------------------------------------------- /addons/maaacks_menus_template/media/screenshot-6-mini-options-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/addons/maaacks_menus_template/media/screenshot-6-mini-options-2.png -------------------------------------------------------------------------------- /addons/maaacks_menus_template/media/screenshot-6-pause-menu-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/addons/maaacks_menus_template/media/screenshot-6-pause-menu-1.png -------------------------------------------------------------------------------- /addons/maaacks_menus_template/media/screenshot-6-pause-menu-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/addons/maaacks_menus_template/media/screenshot-6-pause-menu-2.png -------------------------------------------------------------------------------- /addons/maaacks_menus_template/media/screenshot-6-pause-menu-3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/addons/maaacks_menus_template/media/screenshot-6-pause-menu-3.png -------------------------------------------------------------------------------- /addons/maaacks_menus_template/media/screenshot-6-pause-menu-4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/addons/maaacks_menus_template/media/screenshot-6-pause-menu-4.png -------------------------------------------------------------------------------- /addons/maaacks_menus_template/media/screenshot-6-pause-menu-5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/addons/maaacks_menus_template/media/screenshot-6-pause-menu-5.png -------------------------------------------------------------------------------- /addons/maaacks_menus_template/media/screenshot-6-theme-selector-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/addons/maaacks_menus_template/media/screenshot-6-theme-selector-1.png -------------------------------------------------------------------------------- /addons/maaacks_menus_template/media/screenshot-6-theme-selector-10.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/addons/maaacks_menus_template/media/screenshot-6-theme-selector-10.png -------------------------------------------------------------------------------- /addons/maaacks_menus_template/media/screenshot-6-theme-selector-11.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/addons/maaacks_menus_template/media/screenshot-6-theme-selector-11.png -------------------------------------------------------------------------------- /addons/maaacks_menus_template/media/screenshot-6-theme-selector-12.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/addons/maaacks_menus_template/media/screenshot-6-theme-selector-12.png -------------------------------------------------------------------------------- /addons/maaacks_menus_template/media/screenshot-6-theme-selector-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/addons/maaacks_menus_template/media/screenshot-6-theme-selector-2.png -------------------------------------------------------------------------------- /addons/maaacks_menus_template/media/screenshot-6-theme-selector-3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/addons/maaacks_menus_template/media/screenshot-6-theme-selector-3.png -------------------------------------------------------------------------------- /addons/maaacks_menus_template/media/screenshot-6-theme-selector-4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/addons/maaacks_menus_template/media/screenshot-6-theme-selector-4.png -------------------------------------------------------------------------------- /addons/maaacks_menus_template/media/screenshot-6-theme-selector-5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/addons/maaacks_menus_template/media/screenshot-6-theme-selector-5.png -------------------------------------------------------------------------------- /addons/maaacks_menus_template/media/screenshot-6-theme-selector-6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/addons/maaacks_menus_template/media/screenshot-6-theme-selector-6.png -------------------------------------------------------------------------------- /addons/maaacks_menus_template/media/screenshot-6-theme-selector-7.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/addons/maaacks_menus_template/media/screenshot-6-theme-selector-7.png -------------------------------------------------------------------------------- /addons/maaacks_menus_template/media/screenshot-6-theme-selector-8.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/addons/maaacks_menus_template/media/screenshot-6-theme-selector-8.png -------------------------------------------------------------------------------- /addons/maaacks_menus_template/media/screenshot-6-theme-selector-9.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/addons/maaacks_menus_template/media/screenshot-6-theme-selector-9.png -------------------------------------------------------------------------------- /addons/maaacks_menus_template/media/screenshot-6-video-options-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/addons/maaacks_menus_template/media/screenshot-6-video-options-1.png -------------------------------------------------------------------------------- /addons/maaacks_menus_template/media/screenshot-6-video-options-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/addons/maaacks_menus_template/media/screenshot-6-video-options-2.png -------------------------------------------------------------------------------- /addons/maaacks_menus_template/media/screenshot-6-video-options-3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/addons/maaacks_menus_template/media/screenshot-6-video-options-3.png -------------------------------------------------------------------------------- /addons/maaacks_menus_template/media/screenshot-6-video-options-4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/addons/maaacks_menus_template/media/screenshot-6-video-options-4.png -------------------------------------------------------------------------------- /addons/maaacks_menus_template/media/screenshot-6-video-options-5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/addons/maaacks_menus_template/media/screenshot-6-video-options-5.png -------------------------------------------------------------------------------- /addons/maaacks_menus_template/media/screenshot-6-video-options-6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/addons/maaacks_menus_template/media/screenshot-6-video-options-6.png -------------------------------------------------------------------------------- /addons/maaacks_menus_template/media/screenshot-game-a-darkness-like-gravity.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/addons/maaacks_menus_template/media/screenshot-game-a-darkness-like-gravity.png -------------------------------------------------------------------------------- /addons/maaacks_menus_template/media/screenshot-game-harvest-hill.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/addons/maaacks_menus_template/media/screenshot-game-harvest-hill.png -------------------------------------------------------------------------------- /addons/maaacks_menus_template/media/screenshot-game-nannybot-overload.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/addons/maaacks_menus_template/media/screenshot-game-nannybot-overload.png -------------------------------------------------------------------------------- /addons/maaacks_menus_template/media/screenshot-game-rent-seek-kill.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/addons/maaacks_menus_template/media/screenshot-game-rent-seek-kill.png -------------------------------------------------------------------------------- /addons/maaacks_menus_template/media/screenshot-game-spud-customs.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/addons/maaacks_menus_template/media/screenshot-game-spud-customs.png -------------------------------------------------------------------------------- /addons/maaacks_menus_template/media/ui_sound_controller-icon-black-transparent-256x256.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/addons/maaacks_menus_template/media/ui_sound_controller-icon-black-transparent-256x256.png -------------------------------------------------------------------------------- /addons/maaacks_menus_template/plugin.cfg: -------------------------------------------------------------------------------- 1 | [plugin] 2 | 3 | name="Maaack's Menus Template" 4 | description="Template with main menu, options menu, credits, and a scene loader. 5 | 6 | Created in collaboration with members of the Godot Wild Jam community." 7 | author="Marek Belski" 8 | version="0.22.0" 9 | script="maaacks_menus_template.gd" 10 | -------------------------------------------------------------------------------- /assets/godot_engine_logo/LICENSE.txt: -------------------------------------------------------------------------------- 1 | Godot Engine Logo 2 | Copyright (c) 2017 Andrea Calabró 3 | 4 | This work is licensed under the Creative Commons Attribution 4.0 International 5 | license (CC BY 4.0 International): https://creativecommons.org/licenses/by/4.0/ -------------------------------------------------------------------------------- /assets/godot_engine_logo/logo_vertical_color_dark.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/assets/godot_engine_logo/logo_vertical_color_dark.png -------------------------------------------------------------------------------- /assets/godot_engine_logo/logo_vertical_color_dark.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="CompressedTexture2D" 5 | uid="uid://b218vdq337vl" 6 | path="res://.godot/imported/logo_vertical_color_dark.png-056a6f9bbcf3b5b4e6d6f8f5f4aa19c6.ctex" 7 | metadata={ 8 | "vram_texture": false 9 | } 10 | 11 | [deps] 12 | 13 | source_file="res://assets/godot_engine_logo/logo_vertical_color_dark.png" 14 | dest_files=["res://.godot/imported/logo_vertical_color_dark.png-056a6f9bbcf3b5b4e6d6f8f5f4aa19c6.ctex"] 15 | 16 | [params] 17 | 18 | compress/mode=0 19 | compress/high_quality=false 20 | compress/lossy_quality=0.7 21 | compress/hdr_compression=1 22 | compress/normal_map=0 23 | compress/channel_pack=0 24 | mipmaps/generate=false 25 | mipmaps/limit=-1 26 | roughness/mode=0 27 | roughness/src_normal="" 28 | process/fix_alpha_border=true 29 | process/premult_alpha=false 30 | process/normal_map_invert_y=false 31 | process/hdr_as_srgb=false 32 | process/hdr_clamp_exposure=false 33 | process/size_limit=0 34 | detect_3d/compress_to=1 35 | -------------------------------------------------------------------------------- /default_bus_layout.tres: -------------------------------------------------------------------------------- 1 | [gd_resource type="AudioBusLayout" format=3 uid="uid://dg371ytfvyqdk"] 2 | 3 | [resource] 4 | bus/1/name = &"Music" 5 | bus/1/solo = false 6 | bus/1/mute = false 7 | bus/1/bypass_fx = false 8 | bus/1/volume_db = 0.0 9 | bus/1/send = &"Master" 10 | bus/2/name = &"SFX" 11 | bus/2/solo = false 12 | bus/2/mute = false 13 | bus/2/bypass_fx = false 14 | bus/2/volume_db = 0.0 15 | bus/2/send = &"Master" 16 | -------------------------------------------------------------------------------- /dev_scripts/rsync-source-location.txt: -------------------------------------------------------------------------------- 1 | ../../Godot-Game-Template 2 | -------------------------------------------------------------------------------- /dev_scripts/rsync_with_game_template.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | 4 | file=rsync-source-location.txt 5 | 6 | # Check if the file exists 7 | if [ ! -e $file ]; then 8 | # File doesn't exist, create an empty one 9 | touch $file 10 | fi 11 | 12 | # File exists, read the first line into a variable 13 | read -r source < $file 14 | 15 | if [ -z "$source" ]; then 16 | # File is empty, prompt the user for input 17 | echo "Please enter the source folder (contains project.godot)." 18 | read -r user_input 19 | 20 | # Save user input to the file 21 | echo "$user_input" > "$file" 22 | echo "Source saved to $file." 23 | source="$user_input" 24 | fi 25 | 26 | 27 | # Source and destination directors 28 | src_dir="$source/addons/maaacks_game_template/" 29 | dest_dir="../addons/maaacks_menus_template/" 30 | 31 | echo $src_dir 32 | find $src_dir -type d -empty -o -type f -ctime -10 -printf '%P\0' | rsync -av --files-from=- --from0 "$src_dir" "$dest_dir" 33 | 34 | # Define strings to replace 35 | finds=("game_template" "Game Template" "Game-Template" "game-template") 36 | replaces=("menus_template" "Menus Template" "Menus-Template" "menus-template") 37 | 38 | # Checks for strings and replaces them 39 | for ((i=0; i<${#finds[@]}; i++)); do 40 | find="${finds[i]}" 41 | replace="${replaces[i]}" 42 | 43 | # Find and replace in all files in the destination directory 44 | find "$dest_dir" -type f -exec sed -i "s/${find}/${replace}/g" {} + 45 | done 46 | -------------------------------------------------------------------------------- /icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Maaack/Godot-Menus-Template/942fdd2aef527a4600e061c8deab032f09cc1e1b/icon.png -------------------------------------------------------------------------------- /icon.png.import: -------------------------------------------------------------------------------- 1 | [remap] 2 | 3 | importer="texture" 4 | type="CompressedTexture2D" 5 | uid="uid://ctpq0wqq86qs6" 6 | path="res://.godot/imported/icon.png-487276ed1e3a0c39cad0279d744ee560.ctex" 7 | metadata={ 8 | "vram_texture": false 9 | } 10 | 11 | [deps] 12 | 13 | source_file="res://icon.png" 14 | dest_files=["res://.godot/imported/icon.png-487276ed1e3a0c39cad0279d744ee560.ctex"] 15 | 16 | [params] 17 | 18 | compress/mode=0 19 | compress/high_quality=false 20 | compress/lossy_quality=0.7 21 | compress/hdr_compression=1 22 | compress/normal_map=0 23 | compress/channel_pack=0 24 | mipmaps/generate=false 25 | mipmaps/limit=-1 26 | roughness/mode=0 27 | roughness/src_normal="" 28 | process/fix_alpha_border=true 29 | process/premult_alpha=false 30 | process/normal_map_invert_y=false 31 | process/hdr_as_srgb=false 32 | process/hdr_clamp_exposure=false 33 | process/size_limit=0 34 | detect_3d/compress_to=1 35 | -------------------------------------------------------------------------------- /override.cfg: -------------------------------------------------------------------------------- 1 | ; Project settings override file. 2 | ; Adds gamepad inputs to built-in actions. 3 | ; 4 | ; Format: 5 | ; [section] ; section goes between [] 6 | ; param=value ; assign values to parameters 7 | 8 | 9 | [input] 10 | 11 | ui_accept={ 12 | "deadzone": 0.5, 13 | "events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":4194309,"physical_keycode":0,"key_label":0,"unicode":0,"echo":false,"script":null) 14 | , Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":4194310,"physical_keycode":0,"key_label":0,"unicode":0,"echo":false,"script":null) 15 | , Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":32,"physical_keycode":0,"key_label":0,"unicode":32,"echo":false,"script":null) 16 | , Object(InputEventJoypadButton,"resource_local_to_scene":false,"resource_name":"","device":-1,"button_index":0,"pressure":0.0,"pressed":true,"script":null) 17 | ] 18 | } 19 | ui_cancel={ 20 | "deadzone": 0.5, 21 | "events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":4194305,"physical_keycode":0,"key_label":0,"unicode":0,"echo":false,"script":null) 22 | , Object(InputEventJoypadButton,"resource_local_to_scene":false,"resource_name":"","device":-1,"button_index":4,"pressure":0.0,"pressed":true,"script":null) 23 | ] 24 | } 25 | ui_page_up={ 26 | "deadzone": 0.5, 27 | "events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":4194323,"physical_keycode":0,"key_label":0,"unicode":0,"echo":false,"script":null) 28 | , Object(InputEventJoypadButton,"resource_local_to_scene":false,"resource_name":"","device":-1,"button_index":9,"pressure":0.0,"pressed":true,"script":null) 29 | ] 30 | } 31 | ui_page_down={ 32 | "deadzone": 0.5, 33 | "events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":4194324,"physical_keycode":0,"key_label":0,"unicode":0,"echo":false,"script":null) 34 | , Object(InputEventJoypadButton,"resource_local_to_scene":false,"resource_name":"","device":-1,"button_index":10,"pressure":0.0,"pressed":true,"script":null) 35 | ] 36 | } 37 | -------------------------------------------------------------------------------- /scenes/credits/credits.gd: -------------------------------------------------------------------------------- 1 | @tool 2 | extends Credits 3 | -------------------------------------------------------------------------------- /scenes/credits/credits.gd.uid: -------------------------------------------------------------------------------- 1 | uid://cgthm7bsmr3xx 2 | -------------------------------------------------------------------------------- /scenes/credits/credits.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=3 format=3 uid="uid://byghhhu36w4bj"] 2 | 3 | [ext_resource type="PackedScene" uid="uid://t2dui8ppm3a4" path="res://addons/maaacks_menus_template/base/scenes/credits/credits.tscn" id="1_8n0nl"] 4 | [ext_resource type="Script" uid="uid://cgthm7bsmr3xx" path="res://scenes/credits/credits.gd" id="2_c8xcy"] 5 | 6 | [node name="Credits" instance=ExtResource("1_8n0nl")] 7 | script = ExtResource("2_c8xcy") 8 | attribution_file_path = "res://ATTRIBUTION.md" 9 | 10 | [node name="CreditsLabel" parent="ScrollContainer/VBoxContainer" index="1"] 11 | text = "[center][font_size=48]Collaborators[/font_size] 12 | 13 | [font_size=32]Godot Menus Template[/font_size] 14 | Author: [url=https://github.com/Maaack/Godot-Menus-Template/graphs/contributors]Marek Belski[/url] 15 | Source: [url=https://github.com/Maaack/Godot-Menus-Template]github: Godot-Menus-Template[/url] 16 | License: [url=LICENSE.txt]MIT License[/url] 17 | 18 | [font_size=48]Sourced[/font_size] 19 | [font_size=24]Godot Engine Logo[/font_size] 20 | Author: Andrea Calabró 21 | Source: [url=https://godotengine.org/press/]godotengine.org : press[/url] 22 | License: [url=https://github.com/godotengine/godot/blob/master/LOGO_LICENSE.txt]CC BY 4.0 International[/url] 23 | 24 | [font_size=48]Tools[/font_size] 25 | [font_size=24]Godot[/font_size] 26 | Author: [url=https://godotengine.org/contact]Juan Linietsky, Ariel Manzur, and contributors[/url] 27 | Source: [url=https://godotengine.org/]godotengine.org[/url] 28 | License: [url=https://github.com/godotengine/godot/blob/master/LICENSE.txt]MIT License[/url] 29 | 30 | [font_size=24]Visual Studio Code[/font_size] 31 | Author: [url=https://opensource.microsoft.com/]Microsoft[/url] 32 | Source: [url=https://github.com/microsoft/vscode]github: vscode[/url] 33 | License: [url=https://github.com/microsoft/vscode/blob/main/LICENSE.txt]MIT License[/url] 34 | 35 | [font_size=24]Git[/font_size] 36 | Author: [url=https://github.com/torvalds]Linus Torvalds[/url] 37 | Source: [url=https://git-scm.com/downloads]git-scm.com[/url] 38 | License: [url=https://opensource.org/licenses/GPL-2.0]GNU General Public License version 2[/url] 39 | [/center]" 40 | -------------------------------------------------------------------------------- /scenes/end_credits/end_credits.gd: -------------------------------------------------------------------------------- 1 | @tool 2 | extends Credits 3 | 4 | @export_file("*.tscn") var main_menu_scene : String 5 | @onready var init_mouse_filter : MouseFilter = mouse_filter 6 | 7 | func _end_reached() -> void: 8 | %EndMessagePanel.show() 9 | mouse_filter = Control.MOUSE_FILTER_STOP 10 | super._end_reached() 11 | 12 | func _on_MenuButton_pressed() -> void: 13 | SceneLoader.load_scene(main_menu_scene) 14 | 15 | func _on_ExitButton_pressed() -> void: 16 | get_tree().quit() 17 | 18 | func _ready() -> void: 19 | if main_menu_scene.is_empty(): 20 | %MenuButton.hide() 21 | if OS.has_feature("web"): 22 | %ExitButton.hide() 23 | super._ready() 24 | 25 | func reset() -> void: 26 | super.reset() 27 | %EndMessagePanel.hide() 28 | mouse_filter = init_mouse_filter 29 | 30 | func _unhandled_input(event : InputEvent) -> void: 31 | if not enabled: return 32 | if event.is_action_pressed("ui_cancel"): 33 | if not %EndMessagePanel.visible: 34 | _end_reached() 35 | else: 36 | get_tree().quit() 37 | -------------------------------------------------------------------------------- /scenes/end_credits/end_credits.gd.uid: -------------------------------------------------------------------------------- 1 | uid://q0j8rdu5hw7o 2 | -------------------------------------------------------------------------------- /scenes/loading_screen/loading_screen.gd: -------------------------------------------------------------------------------- 1 | extends LoadingScreen 2 | -------------------------------------------------------------------------------- /scenes/loading_screen/loading_screen.gd.uid: -------------------------------------------------------------------------------- 1 | uid://cgrm4nrp4t5dq 2 | -------------------------------------------------------------------------------- /scenes/loading_screen/loading_screen.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=3 format=3 uid="uid://s06tkmnxtoua"] 2 | 3 | [ext_resource type="PackedScene" uid="uid://cd0jbh4metflb" path="res://addons/maaacks_menus_template/base/scenes/loading_screen/loading_screen.tscn" id="1_a8kcw"] 4 | [ext_resource type="Script" uid="uid://cgrm4nrp4t5dq" path="res://scenes/loading_screen/loading_screen.gd" id="2_53rj4"] 5 | 6 | [node name="LoadingScreen" instance=ExtResource("1_a8kcw")] 7 | script = ExtResource("2_53rj4") 8 | -------------------------------------------------------------------------------- /scenes/loading_screen/loading_screen_with_shader_caching.gd.uid: -------------------------------------------------------------------------------- 1 | uid://clkhrnmxp77e 2 | -------------------------------------------------------------------------------- /scenes/loading_screen/loading_screen_with_shader_caching.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=4 format=3 uid="uid://s0376yunxtw8"] 2 | 3 | [ext_resource type="PackedScene" uid="uid://cd0jbh4metflb" path="res://addons/maaacks_menus_template/base/scenes/loading_screen/loading_screen.tscn" id="1_alqvd"] 4 | [ext_resource type="Script" uid="uid://clkhrnmxp77e" path="res://scenes/loading_screen/loading_screen_with_shader_caching.gd" id="2_n5fdm"] 5 | 6 | [sub_resource type="QuadMesh" id="QuadMesh_klnwy"] 7 | 8 | [node name="LoadingScreen" instance=ExtResource("1_alqvd")] 9 | script = ExtResource("2_n5fdm") 10 | _spatial_shader_material_dir = "" 11 | _cache_shaders_scene = "res://scenes/game_scene/game_ui.tscn" 12 | _mesh = SubResource("QuadMesh_klnwy") 13 | _matching_extensions = Array[String]([".tres", ".material", ".res"]) 14 | _ignore_subfolders = Array[String]([".", ".."]) 15 | _shader_delay_timer = 0.1 16 | 17 | [node name="SpatialShaderTypeCaches" type="Node3D" parent="." index="2"] 18 | unique_name_in_owner = true 19 | 20 | [node name="Camera3D" type="Camera3D" parent="SpatialShaderTypeCaches" index="0"] 21 | transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 1.408) 22 | current = true 23 | -------------------------------------------------------------------------------- /scenes/menus/main_menu/main_menu.gd: -------------------------------------------------------------------------------- 1 | extends MainMenu 2 | -------------------------------------------------------------------------------- /scenes/menus/main_menu/main_menu.gd.uid: -------------------------------------------------------------------------------- 1 | uid://240wygf26imp 2 | -------------------------------------------------------------------------------- /scenes/menus/main_menu/main_menu.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=5 format=3 uid="uid://cvdj351v15yom"] 2 | 3 | [ext_resource type="PackedScene" uid="uid://c6k5nnpbypshi" path="res://addons/maaacks_menus_template/base/scenes/menus/main_menu/main_menu.tscn" id="1_peecx"] 4 | [ext_resource type="Script" uid="uid://240wygf26imp" path="res://scenes/menus/main_menu/main_menu.gd" id="2_ub2bi"] 5 | [ext_resource type="PackedScene" uid="uid://c4ea4cwximdvs" path="res://scenes/menus/options_menu/master_options_menu_with_tabs.tscn" id="3_x31ro"] 6 | [ext_resource type="PackedScene" uid="uid://byghhhu36w4bj" path="res://scenes/credits/credits.tscn" id="4_0jpat"] 7 | 8 | [node name="MainMenu" instance=ExtResource("1_peecx")] 9 | script = ExtResource("2_ub2bi") 10 | options_packed_scene = ExtResource("3_x31ro") 11 | credits_packed_scene = ExtResource("4_0jpat") 12 | -------------------------------------------------------------------------------- /scenes/menus/main_menu/main_menu_with_animations.gd: -------------------------------------------------------------------------------- 1 | extends MainMenu 2 | 3 | var animation_state_machine : AnimationNodeStateMachinePlayback 4 | 5 | func intro_done() -> void: 6 | animation_state_machine.travel("OpenMainMenu") 7 | 8 | func _is_in_intro() -> bool: 9 | return animation_state_machine.get_current_node() == "Intro" 10 | 11 | func _event_is_mouse_button_released(event : InputEvent) -> bool: 12 | return event is InputEventMouseButton and not event.is_pressed() 13 | 14 | func _event_skips_intro(event : InputEvent) -> bool: 15 | return event.is_action_released("ui_accept") or \ 16 | event.is_action_released("ui_select") or \ 17 | event.is_action_released("ui_cancel") or \ 18 | _event_is_mouse_button_released(event) 19 | 20 | func _open_sub_menu(menu : Node) -> void: 21 | super._open_sub_menu(menu) 22 | animation_state_machine.travel("OpenSubMenu") 23 | 24 | func _close_sub_menu() -> void: 25 | super._close_sub_menu() 26 | animation_state_machine.travel("OpenMainMenu") 27 | 28 | func _input(event : InputEvent) -> void: 29 | if _is_in_intro() and _event_skips_intro(event): 30 | intro_done() 31 | return 32 | super._input(event) 33 | 34 | func _ready() -> void: 35 | super._ready() 36 | animation_state_machine = $MenuAnimationTree.get("parameters/playback") 37 | 38 | func _on_continue_game_button_pressed() -> void: 39 | load_game_scene() 40 | -------------------------------------------------------------------------------- /scenes/menus/main_menu/main_menu_with_animations.gd.uid: -------------------------------------------------------------------------------- 1 | uid://dfgts5n5dqvvx 2 | -------------------------------------------------------------------------------- /scenes/menus/options_menu/audio/audio_input_option_control.gd: -------------------------------------------------------------------------------- 1 | @tool 2 | extends ListOptionControl 3 | 4 | func _set_input_device() -> void: 5 | var current_setting : Variant = _get_setting(default_value) 6 | if current_setting is bool: 7 | current_setting = &"Default" 8 | AudioServer.input_device = _get_setting(default_value) 9 | 10 | func _add_microphone_audio_stream() -> void: 11 | var instance := AudioStreamPlayer.new() 12 | instance.stream = AudioStreamMicrophone.new() 13 | instance.autoplay = true 14 | add_child.call_deferred(instance) 15 | instance.ready.connect(_set_input_device) 16 | 17 | func _ready() -> void: 18 | if ProjectSettings.get_setting("audio/driver/enable_input", false): 19 | if AudioServer.input_device.is_empty(): 20 | _add_microphone_audio_stream() 21 | else: 22 | _set_input_device() 23 | if not Engine.is_editor_hint(): 24 | option_values = AudioServer.get_input_device_list() 25 | else: 26 | hide() 27 | super._ready() 28 | 29 | func _on_setting_changed(value : Variant) -> void: 30 | if value >= option_values.size(): return 31 | AudioServer.input_device = option_values[value] 32 | super._on_setting_changed(value) 33 | 34 | func _value_title_map(value : Variant) -> String: 35 | if value is String: 36 | return value 37 | else: 38 | return super._value_title_map(value) 39 | -------------------------------------------------------------------------------- /scenes/menus/options_menu/audio/audio_input_option_control.gd.uid: -------------------------------------------------------------------------------- 1 | uid://cklni3epm46rr 2 | -------------------------------------------------------------------------------- /scenes/menus/options_menu/audio/audio_input_option_control.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=3 format=3 uid="uid://c2lli6l5aayh8"] 2 | 3 | [ext_resource type="PackedScene" uid="uid://b6bl3n5mp3m1e" path="res://addons/maaacks_menus_template/base/scenes/menus/options_menu/option_control/list_option_control.tscn" id="1_lfo7w"] 4 | [ext_resource type="Script" uid="uid://cklni3epm46rr" path="res://scenes/menus/options_menu/audio/audio_input_option_control.gd" id="2_m6bxx"] 5 | 6 | [node name="AudioInputOptionControl" instance=ExtResource("1_lfo7w")] 7 | script = ExtResource("2_m6bxx") 8 | option_name = "Input Device" 9 | option_section = 2 10 | key = "InputDevice" 11 | section = "AudioSettings" 12 | property_type = 4 13 | 14 | [node name="OptionLabel" parent="." index="0"] 15 | text = "Input Device :" 16 | 17 | [node name="OptionButton" parent="." index="1"] 18 | size_flags_horizontal = 3 19 | text_overrun_behavior = 1 20 | clip_text = true 21 | -------------------------------------------------------------------------------- /scenes/menus/options_menu/audio/audio_options_menu.gd: -------------------------------------------------------------------------------- 1 | extends AudioOptionsMenu 2 | -------------------------------------------------------------------------------- /scenes/menus/options_menu/audio/audio_options_menu.gd.uid: -------------------------------------------------------------------------------- 1 | uid://bjvop0kge4qc5 2 | -------------------------------------------------------------------------------- /scenes/menus/options_menu/audio/audio_options_menu.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=4 format=3 uid="uid://icvd66w5bdth"] 2 | 3 | [ext_resource type="PackedScene" uid="uid://c8vnncjwqcpab" path="res://addons/maaacks_menus_template/base/scenes/menus/options_menu/audio/audio_options_menu.tscn" id="1_vnecy"] 4 | [ext_resource type="Script" uid="uid://bjvop0kge4qc5" path="res://scenes/menus/options_menu/audio/audio_options_menu.gd" id="2_td4gr"] 5 | [ext_resource type="PackedScene" uid="uid://c2lli6l5aayh8" path="res://scenes/menus/options_menu/audio/audio_input_option_control.tscn" id="3_jlqbf"] 6 | 7 | [node name="Audio" instance=ExtResource("1_vnecy")] 8 | script = ExtResource("2_td4gr") 9 | 10 | [node name="AudioInputOptionControl" parent="VBoxContainer" index="2" instance=ExtResource("3_jlqbf")] 11 | layout_mode = 2 12 | -------------------------------------------------------------------------------- /scenes/menus/options_menu/input/input_extras_menu.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=3 format=3 uid="uid://c2j3k2fbtuxuo"] 2 | 3 | [ext_resource type="Script" uid="uid://1nf36h0gms3q" path="res://addons/maaacks_menus_template/base/scripts/capture_focus.gd" id="1_1v5x4"] 4 | [ext_resource type="PackedScene" uid="uid://cl416gdb1fgwr" path="res://addons/maaacks_menus_template/base/scenes/menus/options_menu/option_control/slider_option_control.tscn" id="2_goqr1"] 5 | 6 | [node name="Inputs" type="MarginContainer"] 7 | anchors_preset = 15 8 | anchor_right = 1.0 9 | anchor_bottom = 1.0 10 | grow_horizontal = 2 11 | grow_vertical = 2 12 | size_flags_horizontal = 3 13 | size_flags_vertical = 3 14 | 15 | [node name="VBoxContainer" type="VBoxContainer" parent="."] 16 | layout_mode = 2 17 | size_flags_horizontal = 4 18 | size_flags_vertical = 4 19 | theme_override_constants/separation = 8 20 | script = ExtResource("1_1v5x4") 21 | search_depth = 5 22 | 23 | [node name="MarginContainer" type="MarginContainer" parent="VBoxContainer"] 24 | layout_mode = 2 25 | theme_override_constants/margin_top = 32 26 | theme_override_constants/margin_bottom = 32 27 | 28 | [node name="VBoxContainer" type="VBoxContainer" parent="VBoxContainer/MarginContainer"] 29 | layout_mode = 2 30 | size_flags_vertical = 3 31 | theme_override_constants/separation = 8 32 | alignment = 1 33 | 34 | [node name="MouseSensitivityControl" parent="VBoxContainer/MarginContainer/VBoxContainer" instance=ExtResource("2_goqr1")] 35 | layout_mode = 2 36 | option_name = "Mouse Sensitivity" 37 | option_section = 1 38 | key = "MouseSensitivity" 39 | section = "InputSettings" 40 | 41 | [node name="OptionLabel" parent="VBoxContainer/MarginContainer/VBoxContainer/MouseSensitivityControl" index="0"] 42 | text = "Mouse Sensitivity :" 43 | 44 | [node name="HSlider" parent="VBoxContainer/MarginContainer/VBoxContainer/MouseSensitivityControl" index="1"] 45 | min_value = 0.25 46 | max_value = 2.0 47 | tick_count = 8 48 | 49 | [node name="JoypadSensitivityControl" parent="VBoxContainer/MarginContainer/VBoxContainer" instance=ExtResource("2_goqr1")] 50 | layout_mode = 2 51 | option_name = "Joypad Sensitivity" 52 | option_section = 1 53 | key = "JoypadSensitivity" 54 | section = "InputSettings" 55 | 56 | [node name="OptionLabel" parent="VBoxContainer/MarginContainer/VBoxContainer/JoypadSensitivityControl" index="0"] 57 | text = "Joypad Sensitivity :" 58 | 59 | [node name="HSlider" parent="VBoxContainer/MarginContainer/VBoxContainer/JoypadSensitivityControl" index="1"] 60 | min_value = 0.25 61 | max_value = 2.0 62 | tick_count = 8 63 | 64 | [editable path="VBoxContainer/MarginContainer/VBoxContainer/MouseSensitivityControl"] 65 | [editable path="VBoxContainer/MarginContainer/VBoxContainer/JoypadSensitivityControl"] 66 | -------------------------------------------------------------------------------- /scenes/menus/options_menu/input/input_options_menu.gd: -------------------------------------------------------------------------------- 1 | @tool 2 | extends InputOptionsMenu 3 | -------------------------------------------------------------------------------- /scenes/menus/options_menu/input/input_options_menu.gd.uid: -------------------------------------------------------------------------------- 1 | uid://df4fyla5glhdg 2 | -------------------------------------------------------------------------------- /scenes/menus/options_menu/input/input_options_menu.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=3 format=3 uid="uid://bdmyvhi6p72h0"] 2 | 3 | [ext_resource type="PackedScene" uid="uid://dp3rgqaehb3xu" path="res://addons/maaacks_menus_template/base/scenes/menus/options_menu/input/input_options_menu.tscn" id="1_i27v5"] 4 | [ext_resource type="Script" uid="uid://df4fyla5glhdg" path="res://scenes/menus/options_menu/input/input_options_menu.gd" id="2_hyv0n"] 5 | 6 | [node name="Controls" instance=ExtResource("1_i27v5")] 7 | script = ExtResource("2_hyv0n") 8 | -------------------------------------------------------------------------------- /scenes/menus/options_menu/input/input_options_menu_with_mouse_sensitivity.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=4 format=3 uid="uid://c0ps6e0tbc3ta"] 2 | 3 | [ext_resource type="PackedScene" uid="uid://dp3rgqaehb3xu" path="res://addons/maaacks_menus_template/base/scenes/menus/options_menu/input/input_options_menu.tscn" id="1_56ptf"] 4 | [ext_resource type="Script" uid="uid://df4fyla5glhdg" path="res://scenes/menus/options_menu/input/input_options_menu.gd" id="2_n50lr"] 5 | [ext_resource type="PackedScene" uid="uid://cl416gdb1fgwr" path="res://addons/maaacks_menus_template/base/scenes/menus/options_menu/option_control/slider_option_control.tscn" id="3_fq3ml"] 6 | 7 | [node name="Controls" instance=ExtResource("1_56ptf")] 8 | script = ExtResource("2_n50lr") 9 | 10 | [node name="VBoxContainer" parent="." index="0"] 11 | theme_override_constants/separation = 16 12 | 13 | [node name="MarginContainer" type="MarginContainer" parent="VBoxContainer" index="0"] 14 | layout_mode = 2 15 | theme_override_constants/margin_top = 32 16 | theme_override_constants/margin_bottom = 32 17 | 18 | [node name="VBoxContainer" type="VBoxContainer" parent="VBoxContainer/MarginContainer" index="0"] 19 | layout_mode = 2 20 | size_flags_vertical = 3 21 | alignment = 1 22 | 23 | [node name="MouseSensitivityControl" parent="VBoxContainer/MarginContainer/VBoxContainer" index="0" instance=ExtResource("3_fq3ml")] 24 | layout_mode = 2 25 | option_name = "Mouse Sensitivity" 26 | option_section = 1 27 | key = "MouseSensitivity" 28 | section = "InputSettings" 29 | 30 | [node name="OptionLabel" parent="VBoxContainer/MarginContainer/VBoxContainer/MouseSensitivityControl" index="0"] 31 | text = "Mouse Sensitivity :" 32 | 33 | [node name="HSlider" parent="VBoxContainer/MarginContainer/VBoxContainer/MouseSensitivityControl" index="1"] 34 | min_value = 0.25 35 | max_value = 2.0 36 | tick_count = 8 37 | 38 | [node name="HSeparator" type="HSeparator" parent="VBoxContainer" index="1"] 39 | layout_mode = 2 40 | 41 | [editable path="VBoxContainer/MarginContainer/VBoxContainer/MouseSensitivityControl"] 42 | -------------------------------------------------------------------------------- /scenes/menus/options_menu/master_options_menu.gd: -------------------------------------------------------------------------------- 1 | extends MasterOptionsMenu 2 | -------------------------------------------------------------------------------- /scenes/menus/options_menu/master_options_menu.gd.uid: -------------------------------------------------------------------------------- 1 | uid://pvohdqacnh7x 2 | -------------------------------------------------------------------------------- /scenes/menus/options_menu/master_options_menu.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=3 format=3 uid="uid://c42uvbu235hai"] 2 | 3 | [ext_resource type="PackedScene" uid="uid://bvwl11s2p0hd" path="res://addons/maaacks_menus_template/base/scenes/menus/options_menu/master_options_menu.tscn" id="1_sa28m"] 4 | [ext_resource type="Script" uid="uid://pvohdqacnh7x" path="res://scenes/menus/options_menu/master_options_menu.gd" id="2_c0csl"] 5 | 6 | [node name="MasterOptionsMenu" instance=ExtResource("1_sa28m")] 7 | script = ExtResource("2_c0csl") 8 | -------------------------------------------------------------------------------- /scenes/menus/options_menu/master_options_menu_with_tabs.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=7 format=3 uid="uid://c4ea4cwximdvs"] 2 | 3 | [ext_resource type="PackedScene" uid="uid://bvwl11s2p0hd" path="res://addons/maaacks_menus_template/base/scenes/menus/options_menu/master_options_menu.tscn" id="1_fqpxk"] 4 | [ext_resource type="Script" uid="uid://pvohdqacnh7x" path="res://scenes/menus/options_menu/master_options_menu.gd" id="2_w1dvr"] 5 | [ext_resource type="PackedScene" uid="uid://bdmyvhi6p72h0" path="res://scenes/menus/options_menu/input/input_options_menu.tscn" id="3_bn2s3"] 6 | [ext_resource type="PackedScene" uid="uid://c2j3k2fbtuxuo" path="res://scenes/menus/options_menu/input/input_extras_menu.tscn" id="4_6wkjv"] 7 | [ext_resource type="PackedScene" uid="uid://icvd66w5bdth" path="res://scenes/menus/options_menu/audio/audio_options_menu.tscn" id="5_kr6xa"] 8 | [ext_resource type="PackedScene" uid="uid://ck6wdaa0rrcot" path="res://scenes/menus/options_menu/video/video_options_menu_with_extras.tscn" id="6_n2uhm"] 9 | 10 | [node name="MasterOptionsMenu" instance=ExtResource("1_fqpxk")] 11 | script = ExtResource("2_w1dvr") 12 | 13 | [node name="TabContainer" parent="." index="0"] 14 | current_tab = 0 15 | 16 | [node name="Controls" parent="TabContainer" index="1" instance=ExtResource("3_bn2s3")] 17 | layout_mode = 2 18 | metadata/_tab_index = 0 19 | 20 | [node name="Inputs" parent="TabContainer" index="2" instance=ExtResource("4_6wkjv")] 21 | visible = false 22 | layout_mode = 2 23 | metadata/_tab_index = 1 24 | 25 | [node name="Audio" parent="TabContainer" index="3" instance=ExtResource("5_kr6xa")] 26 | visible = false 27 | layout_mode = 2 28 | metadata/_tab_index = 2 29 | 30 | [node name="Video" parent="TabContainer" index="4" instance=ExtResource("6_n2uhm")] 31 | visible = false 32 | layout_mode = 2 33 | metadata/_tab_index = 3 34 | -------------------------------------------------------------------------------- /scenes/menus/options_menu/mini_options_menu.gd: -------------------------------------------------------------------------------- 1 | extends MiniOptionsMenu 2 | -------------------------------------------------------------------------------- /scenes/menus/options_menu/mini_options_menu.gd.uid: -------------------------------------------------------------------------------- 1 | uid://b2a5c1vd81hq1 2 | -------------------------------------------------------------------------------- /scenes/menus/options_menu/mini_options_menu.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=3 format=3 uid="uid://bqyvoqq1viyc1"] 2 | 3 | [ext_resource type="PackedScene" uid="uid://vh1ucj2rfbby" path="res://addons/maaacks_menus_template/base/scenes/menus/options_menu/mini_options_menu.tscn" id="1_7wq3x"] 4 | [ext_resource type="Script" uid="uid://b2a5c1vd81hq1" path="res://scenes/menus/options_menu/mini_options_menu.gd" id="2_ryhko"] 5 | 6 | [node name="MiniOptionsMenu" instance=ExtResource("1_7wq3x")] 7 | script = ExtResource("2_ryhko") 8 | -------------------------------------------------------------------------------- /scenes/menus/options_menu/video/video_options_menu.gd: -------------------------------------------------------------------------------- 1 | extends VideoOptionsMenu 2 | -------------------------------------------------------------------------------- /scenes/menus/options_menu/video/video_options_menu.gd.uid: -------------------------------------------------------------------------------- 1 | uid://dq7md8hwnoebv 2 | -------------------------------------------------------------------------------- /scenes/menus/options_menu/video/video_options_menu.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=3 format=3 uid="uid://cjfxvkyvjhq6i"] 2 | 3 | [ext_resource type="PackedScene" uid="uid://b2numvphf2kau" path="res://addons/maaacks_menus_template/base/scenes/menus/options_menu/video/video_options_menu.tscn" id="1_hcxmf"] 4 | [ext_resource type="Script" uid="uid://dq7md8hwnoebv" path="res://scenes/menus/options_menu/video/video_options_menu.gd" id="2_x0wgl"] 5 | 6 | [node name="Video" instance=ExtResource("1_hcxmf")] 7 | script = ExtResource("2_x0wgl") 8 | -------------------------------------------------------------------------------- /scenes/menus/options_menu/video/video_options_menu_with_extras.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=4 format=3 uid="uid://ck6wdaa0rrcot"] 2 | 3 | [ext_resource type="PackedScene" uid="uid://b2numvphf2kau" path="res://addons/maaacks_menus_template/base/scenes/menus/options_menu/video/video_options_menu.tscn" id="1_r8snp"] 4 | [ext_resource type="Script" uid="uid://dq7md8hwnoebv" path="res://scenes/menus/options_menu/video/video_options_menu.gd" id="2_6rdlo"] 5 | [ext_resource type="PackedScene" uid="uid://b6bl3n5mp3m1e" path="res://addons/maaacks_menus_template/base/scenes/menus/options_menu/option_control/list_option_control.tscn" id="3_86wx4"] 6 | 7 | [node name="Video" instance=ExtResource("1_r8snp")] 8 | script = ExtResource("2_6rdlo") 9 | 10 | [node name="AntiAliasingControl" parent="VBoxContainer" index="3" instance=ExtResource("3_86wx4")] 11 | layout_mode = 2 12 | lock_titles = true 13 | option_values = [0, 1, 2, 3] 14 | option_titles = Array[String](["Disabled (Fastest)", "2x", "4x", "8x (Slowest)"]) 15 | option_name = "Anti-Aliasing" 16 | option_section = 3 17 | key = "Anti-aliasing" 18 | section = "VideoSettings" 19 | property_type = 2 20 | default_value = 0 21 | 22 | [node name="CameraShakeControl" parent="VBoxContainer" index="4" instance=ExtResource("3_86wx4")] 23 | visible = false 24 | layout_mode = 2 25 | lock_titles = true 26 | option_values = [1.0, 0.75, 0.5, 0.0] 27 | option_titles = Array[String](["Normal", "Reduced", "Minimal", "None"]) 28 | option_name = "Camera Shake" 29 | option_section = 3 30 | key = "CameraShake" 31 | section = "VideoSettings" 32 | property_type = 3 33 | default_value = 1.0 34 | -------------------------------------------------------------------------------- /scenes/opening/opening.gd: -------------------------------------------------------------------------------- 1 | extends "res://addons/maaacks_menus_template/base/scenes/opening/opening.gd" 2 | -------------------------------------------------------------------------------- /scenes/opening/opening.gd.uid: -------------------------------------------------------------------------------- 1 | uid://c0i8vr6g4tbb8 2 | -------------------------------------------------------------------------------- /scenes/opening/opening.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=3 format=3 uid="uid://i3snwo8faods"] 2 | 3 | [ext_resource type="PackedScene" uid="uid://sikc02ddepyt" path="res://addons/maaacks_menus_template/base/scenes/opening/opening.tscn" id="1_ke3tw"] 4 | [ext_resource type="Script" uid="uid://c0i8vr6g4tbb8" path="res://scenes/opening/opening.gd" id="2_yhkvs"] 5 | 6 | [node name="Opening" instance=ExtResource("1_ke3tw")] 7 | script = ExtResource("2_yhkvs") 8 | next_scene = "res://scenes/menus/main_menu/main_menu_with_animations.tscn" 9 | -------------------------------------------------------------------------------- /scenes/opening/opening_with_logo.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=4 format=3 uid="uid://gh2rpt0qvupc"] 2 | 3 | [ext_resource type="PackedScene" uid="uid://sikc02ddepyt" path="res://addons/maaacks_menus_template/base/scenes/opening/opening.tscn" id="1_eyvnu"] 4 | [ext_resource type="Script" uid="uid://c0i8vr6g4tbb8" path="res://scenes/opening/opening.gd" id="2_i1ftt"] 5 | [ext_resource type="Texture2D" uid="uid://b218vdq337vl" path="res://assets/godot_engine_logo/logo_vertical_color_dark.png" id="3_nk1kj"] 6 | 7 | [node name="Opening" instance=ExtResource("1_eyvnu")] 8 | script = ExtResource("2_i1ftt") 9 | next_scene = "uid://cbeoayh8148ux" 10 | images = Array[Texture2D]([ExtResource("3_nk1kj")]) 11 | -------------------------------------------------------------------------------- /scenes/overlaid_menus/mini_options_overlaid_menu.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=3 format=3 uid="uid://blmxgrqlvdh1u"] 2 | 3 | [ext_resource type="PackedScene" uid="uid://cikf3o5omnunl" path="res://addons/maaacks_menus_template/base/scenes/overlaid_menu/menus/mini_options_overlaid_menu.tscn" id="1_e6soq"] 4 | [ext_resource type="PackedScene" uid="uid://bqyvoqq1viyc1" path="res://scenes/menus/options_menu/mini_options_menu.tscn" id="2_aa4th"] 5 | 6 | [node name="MiniOptionsOverlaidMenu" instance=ExtResource("1_e6soq")] 7 | menu_scene = ExtResource("2_aa4th") 8 | -------------------------------------------------------------------------------- /scenes/overlaid_menus/overlaid_menu.gd: -------------------------------------------------------------------------------- 1 | extends OverlaidMenu 2 | -------------------------------------------------------------------------------- /scenes/overlaid_menus/overlaid_menu.gd.uid: -------------------------------------------------------------------------------- 1 | uid://b7eod46a1b35e 2 | -------------------------------------------------------------------------------- /scenes/overlaid_menus/overlaid_menu.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=3 format=3 uid="uid://b2pfuovgnrc67"] 2 | 3 | [ext_resource type="PackedScene" uid="uid://wny2d8dvp3ok" path="res://addons/maaacks_menus_template/base/scenes/overlaid_menu/overlaid_menu.tscn" id="1_x1aey"] 4 | [ext_resource type="Script" uid="uid://b7eod46a1b35e" path="res://scenes/overlaid_menus/overlaid_menu.gd" id="2_01cvp"] 5 | 6 | [node name="OverlaidMenu" instance=ExtResource("1_x1aey")] 7 | script = ExtResource("2_01cvp") 8 | -------------------------------------------------------------------------------- /scenes/overlaid_menus/overlaid_menu_container.gd: -------------------------------------------------------------------------------- 1 | extends OverlaidMenuContainer 2 | -------------------------------------------------------------------------------- /scenes/overlaid_menus/overlaid_menu_container.gd.uid: -------------------------------------------------------------------------------- 1 | uid://c2q1ame0h6gu7 2 | -------------------------------------------------------------------------------- /scenes/overlaid_menus/overlaid_menu_container.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=3 format=3 uid="uid://mcccpt8t8it4"] 2 | 3 | [ext_resource type="PackedScene" uid="uid://bqqngki8bm3iq" path="res://addons/maaacks_menus_template/base/scenes/overlaid_menu/overlaid_menu_container.tscn" id="1_y6ien"] 4 | [ext_resource type="Script" uid="uid://c2q1ame0h6gu7" path="res://scenes/overlaid_menus/overlaid_menu_container.gd" id="2_7kq66"] 5 | 6 | [node name="OverlaidMenuContainer" instance=ExtResource("1_y6ien")] 7 | script = ExtResource("2_7kq66") 8 | -------------------------------------------------------------------------------- /scenes/overlaid_menus/pause_menu.gd: -------------------------------------------------------------------------------- 1 | extends PauseMenu 2 | -------------------------------------------------------------------------------- /scenes/overlaid_menus/pause_menu.gd.uid: -------------------------------------------------------------------------------- 1 | uid://k350hvmxx1xp 2 | -------------------------------------------------------------------------------- /scenes/overlaid_menus/pause_menu.tscn: -------------------------------------------------------------------------------- 1 | [gd_scene load_steps=4 format=3 uid="uid://ocw04h345l3a"] 2 | 3 | [ext_resource type="PackedScene" uid="uid://b5cd6sa8qq4vc" path="res://addons/maaacks_menus_template/base/scenes/overlaid_menu/menus/pause_menu.tscn" id="1_jotxm"] 4 | [ext_resource type="Script" uid="uid://k350hvmxx1xp" path="res://scenes/overlaid_menus/pause_menu.gd" id="2_ggfh4"] 5 | [ext_resource type="PackedScene" uid="uid://blmxgrqlvdh1u" path="res://scenes/overlaid_menus/mini_options_overlaid_menu.tscn" id="3_n67em"] 6 | 7 | [node name="PauseMenu" instance=ExtResource("1_jotxm")] 8 | script = ExtResource("2_ggfh4") 9 | options_packed_scene = ExtResource("3_n67em") 10 | main_menu_scene = "res://scenes/menus/main_menu/main_menu_with_animations.tscn" 11 | --------------------------------------------------------------------------------