Skip to content

Commit 68288f2

Browse files
committed
use maaack game template
for scene loading n stuff, i want to make mechanics, not menus. aint a frontenddev will break a lot of stuff
1 parent 65bbb00 commit 68288f2

File tree

376 files changed

+9638
-138
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

376 files changed

+9638
-138
lines changed

src/2DPlatformer/Scenes/mainMenu.tscn

-102
This file was deleted.

src/2DPlatformer/scripts/player.gd

+2-2
Original file line numberDiff line numberDiff line change
@@ -29,13 +29,13 @@ func _physics_process(delta):
2929
land()
3030
in_air = false
3131

32-
if Input.is_action_just_pressed("jump"):
32+
if Input.is_action_just_pressed("up"):
3333
if is_on_floor(): #normal jump from floor
3434
jump()
3535
elif not has_double_jumped:
3636
double_jump() #double jump in air
3737

38-
direction = Input.get_vector("left", "right", "jump", "down")
38+
direction = Input.get_vector("left", "right", "up", "down")
3939

4040
if direction.x != 0 && animated_sprite.animation != "land":
4141
velocity.x = direction.x * speed

src/ATTRIBUTION.md

+24
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
# Attribution
2+
## Collaborators
3+
4+
### Godot Game Template
5+
Author: [Marek Belski and contributors](https://github.com/Maaack/Godot-Game-Template/graphs/contributors)
6+
Source: [github: Godot-Game-Template](https://github.com/Maaack/Godot-Game-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+
#### Git
22+
Author: [Linus Torvalds](https://github.com/torvalds)
23+
Source: [git-scm.com](https://git-scm.com/downloads)
24+
License: [GNU General Public License version 2](https://opensource.org/licenses/GPL-2.0)

src/ATTRIBUTION.md.uid

+1
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
uid://j4isv04d616a

src/LICENSE.txt

+19
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
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.

src/READMEmaaa.md

+163
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,163 @@
1+
# Godot Game Template
2+
For Godot 4.2+
3+
4+
This template has a main menu, options menus, pause menu, credits, scene loader, extra tools, and an example game scene.
5+
6+
[Example on itch.io](https://maaack.itch.io/godot-game-template)
7+
8+
#### Videos
9+
10+
[![Quick Intro Video](https://img.youtube.com/vi/U9CB3vKINVw/hqdefault.jpg)](https://youtu.be/U9CB3vKINVw)
11+
[![Installation Video](https://img.youtube.com/vi/-QWJnZ8bVdk/hqdefault.jpg)](https://youtu.be/-QWJnZ8bVdk)
12+
[All videos](/addons/maaacks_game_template/docs/Videos.md)
13+
14+
#### Screenshots
15+
![Main Menu](/addons/maaacks_game_template/media/screenshot-3-1.png)
16+
![Key Rebinding](/addons/maaacks_game_template/media/screenshot-3-2.png)
17+
![Audio Controls](/addons/maaacks_game_template/media/screenshot-3-4.png)
18+
![Pause Menu](/addons/maaacks_game_template/media/screenshot-3-6.png)
19+
[All screenshots](/addons/maaacks_game_template/docs/Screenshots.md)
20+
21+
## Use Case
22+
Setup menus and accessibility features in about 15 minutes.
23+
24+
The core components can support a larger project, but the template was originally built to support smaller projects and game jams.
25+
26+
## Features
27+
28+
### Base
29+
30+
The `base/` folder holds the core components of the menus application.
31+
32+
- Main Menu
33+
- Options Menus
34+
- Pause Menu
35+
- Credits
36+
- Loading Screen
37+
- Opening Scene
38+
- Persistent Settings
39+
- Simple Config Interface
40+
- Extensible Overlay Menus
41+
- Keyboard/Mouse Support
42+
- Gamepad Support
43+
- UI Sound Controller
44+
- Background Music Controller
45+
46+
### Extras
47+
48+
The `extras/` folder holds components that extend the core application.
49+
50+
- Win & Lose Menus
51+
- Level Loaders
52+
- Level Progress Manager
53+
- Logging Scripts
54+
- Script for Releasing on [itch.io](https://itch.io/) with [butler](https://itch.io/docs/butler/)
55+
56+
### Examples
57+
58+
The `examples/` folder contains an example project using inherited scenes from the `base/` and `extras/`.
59+
60+
- Example Game Scene
61+
- Base Level Class
62+
- Example Levels
63+
- End Credits
64+
- Additional Inherited Scenes:
65+
- Game Options Menu w/ Reset button
66+
- Master Options Menu w/ Game Options tab
67+
- Main Menu w/ Animations
68+
- Opening w/ Godot Logo
69+
- Level Loading Screen
70+
- Loading Screen w/ Shader Pre-caching
71+
72+
### How it Works
73+
- `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`.
74+
- `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).
75+
- `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`).
76+
- `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.
77+
- `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.
78+
- `credits.tscn` reads from `ATTRIBUTION.md` to automatically generate the content for it's scrolling text label.
79+
- 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.
80+
- `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.
81+
- The `PauseMenuController` node loads the `pause_menu.tscn` when triggering `ui-cancel`.
82+
- `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.
83+
- `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.
84+
- `game_ui.tscn` is a demo game scene that displays recognized action inputs, and features the `PauseMenuController` node, the `LevelLoader` node to load levels from a directory, and `LevelListManager` to manage level progress and show menus in case of a win or loss.
85+
86+
## Installation
87+
88+
### Godot Asset Library
89+
This package is available as both a template and a plugin, meaning it can be used to start a new project, or added to an existing project.
90+
91+
![Package Icon](/addons/maaacks_game_template/media/game-icon-black-transparent-256x256.png)
92+
93+
When starting a new project:
94+
95+
1. Go to the `Asset Library Projects` tab.
96+
2. Search for "Maaack's Game Template".
97+
3. Click on the result to open the template details.
98+
4. Click to Download.
99+
5. Give the project a new name and destination.
100+
6. Click to Install & Edit.
101+
7. Continue with the [New Project Instructions](/addons/maaacks_game_template/docs/NewProject.md)
102+
103+
When editing an existing project:
104+
105+
1. Go to the `AssetLib` tab.
106+
2. Search for "Maaack's Game Template Plugin".
107+
3. Click on the result to open the plugin details.
108+
4. Click to Download.
109+
5. Check that contents are getting installed to `addons/` and there are no conflicts.
110+
6. Click to Install.
111+
7. Reload the project (you may see errors before you do this).
112+
8. Enable the plugin from the Project Settings > Plugins tab.
113+
If it's enabled for the first time,
114+
1. A dialogue window will appear asking to copy the example scenes out of `addons/`.
115+
2. Another dialogue window will ask to update the project's main scene.
116+
9. Continue with the [Existing Project Instructions](/addons/maaacks_game_template/docs/ExistingProject.md)
117+
118+
119+
### GitHub
120+
121+
122+
1. Download the latest release version from [GitHub](https://github.com/Maaack/Godot-Game-Template/releases/latest).
123+
2. Extract the contents of the archive.
124+
3. Move the `addons/maaacks_game_template` folder into your project's `addons/` folder.
125+
4. Open/Reload the project.
126+
5. Enable the plugin from the Project Settings > Plugins tab.
127+
If it's enabled for the first time,
128+
1. A dialogue window will appear asking to copy the example scenes out of `addons/`.
129+
2. Another dialogue window will ask to update the project's main scene.
130+
6. Continue with the [Existing Project Instructions](/addons/maaacks_game_template/docs/ExistingProject.md)
131+
132+
#### Minimal
133+
134+
Users that want a minimal set of features can try [Maaack's Menus Template](https://github.com/Maaack/Godot-Menus-Template) or other options from the [plugin suite](/addons/maaacks_game_template/docs/PluginSuite.md).
135+
136+
## Usage
137+
138+
Changes can be made directly to scenes and scripts outside of `addons/`.
139+
140+
A copy of the `examples/` directory is made outside of `addons/` when the plugin is enabled for the first time. However, if this is skipped, it is recommended developers inherit from scenes they want to use, and save the inherited scene outside of `addons/`. This avoids changes getting lost either from the package updating, or because of a `.gitignore`.
141+
142+
### New Project
143+
These instructions assume starting with the entire contents of the project folder. This will be the case when cloning the repo, or starting from the *template* version in the Godot Asset Library.
144+
145+
146+
[New Project Instructions](/addons/maaacks_game_template/docs/NewProject.md)
147+
148+
### Existing Project
149+
150+
These instructions assume starting with just the contents of `addons/`. This will be the case when installing the *plugin* version in the Godot Asset Library.
151+
152+
[Existing Project Instructions](/addons/maaacks_game_template/docs/ExistingProject.md)
153+
154+
### More Documentation
155+
156+
[Main Menu Setup](/addons/maaacks_game_template/docs/MainMenuSetup.md)
157+
[Game Scene Setup](/addons/maaacks_game_template/docs/GameSceneSetup.md)
158+
159+
## Links
160+
[Attribution](/addons/maaacks_game_template/ATTRIBUTION.md)
161+
[License](/addons/maaacks_game_template/LICENSE.txt)
162+
[Godot Asset Library - Template](https://godotengine.org/asset-library/asset/2703)
163+
[Godot Asset Library - Plugin](https://godotengine.org/asset-library/asset/2709)

src/READMEmaaa.md.uid

+1
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
uid://t1gyiuyccw4e
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
# Attribution
2+
## Collaborators
3+
4+
### Godot Game Template
5+
Author: [Marek Belski and contributors](https://github.com/Maaack/Godot-Game-Template/graphs/contributors)
6+
Source: [github: Godot-Game-Template](https://github.com/Maaack/Godot-Game-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)
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
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.

0 commit comments

Comments
 (0)