correctly delete old rooms

This commit is contained in:
2022-12-07 15:41:00 +01:00
parent 4f886fc0b1
commit d36d33ca96
23 changed files with 222 additions and 242 deletions

View File

@@ -116,11 +116,25 @@ namespace EscapeRoomEngine.Engine.Runtime
room.AddSpace(space, exit);
}
public void HidePreviousRoom()
public void HidePreviousRoom(bool destroy = true)
{
if (NumberOfRooms > 1)
if (NumberOfRooms > 2)
{
_rooms[NumberOfRooms - 2].roomObject.SetActive(false);
var room = _rooms[NumberOfRooms - 3];
// lock the doors that might be used to return to the old room
room.exit.toIn.DoorState.Lock();
room.exit.fromOut.DoorState.Lock();
// destroy or hide the old room
if (destroy)
{
Destroy(room.roomObject);
}
else
{
room.roomObject.SetActive(false);
}
}
}