# Room 29: Dense Forest A forest clearing where a robin bird may appear with an earthworm. The player can obtain the earthworm by watching the bird and catching it when it drops the worm. Features a dangerous pit on the west side that causes the player to fall. ## Look Description "You are roaming through a dense forest." ## Interactions | Status | Behavior Type | Command | Response | |--------|--------------|---------|----------| | TODO | Look | `look/around`, `look/room`, `look[ 0: "You see a bird flying away." (Print 29 3). If no bird: "You don't see one here." (Print 29 4) | | TODO | Talk | `converse/robin`, `converse/bird`, `converse/robin,bird` | If bird state 0: "Cheep, cheep!" (Print 29 5). If bird state > 0: "Not now." (Print 29 6) | | TODO | Action | `kill/robin`, `kill/bird`, `kill/robin,bird` | "Not a little robin!" (Print 29 7) | | TODO | Get | `capture,get,kiss/robin`, `capture,get,kiss/bird` | If bird present: "You're not close enough." (Print 800 1). If no bird: "You don't see one here." (Print 29 4) | | TODO | Action | `help/robin`, `help/bird`, `help/robin,bird` | "How can you do that, Rosella?" (Print 29 8) | | TODO | Inventory | `deliver` (to robin) | If bird present: "The robin can't understand." (Print 29 9). If no bird: "There's no one here." (Print 29 10) | | TODO | Look | `look/earthworm` | If bird present and has worm and bird state 0: "A pretty robin pulls hungrily at a long earthworm." (Print 29 2). If worm on ground: "You see a fat worm wiggling on the ground." (Print 29 11). If player has worm: shows worm inventory. Otherwise: "You don't see one here." (Print 29 4) | | TODO | Look | `look/dirt` | If worm on ground: "You see a fat worm wiggling on the ground." (Print 29 11). If bird present with worm: "A pretty robin pulls hungrily at a long earthworm." (Print 29 2). Otherwise: "You see nothing of importance." (Print 29 12) | ## Scripts | Status | Behavior Type | Name | Trigger | Behavior | |--------|--------------|------|---------|----------| | TODO | Interaction | fallSouth | Player walks west into pit area (control area $0004) | Triggers fall animation using view 17, plays fall sound (51), then transitions to swimming view (21) and moves to room 28 | | TODO | Background | birdActions | Robin bird spawned (50% chance when player has worm); triggers when player gets within 30 pixels of bird | Bird drops worm (creates earthworm prop), flies away to upper left, then disposes | | TODO | Background | wormActions | Runs continuously on room init; also triggered when player captures worm | Spawns earthworm on ground (moves item 19 to room); when player captures, disposes worm, gives worm to player, awards 2 points, sets global182 to 1 | ## Technical Notes - **Room Number**: 29 - **Picture**: 29 - **Region**: 508 - **Exits**: North→23, South→5, East→30, West→28 - **Music**: Sound 51 (fall sound) ### State Variables | Variable | Values | Description | |----------|--------|-------------| | `global100` | 0, 1 | Controls whether room overlay (129) is shown | | `global101` | 0 | Unknown, set to 0 in init | | `global182` | 0, 1 | Worm collected score flag - set to 1 after player obtains worm | | `newAct` | 0, object | Robin bird actor instance (spawned randomly 50% chance) | | `newProp` | 0, object | Earthworm prop instance (spawned when bird drops it) | | `worm_owned` | true, false | Whether player has earthworm in inventory (item 19 owned by 206=player, 29=room) | ### Special Mechanics - Bird (50% spawn chance): Only appears when player has the earthworm in inventory (item 19 owned by 206) - Worm spawning: Worm appears on ground in room when wormActions initializes - Worm capture: Player must get close to worm (within 15 pixels) and use capture/get command - Fall hazard: West exit has a pit - walking into control area $0004 triggers fall sequence - Fall sequence: Player falls using view 17 animation, then transitions to swimming view (21) and is moved to room 28 - Score: 2 points awarded when worm is collected (global182 prevents re-awarding)