name: pentagon
ai_type: pentagon          # Validat contra el directori; mapeja a EnemyType::PENTAGON.

shape:
  path: enemy/pentagon.shp
  scale: 1.0               # multiplicador visual + hitbox sobre la mida nativa del .shp
  collision_factor: 1.0    # ajust opcional del hitbox (default 1.0)

physics:
  mass: 5.0
  speed: 35.0               # px/s (esquivador lent)
  rotation_delta_min: 0.75  # rad/s — rotació visual mínima
  rotation_delta_max: 3.75  # rad/s — rotació visual màxima
  restitution: 1.0          # rebot elàstic perfecte contra parets
  linear_damping: 0.0       # manté velocitat (sense fricció)
  angular_damping: 0.0

behavior:
  # Pentagon: zigzag esquivador (canvi de direcció probabilístic per segon).
  angle_change_max: 1.0     # rad — magnitud del canvi de direcció
  zigzag_prob_per_second: 0.8

animation:
  pulse:                    # respiració d'escala aleatòria
    trigger_prob_per_second: 0.01
    duration_min: 1.0
    duration_max: 3.0
    amplitude_min: 0.08
    amplitude_max: 0.20
    frequency_min: 1.5
    frequency_max: 3.0
  rotation_accel:           # acceleració/desacceleració de rotació visual
    trigger_prob_per_second: 0.02
    duration_min: 3.0
    duration_max: 8.0
    multiplier_min: 0.3
    multiplier_max: 4.0

wounded:
  duration: 1.0             # segons en estat ferit abans d'explotar
  blink_hz: 10.0            # parpelleig color normal ↔ wounded

spawn:
  invulnerability_duration: 3.0
  invulnerability_brightness_start: 0.3
  invulnerability_brightness_end: 0.7
  invulnerability_scale_start: 0.0
  invulnerability_scale_end: 1.0
  safety_distance: 36.0     # px mínim respecte al player al spawn

colors:
  normal:  [0, 255, 255]    # Cyan pur "esquivador"
  wounded: [255, 220, 60]   # Daurat (parpelleig al rebre impacte)

score: 100

events:
  # HP=1 (default): decrement → on_no_health → set_hurt → wounded → mort.
  # decrease_health primer perquè si la mort cau aquí (segon hit durant wounded),
  # el dispatcher salta la resta del chain (incloent apply_impulse) sobre el
  # cos ja destruït.
  on_hit:
    - action: decrease_health
    - action: apply_impulse
  on_no_health:
    - action: set_hurt
  on_hurt_end:
    - action: destroy
  on_destroy:
    - action: add_score
    - action: create_debris
    - action: create_fireworks
