1
0
Fork 0
Univerxel/src/modules/core/Core.hpp

37 lines
699 B
C++

#pragma once
#include "core/world/Registry.hpp"
namespace world::module::core {
/// Minimal root module
class Core final: public Module {
public:
Core() { }
~Core() { }
const char *getName() const override { return "core"; }
const char *getRequirements() const override { return ""; }
void setup(Registry::Loader);
struct IDS {
size_t AIR;
size_t DIRT;
size_t GRASS;
size_t ROCK;
size_t SAND;
size_t WATER;
size_t PLAYER;
} ids;
static _FORCE_INLINE_ Core *Get() {
assert(sInstance != nullptr && "Uninitialized module");
return sInstance;
}
private:
static Core *sInstance;
};
}