feat(entities): andamiatge del sistema d'entitats (classes, factory, bus, YAML, placeholders, smoke tests)
No files matched your search
|
After Width: | Height: | Size: 832 B |
@@ -0,0 +1,18 @@
|
||||
name: door
|
||||
type: interactable
|
||||
sprite:
|
||||
path: door.gif
|
||||
size: [16, 16]
|
||||
tile_size: [1, 1]
|
||||
flags:
|
||||
collides: true
|
||||
interactable: true
|
||||
animations:
|
||||
closed: { frames: [0], fps: 1, loop: true }
|
||||
opening: { frames: [0], fps: 6, loop: false }
|
||||
open: { frames: [0], fps: 1, loop: true }
|
||||
behaviour:
|
||||
states: [CLOSED, OPENING, OPEN]
|
||||
initial_state: CLOSED
|
||||
opens_when: all_sarcophagi_open
|
||||
on_player_contact_when_open: level_complete
|
||||
|
After Width: | Height: | Size: 832 B |
@@ -0,0 +1,17 @@
|
||||
name: floor_trap
|
||||
type: static_hazard
|
||||
sprite:
|
||||
path: floor_trap.gif
|
||||
size: [16, 16]
|
||||
tile_size: [1, 1]
|
||||
flags:
|
||||
collides: false
|
||||
interactable: false
|
||||
animations:
|
||||
inactive: { frames: [0], fps: 1, loop: true }
|
||||
active: { frames: [0], fps: 6, loop: true }
|
||||
cycle:
|
||||
active_duration: 0.3
|
||||
inactive_duration: 2.0
|
||||
stats:
|
||||
damage: 1
|
||||
|
After Width: | Height: | Size: 833 B |
@@ -0,0 +1,18 @@
|
||||
name: mummy
|
||||
type: dynamic_hazard
|
||||
sprite:
|
||||
path: mummy.gif
|
||||
size: [12, 24]
|
||||
tile_size: [1, 1]
|
||||
flags:
|
||||
collides: true
|
||||
interactable: false
|
||||
animations:
|
||||
idle: { frames: [0], fps: 1, loop: true }
|
||||
walk: { frames: [0], fps: 8, loop: true }
|
||||
ai:
|
||||
type: corridor_wanderer
|
||||
direction_choice: random
|
||||
stats:
|
||||
speed: 40
|
||||
damage: 1
|
||||
|
After Width: | Height: | Size: 832 B |
@@ -0,0 +1,17 @@
|
||||
name: rolling_rock
|
||||
type: dynamic_hazard
|
||||
sprite:
|
||||
path: rolling_rock.gif
|
||||
size: [16, 16]
|
||||
tile_size: [1, 1]
|
||||
flags:
|
||||
collides: true
|
||||
interactable: false
|
||||
animations:
|
||||
roll: { frames: [0], fps: 10, loop: true }
|
||||
ai:
|
||||
type: straight_line
|
||||
initial_direction: right
|
||||
stats:
|
||||
speed: 60
|
||||
damage: 1
|
||||
|
After Width: | Height: | Size: 850 B |
@@ -0,0 +1,19 @@
|
||||
name: sarcophagus
|
||||
type: interactable
|
||||
sprite:
|
||||
path: sarcophagus.gif
|
||||
size: [48, 16]
|
||||
tile_size: [3, 1]
|
||||
flags:
|
||||
collides: true
|
||||
interactable: true
|
||||
animations:
|
||||
closed: { frames: [0], fps: 1, loop: true }
|
||||
opening: { frames: [0], fps: 6, loop: false }
|
||||
open: { frames: [0], 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
|
||||
|
After Width: | Height: | Size: 832 B |
@@ -0,0 +1,11 @@
|
||||
name: torch
|
||||
type: decoration
|
||||
sprite:
|
||||
path: torch.gif
|
||||
size: [16, 16]
|
||||
tile_size: [1, 1]
|
||||
flags:
|
||||
collides: false
|
||||
interactable: false
|
||||
animations:
|
||||
idle: { frames: [0], fps: 8, loop: true }
|
||||
|
After Width: | Height: | Size: 832 B |
@@ -0,0 +1,17 @@
|
||||
name: wall_trap
|
||||
type: static_hazard
|
||||
sprite:
|
||||
path: wall_trap.gif
|
||||
size: [16, 16]
|
||||
tile_size: [1, 1]
|
||||
flags:
|
||||
collides: false
|
||||
interactable: false
|
||||
animations:
|
||||
inactive: { frames: [0], fps: 1, loop: true }
|
||||
active: { frames: [0], fps: 6, loop: true }
|
||||
cycle:
|
||||
active_duration: 0.5
|
||||
inactive_duration: 1.5
|
||||
stats:
|
||||
damage: 1
|
||||