# Room 57: Witches' Cave

This is the interior of a dismal cave inhabited by three one-eyed old witches who share a single glass eye. The cave contains a cauldron bubbling with foul brew over a fire, various bottles and jars, a human skull on a shelf, and optionally a black scarab. The witches can be in different states depending on whether the player has taken their glass eye or returned it. Players can interact with the witches, retrieve the glass eye or scarab, and return items to the witches.

## Look Description

"This is a dismal and dreary cave. In the center of the cave, over a hot fire, boils a foul-smelling brew inside a large black cauldron."

## Interactions

| Status | Behavior Type | Command | Response |
|--------|--------------|---------|----------|
| TODO | Look | `look /eye` | "The blind, one-eyed hags peer at you through a glass eye." (if owned by room 57) |
| TODO | Look | `look /hag` / `look /fishwife` | "Three, old one-eyed crones inhabit this dreary cave. They possess a glass eye, which they pass from one to another, that enables them to see. Through the glass eye, they each in turn peer at you with a frightening mixture of curiosity and malice." |
| TODO | Look | `look /bottle` | "You see bottles and jars of disgusting-looking stuff. None of it interests you, though." |
| TODO | Look | `look /caldron` | "A greenish, foul brew boils ominously within the cauldron." |
| TODO | Look | `look /brew` | "The green brew looks disgusting...and smells that way, too!" |
| TODO | Look | `look /fire` | "A hot fire burns under a large cauldron filled with bubbling brew." |
| TODO | Look | `look out /cave` | "Outside the cave, you see the terrible grabbing trees." |
| TODO | Look | `look /dirt` / `look down` | "You see a black scarab on the cave floor." (if scarab present) / "There is nothing of interest on the cave floor." |
| TODO | Look | `look /wall` | "There is nothing of interest on the rough cave walls." |
| TODO | Look | `look /shelf` | "You see bottles and jars of disgusting-looking stuff. None of it interests you, though." |
| TODO | Look | `look /skull` | "You shiver at the sight of a human skull on the shelf." |
| TODO | Look | `look around` / `look room` / `look` | "This is a dismal and dreary cave. [Witches description if global109 >= 3] [Scarab description if scarab present]" |
| TODO | Get | `get /bottle` | "You don't want any of them." |
| TODO | Get | `get /skull` | "You don't need it." |
| TODO | Get | `get /brew` | "You wouldn't want it!" |
| TODO | Get | `get /caldron` | "It's too heavy to carry." |
| TODO | Get | `get /eye` / `rob /eye` | "You just manage to snatch the glass eye from the grasp of the old witches! Now they are totally blind and helpless." (if in correct position and not already owned) |
| TODO | Get | `rob /charm` / `get /charm` | Picks up the black scarab (if present and player has empty hand) |
| TODO | Action | `chew /brew` / `drink /brew` | "You gag at the thought!" |
| TODO | Action | `kill /hag` | "You couldn't do it." |
| TODO | Action | `get /hag` | "You wouldn't want them." |
| TODO | Action | `kiss /hag` | "YUCK!!" |
| TODO | Action | `deliver [item] /hag` | "The witches don't want it." |
| TODO | Talk | `talk /hag` / `converse` | Various dialogue responses depending on glass eye state |
| TODO | Inventory | `deliver /eye` / `return /eye` / `fling /eye` | Returns the glass eye to the witches, triggers different responses based on whether witches are in moan state |

## Scripts

| Status | Behavior Type | Name | Trigger | Behavior |
|--------|--------------|------|---------|----------|
| TODO | Interaction | rm57Script | Entering room | Displays entry messages, triggers scarab toss if applicable |
| TODO | Interaction | witchEye | Continuous when witches are in normal state | Controls witch eye animation and tracking |
| TODO | Interaction | witchChase | Player approaches witches without glass eye | Witches chase and catch player, triggers transformation |
| TODO | Interaction | witchMoan | Player returns glass eye to witches | Witches moan and plead, transition through animations |
| TODO | Interaction | answer1 | Talking to witches when eye is in room | First dialogue sequence with witches |
| TODO | Interaction | answer2 | Talking to witches when player has eye | Dialogue with random responses about returning eye |
| TODO | Interaction | answer3 | Talking to witches when player has no eye | Dialogue with random responses |
| TODO | Interaction | pickUp | Player attempts to take scarab | Player picks up scarab, animation plays, score awarded |
| TODO | Interaction | scarabToss | Room init (if scarab present) or after giving eye | Scarab tosses toward player or animates in room |
| TODO | Interaction | ouchness | Player touches hazard area (control code $0004) | Plays "Ouch!" response |
| TODO | Background | witchEye | Continuous when `global109 > 2` | Witch eye follows player, manages eye passing animation between three witches |
| TODO | Background | witchChase | Continuous when player near witches without eye | Witches pursue player around cave |

## Technical Notes

- **Room Number**: 57
- **Picture**: 57
- **Exits**: South→6
- **Music**: Witch music (sound #12)

### State Variables

| Variable | Values | Description |
|----------|--------|-------------|
| `global109` | `< 3`, `>= 3` | Whether witches are visible (depends on game progress) |
| `global207` | `0`, `1` | Whether scarab is on ground (1 = present) |
| `local10` | `0`, `1` | Whether player has returned eye to witches (1 = returned) |
| `local12` | `0`, `1` | Whether player has been caught by witches (1 = caught) |
| `local13` | `0`, `1` | Hazard touch cooldown flag |
| `global182` | `0`, `1` | Score flag for eye/scarring pickup |
| `global127` | `0`, `1` | Player caught state flag |

### Additional Technical Details

- Synonyms defined: `dirt` = `dirt`, `hag` = `fishwife`
- Three witches share one glass eye (inventory item #6)
- Witches can see through the glass eye, without it they are blind
- Player can steal the glass eye for +3 score
- Player can pick up black scarab (charm, inventory item #7) for +2 score
- If player approaches witches without glass eye and gets too close, witches chase and transform player
- Player has different dialogue options depending on whether they possess the glass eye
- Hazard zone in cave triggers pain response (control area $0004)
