mil arreglos en les putes costeres

This commit is contained in:
2026-04-06 22:51:30 +02:00
parent 5393a861d1
commit 5c40b9bbf9
6 changed files with 107 additions and 58 deletions

View File

@@ -81,6 +81,16 @@ Se han renombrado las referencias de `JailDoctor's Dilemma` → `Projecte 2026`
6. `syncSpriteAndCollider()` + `animate()` + `handleBorders()`
- **~20 métodos eliminados** del Player antiguo. Slopes gestionadas por tile (slope_tile_x/y/type) en vez de puntero a LineDiagonal.
- **Sistema antiguo de superficies preservado** en CollisionMap (no eliminado), simplemente ya no usado por Player.
- **Slopes — escalera diagonal de tiles:**
- Las slopes de 45° se pintan como escalera en el collision tilemap: cada tile una fila arriba/abajo y una columna al lado.
- `checkSlopeBelow`: escanea la fila de los pies Y la de arriba (la slope entry siempre está una fila arriba del suelo).
- `followSlope`: busca el siguiente tile de slope en la fila actual Y la de abajo (para descenso en escalera).
- `exitSlope`: comprueba suelo en `foot_y` y `foot_y+1` (boundary de fila al salir por abajo) y snapea al borde del tile.
- **Drop-through — sin flags, puramente posicional:**
- Al pulsar DOWN sobre slope/plataforma: `y_ += 1` y ON_AIR. No hay flags `dropping_through_`.
- `checkFloor` para PASSABLE: solo aterriza si `foot_y_current <= tile_top` (pies estaban por encima).
- `checkFloor` para slopes: solo aterriza si `foot_y_current <= slope_y` (pies por encima de la superficie).
- `isInsideAnySlope()`: si algún pie está por debajo de la superficie de cualquier slope que solape, bloquea TODOS los aterrizajes en slopes. Esto asegura que al hacer drop o saltar desde abajo, el jugador atraviesa toda la escalera de slopes sin quedarse pegado.
- **Pendiente:** tiles 5 (kill) y 6 (conveyor) no soportados aún en el nuevo motor.
### Otros