# Room 35: Island Beach

This is the sandy beach of a secluded island. The room serves as a transition area connecting to the palace grounds to the north (Room 31), the main land to the west (Room 34), and extends east toward another part of the island (Room 38). The south edge leads into the ocean (Room 41). Animated ocean waves lap at the shore, creating atmosphere. The room offers views of the ivory palace that towers from the island's center.

## Look Description

"You stare out at the ocean and the white sand beach of this secluded island. From the middle of the island, a majestic ivory palace towers, surrounded by a lovely manicured garden."

## Interactions

| Status | Behavior Type | Command | Response |
|--------|--------------|---------|----------|
| TODO | Look | `look` / `look around` / `look room` / `look island` | "You stare out at the ocean and the white sand beach of this secluded island. From the middle of the island, a majestic ivory palace towers, surrounded by a lovely manicured garden." |

## Scripts

| Status | Behavior Type | Name | Trigger | Behavior |
|--------|--------------|------|---------|----------|
| TODO | Background | waveActions | Continuous (automatic on init) | Animates three ocean wave props (wave1, wave2, wave3) in sequence. Creates looping wave animation by cycling cel and hiding/showing wave views. Runs continuously while in room. |

## Technical Notes

- **Room Number**: 35
- **Picture**: 35 (or 135 if `island_visited = true`)
- **Region**: Multiple (505, 501, 503, 504 - likely beach/palace island regions)
- **Exits**: North→31 (palace interior), South→38 (east side of island) / 41 (ocean), West→34 (mainland beach), East→38
- **Horizon**: 80

### State Variables

| Variable | Values | Description |
|----------|--------|-------------|
| `global100` | `0`, `1` | If set, uses picture 135 instead of 35 (room visited state) |
| `global101` | `0` | Initialized to 0, appears to track some room state |

### Additional Technical Details

- Entry from Room 38 (south/east): Positions player at x=93, y=187
- Entry from Room 41: Different positioning based on player's current view (swimming, walking, etc.) - calls viewer doit method to adjust position
- Entry from Room 31 (north): Checks if ego is above horizon, positions accordingly
- Entry from Room 34 (west): Places player at x=1 (left edge)
- Wave animations use three separate Props (wave1, wave2, wave3) with view 662, each on different loops
- The waveActions script manages a continuous cycling animation through the wave list
- Room uses regions 505, 501, 503, 504 for shared island/palace logic
- Player edge detection: south edge triggers room 38 or 41 depending on x position; east edge triggers room 31; west edge triggers room 34; north edge (horizon) triggers room 31
