private static void fillOutOutputRoomData_checkULCorner(SimpleRoom_Output thisRoom_output, SimpleRoom_Output leftRoom_output, SimpleRoom_Output upRoom_output, SimpleRoom_Output diagonalRoom_output, SimpleRoom_Building thisRoom_building, SimpleRoom_Building leftRoom_building, SimpleRoom_Building upRoom_building, SimpleRoom_Building diagonalRoom_building) { // If any of these rooms are empty, keep the corner closed: if (!thisRoom_output.getIsNotEmpty() || !leftRoom_output.getIsNotEmpty() || !upRoom_output.getIsNotEmpty() || !diagonalRoom_output.getIsNotEmpty()) { return; } // Check all eight walls connected to this corner. If all of them are open, open up the corner: if (thisRoom_output.getWallIsOpen(Constants.doorID_up) && thisRoom_output.getWallIsOpen(Constants.doorID_left) && // leftRoom_output.getWallIsOpen(Constants.doorID_up) && leftRoom_output.getWallIsOpen(Constants.doorID_right) && // upRoom_output.getWallIsOpen(Constants.doorID_down) && upRoom_output.getWallIsOpen(Constants.doorID_left) && diagonalRoom_output.getWallIsOpen(Constants.doorID_down) && diagonalRoom_output.getWallIsOpen(Constants.doorID_right) && (thisRoom_building.getContainsDoor() == Constants.simplified_doorStatus_undefined || thisRoom_building.getPreviousRoomDirection() == Constants.doorID_right || thisRoom_building.getPreviousRoomDirection() == Constants.doorID_down) && (leftRoom_building.getContainsDoor() == Constants.simplified_doorStatus_undefined || leftRoom_building.getPreviousRoomDirection() == Constants.doorID_left || leftRoom_building.getPreviousRoomDirection() == Constants.doorID_down) && (upRoom_building.getContainsDoor() == Constants.simplified_doorStatus_undefined || upRoom_building.getPreviousRoomDirection() == Constants.doorID_up || upRoom_building.getPreviousRoomDirection() == Constants.doorID_right) && (diagonalRoom_building.getContainsDoor() == Constants.simplified_doorStatus_undefined || diagonalRoom_building.getPreviousRoomDirection() == Constants.doorID_up || diagonalRoom_building.getPreviousRoomDirection() == Constants.doorID_left)) { thisRoom_output.setCornerAsOpen(Constants.cornerID_ul); leftRoom_output.setCornerAsOpen(Constants.cornerID_ur); upRoom_output.setCornerAsOpen(Constants.cornerID_dl); diagonalRoom_output.setCornerAsOpen(Constants.cornerID_dr); } }