43 lines
1.6 KiB
YAML
43 lines
1.6 KiB
YAML
name: sarcophagus
|
||
type: interactable
|
||
editable: true
|
||
sprite:
|
||
path: sarcophagus.gif
|
||
size: [48, 32]
|
||
# Footprint lògic en tiles: 3×1 (48×16 baix del sprite). Els 16 px de dalt
|
||
# són "alçada" en falsa perspectiva, sense col·lisió. Perímetre ortogonal
|
||
# de 8 tiles (3 N + 3 S + 1 O + 1 E).
|
||
tile_size: [3, 1]
|
||
collision:
|
||
# Sarcòfag = obstacle massís: alçada efectiva infinita (999) per al
|
||
# filtre del salt. Un jugador no el pot saltar per damunt encara que
|
||
# el salt arribe al punt àlgid. La caixa de col·lisió real (logical
|
||
# 48×16) la calcula `placeSarcophagus` a partir de la geometria del
|
||
# mapa, no des d'aquest YAML.
|
||
height: 999
|
||
flags:
|
||
collides: true
|
||
interactable: true
|
||
animations:
|
||
closed: { frames: [0], fps: 1, loop: true }
|
||
opening: { frames: [1, 2], fps: 6, loop: false }
|
||
open: { frames: [3], fps: 1, loop: true }
|
||
behaviour:
|
||
states: [CLOSED, OPENING, OPEN]
|
||
initial_state: CLOSED
|
||
on_perimeter_complete: OPENING
|
||
on_opening_end: OPEN
|
||
emits_event_on_open: sarcophagus_opened
|
||
# Sons opcionals. `opening` es dispara un sol cop en la transició
|
||
# CLOSED → OPENING (quan el jugador completa el perímetre). Si la clau
|
||
# manca, no sona res. El basename val tant de clau al Resource::Cache
|
||
# com de path (`Defaults::Paths::AUDIO_SOUNDS_DIR + key`).
|
||
#
|
||
# `opening_pitch_spread`: variació uniforme del ratio de reproducció
|
||
# centrada a 1.0. Amb 0.05 cada obertura sona entre 0.95× i 1.05× la
|
||
# velocitat normal (puja/baixa també el to, efecte arcade clàssic).
|
||
# 0 ⇒ sempre 1.0 (sense variació).
|
||
sound:
|
||
opening: open_sarc.wav
|
||
opening_pitch_spread: 0.5
|