diff options
author | ClarkeCode <clarke.john.robert@gmail.com> | 2023-04-27 22:13:52 +0200 |
---|---|---|
committer | ClarkeCode <clarke.john.robert@gmail.com> | 2023-04-27 22:13:52 +0200 |
commit | 0b273743b480874281a8987c72b2f1b666bc289a (patch) | |
tree | 3f5d5a6316ac66407e61c8a56fe732cdf06209e5 /extension/src/register_types.cpp | |
parent | 98dd680a641a2cbe0f1f93202a5beffdfd35c9f7 (diff) | |
parent | 10053cf259c55ee45803268a844edf1011d8a16b (diff) |
Merge branch 'main' of github.com:OpenVic2Project/OpenVic2 into goods
Diffstat (limited to 'extension/src/register_types.cpp')
-rw-r--r-- | extension/src/register_types.cpp | 47 |
1 files changed, 16 insertions, 31 deletions
diff --git a/extension/src/register_types.cpp b/extension/src/register_types.cpp index d1613a5..b99f1a8 100644 --- a/extension/src/register_types.cpp +++ b/extension/src/register_types.cpp @@ -1,37 +1,24 @@ #include "register_types.h" -#include <gdextension_interface.h> -#include <godot_cpp/core/class_db.hpp> -#include <godot_cpp/core/defs.hpp> -#include <godot_cpp/godot.hpp> + #include <godot_cpp/classes/engine.hpp> -#include "TestSingleton.hpp" -#include "Simulation.hpp" #include "Checksum.hpp" #include "LoadLocalisation.hpp" +#include "GameSingleton.hpp" +#include "MapMesh.hpp" using namespace godot; using namespace OpenVic2; -static TestSingleton* _test_singleton; -static Simulation* _simulation; static Checksum* _checksum; static LoadLocalisation* _load_localisation; +static GameSingleton* _map_singleton; -void initialize_openvic2_types(ModuleInitializationLevel p_level) -{ +void initialize_openvic2_types(ModuleInitializationLevel p_level) { if (p_level != MODULE_INITIALIZATION_LEVEL_SCENE) { return; } - ClassDB::register_class<TestSingleton>(); - _test_singleton = memnew(TestSingleton); - Engine::get_singleton()->register_singleton("TestSingleton", TestSingleton::get_singleton()); - - ClassDB::register_class<Simulation>(); - _simulation = memnew(Simulation); - Engine::get_singleton()->register_singleton("Simulation", Simulation::get_singleton()); - ClassDB::register_class<Checksum>(); _checksum = memnew(Checksum); Engine::get_singleton()->register_singleton("Checksum", Checksum::get_singleton()); @@ -40,6 +27,11 @@ void initialize_openvic2_types(ModuleInitializationLevel p_level) _load_localisation = memnew(LoadLocalisation); Engine::get_singleton()->register_singleton("LoadLocalisation", LoadLocalisation::get_singleton()); + ClassDB::register_class<GameSingleton>(); + _map_singleton = memnew(GameSingleton); + Engine::get_singleton()->register_singleton("GameSingleton", GameSingleton::get_singleton()); + + ClassDB::register_class<MapMesh>(); } void uninitialize_openvic2_types(ModuleInitializationLevel p_level) { @@ -47,26 +39,19 @@ void uninitialize_openvic2_types(ModuleInitializationLevel p_level) { return; } - Engine::get_singleton()->unregister_singleton("TestSingleton"); - memdelete(_test_singleton); - - Engine::get_singleton()->unregister_singleton("Simulation"); - memdelete(_simulation); - Engine::get_singleton()->unregister_singleton("Checksum"); memdelete(_checksum); Engine::get_singleton()->unregister_singleton("LoadLocalisation"); memdelete(_load_localisation); -} -extern "C" -{ + Engine::get_singleton()->unregister_singleton("GameSingleton"); + memdelete(_map_singleton); +} +extern "C" { // Initialization. - - GDExtensionBool GDE_EXPORT openvic2_library_init(const GDExtensionInterface *p_interface, const GDExtensionClassLibraryPtr p_library, GDExtensionInitialization *r_initialization) - { + GDExtensionBool GDE_EXPORT openvic2_library_init(GDExtensionInterface const* p_interface, const GDExtensionClassLibraryPtr p_library, GDExtensionInitialization* r_initialization) { GDExtensionBinding::InitObject init_obj(p_interface, p_library, r_initialization); init_obj.register_initializer(initialize_openvic2_types); @@ -75,4 +60,4 @@ extern "C" return init_obj.init(); } -}
\ No newline at end of file +} |