Handle items in gaps of a wall shared between adjacent shops. Make handling of shop boundaries more explicit: walls, the door, and the "free spot" by the door aren't classified as 'costly' but obj->unpaid and obj->no_charge are valid there. Move unpaid/no_charge checking into its own routine to unclutter objlist_sanity(). Pushing a shop-owned boulder to the free spot or doorway or gap in wall triggers the sanity check for the time being.
130 KiB
130 KiB