diff options
Diffstat (limited to 'extension/src/TestSingleton.cpp')
-rw-r--r-- | extension/src/TestSingleton.cpp | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/extension/src/TestSingleton.cpp b/extension/src/TestSingleton.cpp new file mode 100644 index 0000000..0855a30 --- /dev/null +++ b/extension/src/TestSingleton.cpp @@ -0,0 +1,36 @@ +#include "TestSingleton.hpp" + +#include <godot_cpp/core/class_db.hpp> +#include <godot_cpp/variant/utility_functions.hpp> + +using namespace godot; +using namespace OpenVic2; + +TestSingleton *TestSingleton::singleton = nullptr; + +void TestSingleton::_bind_methods() +{ + ClassDB::bind_method(D_METHOD("hello_singleton"), &TestSingleton::hello_singleton); +} + +TestSingleton *TestSingleton::get_singleton() +{ + return singleton; +} + +TestSingleton::TestSingleton() +{ + ERR_FAIL_COND(singleton != nullptr); + singleton = this; +} + +TestSingleton::~TestSingleton() +{ + ERR_FAIL_COND(singleton != this); + singleton = nullptr; +} + +void TestSingleton::hello_singleton() +{ + UtilityFunctions::print("Hello GDExtension Singleton!"); +}
\ No newline at end of file |