# Room 59: Baby Nursery

This is an old, neglected baby nursery in the haunted house. The room features a rocking cradle, chest of drawers, rocking horse, and window looking out to the cemetery. The main puzzle involves a ghostly baby that cries continuously until given the silver baby rattle (item 12). The ghost only appears at night (when global100 is set), and the rattle must be delivered to the cradle to quiet the baby and complete this side quest.

## Look Description

"This old baby nursery must have once been a cheery place. Now, through neglect, cobwebs decorate the corners, wallpaper peels from the walls, and dust covers the nursery furniture."

## Interactions

| Status | Behavior Type | Command | Response |
|--------|--------------|---------|----------|
| TODO | Look | `look` `look/room` `look/bedroom` `look/nursery` | "This old baby nursery must have once been a cheery place. Now, through neglect, cobwebs decorate the corners, wallpaper peels from the walls, and dust covers the nursery furniture." (Print 59 0) |
| TODO | Look | `look<in/chest` `look<in/dresser` `look<in/drawer` | "The chest of drawers is empty." (Print 59 1) |
| TODO | Look | `look/chest` `look/dresser` | "The chest of drawers looks old and neglected." (Print 59 2) |
| TODO | Look | `look/chair` `look/rocker` | "You imagine the mother who must have rocked her baby in this rocking chair." (Print 59 3) |
| TODO | Look | `look/window` (when in rect 76-109, 125-147) | "You see the cemetery out the window." (Print 59 4) |
| TODO | Look | `look/window` (elsewhere) | "You can't see that from here." (Print 800 1) |
| TODO | Look | `look<in/cradle` `look/ghost` (when near cradle and global134 != 1) | "The baby cradle is empty." (Print 59 5) |
| TODO | Look | `look<in/cradle` `look/ghost` (when near cradle and global134 = 1) | "With trepidation, you peek into the rocking cradle and see nothing. Tentatively you reach your hand into it. There is nothing there!!" (Print 59 6) |
| TODO | Look | `look/cradle` (when global134 != 1) | "You see an empty cradle here." (Print 59 7) |
| TODO | Look | `look/cradle` (when global134 = 1) | "The baby cradle rocks to and fro as a baby's voice wails from within." (Print 59 8) |
| TODO | Look | `look/wall` | "There is nothing of importance on the walls." (Print 59 9) |
| TODO | Look | `look/dirt` `look<down` | "There is nothing of interest on the floor." (Print 59 10) |
| TODO | Look | `look/horse` `look/toy` | "There is an old rocking horse here." (Print 59 11) |
| TODO | Look | `look/carpet` | "A worn pink rug adorns the floor." (Print 59 12) |
| TODO | Action | `sit` | "That would waste your precious time." (Print 59 13) |
| TODO | Action | `bounce/rock/cradle` (when global134 = 1) | "The cradle is already rocking!" (Print 59 14) |
| TODO | Action | `bounce/rock/cradle` (when near cradle and global134 != 1) | Triggers rocking animation and baby sound |
| TODO | Action | `bounce/rock/cradle` (when not near cradle) | "You can't see that from here." (Print 800 1) |
| TODO | Action | `sit/on/mount/play/horse` `sit/on/mount/play/toy` | "You're too big for it." (Print 59 15) |
| TODO | Get | `get/horse` `get/toy` | "You don't need it." (Print 59 16) |
| TODO | Talk | `converse/calm` (when global134 = 1) | "You speak in a soft trembly voice to the fretful baby ghost. Unfortunately, the poor little thing continues its pathetic crying." (Print 59 17) |
| TODO | Talk | `kiss` (when global134 = 1) | "You'd like to, but you can't see it, or touch it." (Print 59 18) |
| TODO | Talk | `talk/ghost` (when global134 = 1 and said 'get') | "You reach your hand into the rocking cradle and feel around. There is nothing there but a strange coldness! A shiver runs down your spine as the unseen baby continues its incessant crying." (Print 59 19) |
| TODO | Talk | `kill/ghost` (when global134 = 1) | "How can you kill something that is already dead?" (Print 59 20) |
| TODO | Talk | `help/save/ghost` (when global134 = 1) | "You'd like to help the poor baby ghost, but how can you do that?" (Print 59 21) |
| TODO | Talk | `feed/ghost` (when global134 = 1) | "This baby doesn't eat!" (Print 59 22) |
| TODO | Talk | `hum/lullaby` (when global134 = 1) | "While trembling, you attempt to sing a lullaby to the whimpering baby ghost. It doesn't work. The poor thing continues its pitiful crying." (Print 59 23) |
| TODO | Inventory | `give/deliver/fling/place/drop` (not rattle, when global134 = 1) | "Obviously, as the crying continues, the baby ghost isn't interested in it." (Print 59 24) |
| TODO | Inventory | `give/deliver/fling/place/drop` (rattle, when near cradle and global134 = 1) | "You drop the silver rattle into the baby cradle. As you do so, the crying of the baby ghost and the rocking of the cradle cease. You breathe a big sigh of relief." (Print 59 25) - Awards 2 points, removes rattle from inventory |
| TODO | Inventory | `give/deliver/fling/place/drop` (rattle, when far from cradle and global134 = 1) | "You can't do that yet." (proc0_13) |

## Scripts

| Status | Behavior Type | Name | Trigger | Behavior |
|--------|--------------|------|---------|----------|
| TODO | Background | `rockMeBaby` | Called by rockAgain script | Animates the cradle (prop newProp) with rocking motion. Cycles forward, moves brTop up 2 pixels. |
| TODO | Background | `rockAgain` | Triggered by player command `bounce/rock/cradle` | Plays baby sound (sound 22), triggers rockMeBaby animation. Continues looping if global134 = 1. |
| TODO | Interaction | `rm59Script` | Entering room | After 5 seconds, prints "The crying baby seems to be in here." (Print 59 26) |

## Technical Notes

- **Room Number**: 59
- **Picture**: 59 (style $0010)
- **Region**: 603
- **Exits**: East→Room 62 (when in control area $0040 - window area)
- **Music**: Unknown

### State Variables

| Variable | Values | Description |
|----------|--------|-------------|
| `global100` | `0`, `non-zero` | Night flag - when set, ghost view (648) and animated cradle (536) are displayed |
| `global134` | `1`, `non-1` | Quest state - if 1, rattle has been delivered to cradle; ghost is active |
| `global133` | number | Previous room number - if player returns from room 59 with rattle delivered, continues rocking |
| `newProp` | object | The cradle prop (view 527) |
| `rattle_delivered` | `true` (global134=1), `false` (global134!=1) | Whether silver baby rattle (item 12) has been placed in cradle |

### Synonyms

- `ghost` = `baby` (from synonyms definition)

### Special Mechanics

- The ghost is only visible when global100 is set (nighttime). View 648 (ghost figure) is added to the scene at night.
- The cradle animation (view 536) only plays when global100 is set.
- The cradle prop (view 527) is always present but stationary.
- When returning to the room after delivering the rattle (global133=59 and global134=1), the rocking continues.
- Distance check of 15 pixels from cradle required to interact with cradle/ghost.
- Distance check of 10 pixels from cradle required to trigger rocking.
- Player must be within 17 pixels of cradle to deliver the rattle.
- The rattle (item 12) must be in inventory to deliver it.
- Score change: +2 points when rattle is delivered.
- Region 603 is triggered with event 2 when rattle is delivered (proc0_10 603 2).
