Removed MonsterManager's Singleton status, RoomData now has mgr members
RoomData now has monsterMgr and waypointMgr members, so that it can compare it's characters to the monster & waypoints, etc. RoomManager has been updated. It now has a database reference, which is passed to the monsterMgr of new rooms. The room API also has functions which expose these managers to lua.
This commit is contained in:
@@ -21,6 +21,14 @@
|
||||
*/
|
||||
#include "monster_manager.hpp"
|
||||
|
||||
MonsterManager::MonsterManager() {
|
||||
//EMPTY
|
||||
}
|
||||
|
||||
MonsterManager::~MonsterManager() {
|
||||
UnloadAll();
|
||||
}
|
||||
|
||||
int MonsterManager::Create(std::string) {
|
||||
//TODO
|
||||
}
|
||||
@@ -49,14 +57,6 @@ std::map<int, MonsterData>* MonsterManager::GetContainer() {
|
||||
//TODO
|
||||
}
|
||||
|
||||
sqlite3* MonsterManager::SetDatabase(sqlite3* db) {
|
||||
//TODO
|
||||
}
|
||||
|
||||
sqlite3* MonsterManager::GetDatabase() {
|
||||
//TODO
|
||||
}
|
||||
|
||||
lua_State* MonsterManager::SetLuaState(lua_State* L) {
|
||||
//TODO
|
||||
}
|
||||
@@ -64,3 +64,11 @@ lua_State* MonsterManager::SetLuaState(lua_State* L) {
|
||||
lua_State* MonsterManager::GetLuaState() {
|
||||
//TODO
|
||||
}
|
||||
|
||||
sqlite3* MonsterManager::SetDatabase(sqlite3* db) {
|
||||
//TODO
|
||||
}
|
||||
|
||||
sqlite3* MonsterManager::GetDatabase() {
|
||||
//TODO
|
||||
}
|
||||
|
||||
@@ -23,7 +23,6 @@
|
||||
#define MONSTERMANAGER_HPP_
|
||||
|
||||
#include "monster_data.hpp"
|
||||
#include "singleton.hpp"
|
||||
|
||||
#include "lua.hpp"
|
||||
#include "sqlite3.h"
|
||||
@@ -32,8 +31,11 @@
|
||||
#include <map>
|
||||
#include <string>
|
||||
|
||||
class MonsterManager: public Singleton<MonsterManager> {
|
||||
class MonsterManager {
|
||||
public:
|
||||
MonsterManager();
|
||||
~MonsterManager();
|
||||
|
||||
//common public methods
|
||||
int Create(std::string);
|
||||
void Unload(int uid);
|
||||
@@ -47,21 +49,16 @@ public:
|
||||
std::map<int, MonsterData>* GetContainer();
|
||||
|
||||
//hooks
|
||||
sqlite3* SetDatabase(sqlite3* db);
|
||||
sqlite3* GetDatabase();
|
||||
lua_State* SetLuaState(lua_State* L);
|
||||
lua_State* GetLuaState();
|
||||
sqlite3* SetDatabase(sqlite3* db);
|
||||
sqlite3* GetDatabase();
|
||||
|
||||
private:
|
||||
friend Singleton<MonsterManager>;
|
||||
|
||||
MonsterManager() = default;
|
||||
~MonsterManager() = default;
|
||||
|
||||
//members
|
||||
std::map<int, MonsterData> elementMap;
|
||||
sqlite3* database = nullptr;
|
||||
lua_State* lua = nullptr;
|
||||
sqlite3* database = nullptr;
|
||||
};
|
||||
|
||||
#endif
|
||||
Reference in New Issue
Block a user