Files
kq4-decompile/rooms/kq4-067-the-parlor/kq4-067-the-parlor.md
2026-02-20 14:00:40 -08:00

93 lines
7.8 KiB
Markdown

# Room 67: The Parlor
A dusty, dilapidated parlor in the haunted cottage. The room contains a bookshelf with a single Shakespeare book, a painting above the fireplace that hides a secret latch, and various old furniture. This is where Rosella can discover the secret passage to the crypt.
## Look Description
"Considering the disarray of the rest of the house, the parlor looks in relatively good order. However, the fireplace is cold and unused, the bookshelves are almost bare, and the old furnishings are dusty."
## Interactions
| Status | Behavior Type | Command | Response |
|--------|--------------|---------|----------|
| TODO | Look | `look[<around>][/!*]` / `look/room,parlor` | "Considering the disarray of the rest of the house, the parlor looks in relatively good order. However, the fireplace is cold and unused, the bookshelves are almost bare, and the old furnishings are dusty." (Print 67 0) |
| TODO | Look | `look/book` (if has book in inventory) | Shows inventory book description |
| TODO | Look | `look/book,shelf,bookshelf` (if x > 160) | If book on shelf: "You examine the few remaining books on the bookshelves. Only one catches your attention; it is entitled 'The Compleat Works of William Shakespeare.'" (Print 67 1), else: "You examine the few remaining books on the bookshelves. None interest you." (Print 67 2) |
| TODO | Look | `look/book,shelf,bookshelf` (if x <= 160) | "You examine the books on this side of the room. None of these books are up the quality of reading you're used to..." (Print 67 3) |
| TODO | Look | `look<behind,under/painting` | "The portrait is firmly attached to the wall." (Print 67 4) |
| TODO | Look | `look/painting` | "An interesting portrait of a young girl hangs above the fireplace. You gaze at it intently, and notice that her eyes seem to stare at the left wall of the parlor." (Print 67 5) |
| TODO | Look | `look/wall<left` | If door open: "You see a secret door in the left wall." (Print 67 6), else if latch found: "You examine the left wall very closely and notice a little latch." (Print 67 7), else: "You see nothing special on the wall." (Print 67 8) |
| TODO | Look | `look/wall<right` | "You see the doorway to the foyer." (Print 67 9) |
| TODO | Look | `look/wall` | If door open: "You see a secret door in the left wall." (Print 67 6), else if latch found: "You examine the left wall very closely and notice a little latch." (Print 67 7), else: "You see a portrait hanging above the fireplace." (Print 67 10) |
| TODO | Look | `look/latch` | If door open: "You don't see it now." (Print 67 11), else if latch found and wall examined: If near latch zone: "You could try flipping the little latch in the left wall." (Print 67 12), else: "From there, you can barely see the latch in the wall." (Print 67 13), else: "You don't see a latch." (Print 67 14) |
| TODO | Look | `look<in/fireplace` | "The fireplace is empty." (Print 67 15) |
| TODO | Look | `look/fireplace` | "The fireplace hasn't been used in years." (Print 67 16) |
| TODO | Look | `look/chandelier` | "The lamp is old and dusty." (Print 67 17) |
| TODO | Look | `look/couch` | "The old divan is still in pretty good shape; a bit dusty, though." (Print 67 18) |
| TODO | Look | `look/door` | If secret door open: "You have discovered a secret door in the left wall!" (Print 67 19), else: "You see no special doors." (Print 67 20) |
| TODO | Look | `look/cabinet,cabinet` | "There is nothing of interest in the dusty old cabinet." (Print 67 21) |
| TODO | Look | `look/table,chair,chest,furniture` | "The furniture is old and dusty." (Print 67 22) |
| TODO | Look | `look/dirt,carpet,carpet` / `look<down` | "An old oriental carpet lies on the floor." (Print 67 23) |
| TODO | Action | `sit` | "You don't have time for that!" (Print 67 24) |
| TODO | Get | `get/book` / `get/shakespeare` (if in rect 83-127) | "There are no books here you need." (Print 67 25) |
| TODO | Get | `get/book` / `get/shakespeare` (if in control area) | If book not in room: "None of the other books interest you." (Print 67 26), else if already looked at bookshelf: "You remove the Shakespeare book from the shelf and carry it with you." (Print 67 27), else: "You examine the few remaining books on the bookshelves. Only one catches your attention; it is entitled 'The Compleat Works of William Shakespeare.' You remove it from the shelf and carry it with you." (Print 67 28) |
| TODO | Get | `get/book` / `get/shakespeare` (not in control area) | "You're not close enough." (Print 800 1) |
| TODO | Get | `get/painting` | "The portrait is firmly attached to the wall." (Print 67 4) |
| TODO | Action | `open/door` | If secret door open: "The secret door is already open." (Print 67 29), else: "You don't see a door to open." (Print 67 30) |
| TODO | Action | `open/cabinet,cabinet` | "There is nothing of interest in the dusty old cabinet." (Print 67 21) |
| TODO | Action | `close/door` | If secret door open: "You don't need to close the door." (Print 67 31), else: "There is no door to close!" (Print 67 32) |
| TODO | Action | `flip,move,lift/latch` | If latch found: If door open: "There's no need for that." (Print 67 33), else if near latch zone: "You flip the latch in the wall--and behold!--you have discovered a secret door!" (Print 67 34), else: "You're not close enough." (Print 800 1), else: "You don't see a latch." (Print 67 14) |
| TODO | Action | `find/door` | Same as look/door |
## Scripts
| Status | Behavior Type | Name | Trigger | Behavior |
|--------|--------------|------|---------|----------|
| TODO | Background | Room initialization | Entering room | Sets global101=1, loads view 510, applies region 603, positions ego based on entry direction, displays book if in room, sets up priority based on night mode |
| TODO | Background | Edge detection | Walking to room edges | If player touches control area $0040 (right edge): move to room 68. If player touches control area $0004 (left edge) and door is open (global131): move to room 66 |
| TODO | Background | Priority handling | Walking in room | If player in control area $0020 and door is open: set ego priority to 8, else release priority |
| TODO | Interaction | Secret door | Flipping latch when near zone | Opens secret door by setting global131=1, plays animation, awards 4 points |
| TODO | Interaction | Book acquisition | Getting Shakespeare book | Adds book to inventory, awards 2 points if first time, sets global182 flag |
## Technical Notes
- **Room Number**: 67
- **Picture**: 67
- **Region**: 603 (Haunted House - GhostWander)
- **Exits**: West→68 (cottage exterior), East→66 (foyer) - east exit requires secret door open
- **Music**: None specified
### State Variables
| Variable | Values | Description |
|----------|--------|-------------|
| `global101` | `1` | Room initialized flag |
| `global100` | `0`, `1` | Night mode (1 = night) - controls ghost appearances |
| `global128` | `0`, `1` | Bookshelf examined flag |
| `global129` | `0`, `1` | Painting examined flag - triggers wall examination hints |
| `global130` | `0`, `1` | Wall/latch examined flag |
| `global131` | `0`, `1` | Secret door open state |
| `global182` | `0`, `1` | Shakespeare book taken flag |
| `gPrevRoomNum` | `66`, `68` | Previous room - determines ego entry position |
### Objects in Room
- **Bookshelf** (view 510, loop 0, cel 0): Displays Shakespeare book when present at position (207, 74)
- **Prop** (view 510, loop 2): Unknown prop at position (74, 101) - appears to be fireplace or furniture element
- **Ghost Prop** (view 536, loop 1): Displayed at (205, 129) when night mode (global100)
### Control Areas
- `$0040` (right edge): Triggers exit to room 68
- `$0004` (left edge): Triggers exit to room 66 (requires secret door open)
- `$0020` (secret door zone): Elevates player priority when door is open
- `$0010`: Bookshelf interaction zone
### Inventory Item
- Item 18: Shakespeare book - can be picked up from bookshelf for +2 score
### Synonyms
- `cottage` = `room` (from region 603)