public bool CanRemoveRoom(Guid roomId) { RoomScript RoomScript = _RoomList[roomId].RoomScript; if (IsEntranceRoom(roomId)) { return(false); } if (RoomScript.AllManSlotsAreEmpty() == false) { return(false); } // Check if it is linked to only one other room. Then, we can always safely remove if (CountExternalRoomLinks(roomId) == 1) { return(true); } // The room can be removed if any linked tiles still have access to entrance if (GridManager.Ref.CanTilesBeRemovedSafely(RoomScript.RoomData.CoveredIndizes) == false) { return(false); } return(true); }