name: orb
ai_type: orb                # Validat contra el directori; mapeja a EnemyType::ORB.

# Shape circular pròpia (anell exterior + anell interior + 6 radis + nucli),
# pensada per llegir-se com a "reactor / orb" amb més detall que els enemics
# petits.
shape:
  path: enemy/orb.shp
  scale: 1.0
  collision_factor: 1.0

physics:
  mass: 50.0                 # Molt pesat: una bala el frena un poc però no el "envia a passejar".
  speed: 50.0                # Avança decidit cap al ship (no és lent passiu, és amenaça constant).
  rotation_delta_min: 0.3
  rotation_delta_max: 1.5
  restitution: 1.0
  linear_damping: 0.0
  angular_damping: 0.0

ai:
  # Persecució contínua del ship més proper. chase_strength alt (1.0 = ~1s
  # per realinear-se) perquè, encara que una bala l'empentja lateralment,
  # ràpidament torna a posar la seua proa cap al jugador.
  movement:
    type: chase
    chase_strength: 1.0

animation:
  pulse:
    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:
    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.5              # Una mica més llarg que els altres (és un boss).
  blink_hz: 10.0

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: 54.0      # 1.5× del normal (alineat amb scale 1.5).

colors:
  normal:  [255, 140, 110]   # taronja rosat (coral) — distintiu del boss orb.
  wounded: [255, 220, 60]

score: 500                   # 5x un enemic normal: aguanta 10x més.

# Estrenant el sistema HP: 10 unitats. Cada bala fa decrease_health + flash
# + create_debris_partial (xip a 0.3x) + create_fireworks_small (espurna).
# Al 10è hit (HP=0), on_no_health encadena destroy directe — sense passar
# per wounded (com Star). 10 HP ja és prou dificultat sense afegir un hit
# extra.
health: 10

events:
  on_hit:
    - action: fire_bullet             # contra-atac: dispara bullet_double dirigida al jugador
      bullet: bullet_double
      bullet_speed: 200.0
      aim_mode: aimed
    - action: decrease_health         # primer: si arriba a 0 dispara on_no_health
    #- action: flash                   # feedback visual de damage parcial
    - action: create_debris_partial   # xip a 0.3x mida (sense ser letal)
    #- action: create_fireworks_small  # espurna a cada hit (12 punts, lent)
    - action: apply_impulse           # empenta el cos (skip si will_die)
  on_no_health:
    - action: destroy                 # mort directa, sense wounded
  on_destroy:
    - action: add_score
    - action: create_debris           # explosió completa
    - action: create_fireworks
