Removed one parameter from RoomManager::Create()
This commit is contained in:
@@ -29,25 +29,16 @@
|
||||
//public access methods
|
||||
//-------------------------
|
||||
|
||||
int RoomManager::Create(std::string roomName, std::string tilesetName) {
|
||||
int RoomManager::Create(std::string roomName) {
|
||||
//create the room
|
||||
RoomData* newRoom = &elementMap[counter]; //implicitly constructs the element
|
||||
newRoom->SetRoomName(roomName);
|
||||
newRoom->pager.SetLuaState(lua);
|
||||
|
||||
//finish the routine
|
||||
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) {
|
||||
//find the room
|
||||
std::map<int, RoomData>::iterator it = elementMap.find(uid);
|
||||
@@ -59,12 +50,6 @@ void RoomManager::Unload(int 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() {
|
||||
elementMap.clear();
|
||||
}
|
||||
|
||||
@@ -34,15 +34,12 @@
|
||||
|
||||
class RoomManager:
|
||||
public Singleton<RoomManager>,
|
||||
public ManagerInterface<RoomData, std::string, std::string>
|
||||
public ManagerInterface<RoomData, std::string>
|
||||
{
|
||||
public:
|
||||
//common public methods
|
||||
int Create(std::string, std::string) override;
|
||||
int Load(std::string, std::string) override;
|
||||
int Save(int uid) override;
|
||||
int Create(std::string) override;
|
||||
void Unload(int uid) override;
|
||||
void Delete(int uid) override;
|
||||
|
||||
void UnloadAll() override;
|
||||
void UnloadIf(std::function<bool(std::pair<const int,RoomData>)> fn) override;
|
||||
@@ -63,6 +60,10 @@ private:
|
||||
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;
|
||||
int counter = 0;
|
||||
};
|
||||
|
||||
@@ -27,14 +27,9 @@ int createRoom(lua_State* L) {
|
||||
|
||||
//create & get the room
|
||||
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);
|
||||
|
||||
//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
|
||||
lua_pushlightuserdata(L, static_cast<void*>(room));
|
||||
lua_pushinteger(L, uid);
|
||||
|
||||
Reference in New Issue
Block a user