diff --git a/src/jugando.ts b/src/jugando.ts index f5e7834..d0dfaf1 100644 --- a/src/jugando.ts +++ b/src/jugando.ts @@ -9,6 +9,7 @@ const MAP_MAX = 5000; const MAP_SIZE = MAP_MAX - MAP_MIN; const TREES_TO_WIN = 30; const TIME = 2 * 60 * 1000; +const TIME_LOST_WHEN_HIT = 20 * 1000; export type State = { current: "jugando"; @@ -127,6 +128,26 @@ export function update(juego: Juego, dt: number) { } else { enemy.x -= (dt / 1000) * enemySpeed; } + + if ( + boxCollision( + { + x: juego.state.pos.x, + y: getFloorY(juego) - juego.sprites.jugadorx.getHeight(juego), + width: juego.sprites.jugadorx.getWidth(juego), + height: juego.sprites.jugadorx.getHeight(juego), + }, + { + x: enemy.x, + y: getFloorY(juego) - enemy.sprite.getHeight(juego), + width: enemy.sprite.getWidth(juego), + height: enemy.sprite.getHeight(juego), + } + ) + ) { + juego.state.enemies = juego.state.enemies.filter((e) => e.x !== enemy.x); + juego.state.time -= TIME_LOST_WHEN_HIT; + } } juego.state.view.x =