name: hole type: static_hazard editable: true sprite: path: hole.gif size: [16, 16] tile_size: [1, 1] collision: # Forat: ocupa el tile sencer (16×16). `height: 0` deixa que un salt # AIRBORNE el creui sense disparar el contacte (el filtre d'altura de # `checkPlayerCollisions` el descarta quan `jump_z_ > height`). El # bucle de contacte admet l'entitat per `flags.triggers_on_overlap`, # encara que `flags.collides` sigui false. size: [16, 16] height: 0 flags: collides: false interactable: false # Avui el loader no llig el bloc `flags:` (és declaratiu); el flag # real es fixa al constructor C++ de `Hole`. Mantenim el camp per # coherència amb la resta de plantilles i per quan es cablege la # lectura genèrica de flags. triggers_on_overlap: true animations: idle: { frames: [0], frame_ms: 1000, loop: true } stats: damage: 0