Removed one parameter from RoomManager::Create()

This commit is contained in:
Kayne Ruse
2014-11-26 06:41:29 +11:00
parent 6485839dcf
commit fa0d232727
3 changed files with 9 additions and 28 deletions
+2 -17
View File
@@ -29,25 +29,16 @@
//public access methods //public access methods
//------------------------- //-------------------------
int RoomManager::Create(std::string roomName, std::string tilesetName) { int RoomManager::Create(std::string roomName) {
//create the room //create the room
RoomData* newRoom = &elementMap[counter]; //implicitly constructs the element RoomData* newRoom = &elementMap[counter]; //implicitly constructs the element
newRoom->SetRoomName(roomName);
newRoom->pager.SetLuaState(lua); newRoom->pager.SetLuaState(lua);
//finish the routine //finish the routine
return counter++; return counter++;
} }
int RoomManager::Load(std::string roomName, std::string tilesetName) {
//TODO: RoomManager::Load()
return -1;
}
int RoomManager::Save(int uid) {
//TODO: RoomManager::Save(uid)
return -1;
}
void RoomManager::Unload(int uid) { void RoomManager::Unload(int uid) {
//find the room //find the room
std::map<int, RoomData>::iterator it = elementMap.find(uid); std::map<int, RoomData>::iterator it = elementMap.find(uid);
@@ -59,12 +50,6 @@ void RoomManager::Unload(int uid) {
elementMap.erase(uid); elementMap.erase(uid);
} }
void RoomManager::Delete(int uid) {
//TODO: RoomManager::Delete(int uid)
//NOTE: aliased to RoomManager::Unload(int uid)
Unload(uid);
}
void RoomManager::UnloadAll() { void RoomManager::UnloadAll() {
elementMap.clear(); elementMap.clear();
} }
+6 -5
View File
@@ -34,15 +34,12 @@
class RoomManager: class RoomManager:
public Singleton<RoomManager>, public Singleton<RoomManager>,
public ManagerInterface<RoomData, std::string, std::string> public ManagerInterface<RoomData, std::string>
{ {
public: public:
//common public methods //common public methods
int Create(std::string, std::string) override; int Create(std::string) override;
int Load(std::string, std::string) override;
int Save(int uid) override;
void Unload(int uid) override; void Unload(int uid) override;
void Delete(int uid) override;
void UnloadAll() override; void UnloadAll() override;
void UnloadIf(std::function<bool(std::pair<const int,RoomData>)> fn) override; void UnloadIf(std::function<bool(std::pair<const int,RoomData>)> fn) override;
@@ -63,6 +60,10 @@ private:
RoomManager() = default; RoomManager() = default;
~RoomManager() = default; ~RoomManager() = default;
int Load(std::string) override { return -1; }
int Save(int uid) override { return -1; }
void Delete(int uid) override { }
lua_State* lua = nullptr; lua_State* lua = nullptr;
int counter = 0; int counter = 0;
}; };
+1 -6
View File
@@ -27,14 +27,9 @@ int createRoom(lua_State* L) {
//create & get the room //create & get the room
RoomManager& roomMgr = RoomManager::GetSingleton(); RoomManager& roomMgr = RoomManager::GetSingleton();
int uid = roomMgr.Create("",""); //TODO: All new managers need their internals fleshed out int uid = roomMgr.Create(lua_tostring(L, 1));
RoomData* room = roomMgr.Get(uid); RoomData* room = roomMgr.Get(uid);
//setup the room
//TODO: room parameters only set via lua, fix this
room->SetRoomName(lua_tostring(L, 1));
// room->SetTilesetName(lua_tostring(L, 2));
//return room, uid //return room, uid
lua_pushlightuserdata(L, static_cast<void*>(room)); lua_pushlightuserdata(L, static_cast<void*>(room));
lua_pushinteger(L, uid); lua_pushinteger(L, uid);