aboutsummaryrefslogtreecommitdiff
path: root/extension/src/openvic-extension/register_types.cpp
diff options
context:
space:
mode:
author hop311 <hop3114@gmail.com>2024-03-05 01:19:27 +0100
committer hop311 <hop3114@gmail.com>2024-03-05 10:36:47 +0100
commit444134a93bd5c704f5201ff30371dc81d0669e46 (patch)
tree851a3ad589bab71364d4c6adcb1ee30235abc2c7 /extension/src/openvic-extension/register_types.cpp
parenteaae420cd2aca224d15f6276624c2fab882c978a (diff)
Move GDExtension menu-related functions to MenuSingletonmenu-singleton
Diffstat (limited to 'extension/src/openvic-extension/register_types.cpp')
-rw-r--r--extension/src/openvic-extension/register_types.cpp17
1 files changed, 13 insertions, 4 deletions
diff --git a/extension/src/openvic-extension/register_types.cpp b/extension/src/openvic-extension/register_types.cpp
index 750cc53..fffb370 100644
--- a/extension/src/openvic-extension/register_types.cpp
+++ b/extension/src/openvic-extension/register_types.cpp
@@ -15,14 +15,16 @@
#include "openvic-extension/singletons/Checksum.hpp"
#include "openvic-extension/singletons/GameSingleton.hpp"
#include "openvic-extension/singletons/LoadLocalisation.hpp"
+#include "openvic-extension/singletons/MenuSingleton.hpp"
using namespace godot;
using namespace OpenVic;
-static Checksum* _checksum_singleton;
-static LoadLocalisation* _load_localisation;
-static GameSingleton* _game_singleton;
-static AssetManager* _asset_manager_singleton;
+static Checksum* _checksum_singleton = nullptr;
+static LoadLocalisation* _load_localisation = nullptr;
+static GameSingleton* _game_singleton = nullptr;
+static MenuSingleton* _menu_singleton = nullptr;
+static AssetManager* _asset_manager_singleton = nullptr;
void initialize_openvic_types(ModuleInitializationLevel p_level) {
if (p_level != MODULE_INITIALIZATION_LEVEL_SCENE) {
@@ -41,6 +43,10 @@ void initialize_openvic_types(ModuleInitializationLevel p_level) {
_game_singleton = memnew(GameSingleton);
Engine::get_singleton()->register_singleton("GameSingleton", GameSingleton::get_singleton());
+ ClassDB::register_class<MenuSingleton>();
+ _menu_singleton = memnew(MenuSingleton);
+ Engine::get_singleton()->register_singleton("MenuSingleton", MenuSingleton::get_singleton());
+
ClassDB::register_class<AssetManager>();
_asset_manager_singleton = memnew(AssetManager);
Engine::get_singleton()->register_singleton("AssetManager", AssetManager::get_singleton());
@@ -77,6 +83,9 @@ void uninitialize_openvic_types(ModuleInitializationLevel p_level) {
Engine::get_singleton()->unregister_singleton("GameSingleton");
memdelete(_game_singleton);
+ Engine::get_singleton()->unregister_singleton("MenuSingleton");
+ memdelete(_menu_singleton);
+
Engine::get_singleton()->unregister_singleton("AssetManager");
memdelete(_asset_manager_singleton);
}