It contains actors like hero, ennemis or characters. They can be controlled by players but they can also be controlled by the game itself.
- Actor is located at the root of
actors/folder - sub-classes of it are arranged in sub-folders
It contains assets like Audios, Fonts or Images which are actually used in the game.
It contains reusable components which can be added to any scene to give them abilities.
Add the Clickable to an element to make it clickable, it will need a Area2D as child to define the clickable area.
To be used when players can collect items by pressing "action_collect" when they are close to it.
Add the Magnet component to an element to attract elements which contain a Magnetable component.
The Magnetable component can only be used on RigidBody2D and its sub-classes.
To be used when elements can trigger other elements.
To be added on scenes containing buttons to play sounds on hover or on click.
...
One group of files for each part of the game. For instance, menus will use MenuTranslations files.
.xlsxin the source of truth, the only one to be modified.csvis generated form thexlsx(in UTF-8)- other files are generated by Godot
Themes which may be used multiple times in the game.
MenuThemeis to be used for menus.
Contains scenes like levels and menus.
The GameConsole is a UI for developers which allows to enter commands for debugging.
By default, on an AZERTY it opens when typing the "²" key or "#".
To add it to a scene, add the GameConsole to it, and add Command children nodes.
Every Command nodes have to be configured to target an existing node of the scene,
onto an existing function with the right parameters.
To define a parameter there are 2 formats:
name:typeif parameter is mandatory (eg:time:float);name:type:defaultif parameter is optional, optionals must be last parameters (eg:time:float:0.8).
Allowed types are: string, int or float.
Need explanation?
Need explanation?
Autoloaded script to use to store and load progression of the player.
Make sure ProgressionService.init() is called while starting the game.
Use:
ProgressionService.data: to get the current value of ProgressionProgressionService.save(progression: Progression): to save the given progression
To change the values to save you'll have to change:
ProgressionService._serialize()method which serializes the progression objectProgressionService._parse()method which parses the saved valueProgressionclass which is the structured data
Use SceneTransition.change_scene(...) instead of good old get_tree().change_scene_to_file(...) to:
- add a fading transition between scenes;
- execute a code between fade out and fade int, for saving purpose for instance.