This was leading to problems with special themed rooms which were
irregular. Walls of ordinary rooms count as part of the room, and
irregular rooms should be no different.
This also makes doors on the room edge be considered as part of the
room, which affected special room entry messages and filling.
All irregular rooms' walls getting marked as SHARED instead of their own
room is probably a latent bug in upstream NetHack, but will prevent
future issues for when/if themed rooms that involve special
rooms/subrooms get added.
levl[ii][jj].edge = 1;
if (lit)
levl[ii][jj].lit = lit;
- if ((int) levl[ii][jj].roomno != rmno)
+
+ if (levl[ii][jj].roomno == NO_ROOM)
+ levl[ii][jj].roomno = rmno;
+ else if ((int) levl[ii][jj].roomno != rmno)
levl[ii][jj].roomno = SHARED;
}
}