fix: les rampes s'acabaven de trencar

This commit is contained in:
2026-04-09 21:54:18 +02:00
parent 4f890586f1
commit 138eb26249
2 changed files with 16 additions and 17 deletions

View File

@@ -53,6 +53,14 @@ class TileCollider {
// Devuelve true si el rectángulo del jugador solapa algún tile KILL
[[nodiscard]] auto touchesKillTile(float x, float y, float w, float h) const -> bool;
// Convierte píxeles en room-space a índice de tile en el mapa extendido.
[[nodiscard]] auto toTile(int px) const -> int { return (px + border_px_) / TS; }
// Convierte índice de tile del mapa extendido a píxeles en room-space.
[[nodiscard]] auto toPixel(int tile) const -> float {
return static_cast<float>((tile * TS) - border_px_);
}
private:
static constexpr int TS = ::Tile::SIZE;
@@ -61,13 +69,4 @@ class TileCollider {
int border_px_; // Offset en píxeles (CollisionBorder::PX)
const std::vector<int>& tile_map_;
// Convierte píxeles en room-space a índice de tile en el mapa extendido.
// Nota: asume que px >= -border_px_ (el jugador no puede estar más allá del borde).
[[nodiscard]] auto toTile(int px) const -> int { return (px + border_px_) / TS; }
// Convierte índice de tile del mapa extendido a píxeles en room-space.
[[nodiscard]] auto toPixel(int tile) const -> float {
return static_cast<float>((tile * TS) - border_px_);
}
};