# Province Event 3D Effects

Ideas for replacing 2D shader-based province event effects with 3D particle systems.

## Current State

| Event | Effect Type | Notes |
|-------|-------------|-------|
| Festival | 3D particles | Complete |
| Epidemic | 3D particles | Complete (rising skulls + green haze) |
| Blizzard | 2D shader | Not visible on unowned (white) provinces |
| Drought | 2D shader | |
| Flood | 2D shader | |
| Beasts | None | Tricky - can be any animal or human |

## Proposed 3D Effects

### Blizzard

- Falling snowflakes with slight blue tint (ensures visibility on white backgrounds)
- Diagonal wind-blown particles to convey harsh weather
- Swirling vortex effect near ground level
- Frosty sparkle/glitter particles for magical winter feel

### Drought

- Rising dust/sand particles (tan/brown coloring)
- Small dust devils (spinning particle columns)
- Shimmering golden particles rising to suggest heat distortion
- Dried leaves/debris blowing across the province

### Flood

- Rain falling (blue-tinted streaks or droplets)
- Water splashes/ripples rising from ground
- Mist/spray particles hovering low
- Floating debris particles (leaves, sticks)

### Beasts

This is challenging since "beasts" can represent any dangerous creature. Universal approaches:

- **Circling vultures/crows overhead** - Predators attract scavengers; works for any beast type and is visually distinctive
- Dust clouds suggesting movement at province edges
- Glowing eyes appearing/disappearing in shadows
- Stylized claw/scratch mark effects
- Paw prints materializing on the ground
- Red "danger" aura pulsing from ground level

The vultures/crows approach is recommended as the most universal solution.

## Implementation Status

Controllers have been created for all 4 event types:
- `ProvinceBlizzardController.cs` - ready, needs prefab
- `ProvinceDroughtController.cs` - ready, needs prefab
- `ProvinceFloodController.cs` - ready, needs prefab
- `ProvinceBeastsController.cs` - ready, needs prefab

### Prefabs Needed

Create these prefabs in `Assets/Eagle/Effects/`:

1. **BlizzardEffect.prefab**
   - Particle System with falling snowflakes
   - Blue-tinted particles for visibility on white
   - Diagonal velocity for wind effect
   - RectTransform for UI positioning

2. **DroughtEffect.prefab**
   - Particle System with rising dust particles
   - Tan/brown coloring
   - Upward velocity
   - Optional spinning sub-emitters for dust devils

3. **FloodEffect.prefab**
   - Particle System with falling rain streaks
   - Blue tint
   - Fast downward velocity
   - Optional splash sub-emitter

4. **BeastsEffect.prefab**
   - Particle System with bird silhouettes
   - Circular orbit motion around center
   - Black/dark particles
   - Could use a crow/vulture sprite texture

### Scene Setup

Wire up in `Gameplay.unity`:
1. Add controller components to the Map GameObject
2. Assign `mapContainer`, `centroidsJson` (shared with other controllers)
3. Assign the effect prefab for each controller
