treballant en Player

This commit is contained in:
2025-11-14 10:42:30 +01:00
parent b8dd6e80d9
commit 29e0daffb0
9 changed files with 348 additions and 368 deletions

View File

@@ -103,7 +103,7 @@ auto CollisionMap::getSlopeHeight(SDL_FPoint p, Tile slope) -> int {
// === Queries de colisión ===
// Comprueba las colisiones con paredes derechas
auto CollisionMap::checkRightSurfaces(SDL_FRect& rect) -> int {
auto CollisionMap::checkRightSurfaces(const SDL_FRect& rect) -> int {
for (const auto& s : right_walls_) {
if (checkCollision(s, rect)) {
return s.x;
@@ -113,7 +113,7 @@ auto CollisionMap::checkRightSurfaces(SDL_FRect& rect) -> int {
}
// Comprueba las colisiones con paredes izquierdas
auto CollisionMap::checkLeftSurfaces(SDL_FRect& rect) -> int {
auto CollisionMap::checkLeftSurfaces(const SDL_FRect& rect) -> int {
for (const auto& s : left_walls_) {
if (checkCollision(s, rect)) {
return s.x;
@@ -123,7 +123,7 @@ auto CollisionMap::checkLeftSurfaces(SDL_FRect& rect) -> int {
}
// Comprueba las colisiones con techos
auto CollisionMap::checkTopSurfaces(SDL_FRect& rect) -> int {
auto CollisionMap::checkTopSurfaces(const SDL_FRect& rect) -> int {
for (const auto& s : top_floors_) {
if (checkCollision(s, rect)) {
return s.y;
@@ -133,14 +133,14 @@ auto CollisionMap::checkTopSurfaces(SDL_FRect& rect) -> int {
}
// Comprueba las colisiones punto con techos
auto CollisionMap::checkTopSurfaces(SDL_FPoint& p) -> bool {
auto CollisionMap::checkTopSurfaces(const SDL_FPoint& p) -> bool {
return std::ranges::any_of(top_floors_, [&](const auto& s) {
return checkCollision(s, p);
});
}
// Comprueba las colisiones con suelos
auto CollisionMap::checkBottomSurfaces(SDL_FRect& rect) -> int {
auto CollisionMap::checkBottomSurfaces(const SDL_FRect& rect) -> int {
for (const auto& s : bottom_floors_) {
if (checkCollision(s, rect)) {
return s.y;
@@ -150,7 +150,7 @@ auto CollisionMap::checkBottomSurfaces(SDL_FRect& rect) -> int {
}
// Comprueba las colisiones con conveyor belts
auto CollisionMap::checkAutoSurfaces(SDL_FRect& rect) -> int {
auto CollisionMap::checkAutoSurfaces(const SDL_FRect& rect) -> int {
for (const auto& s : conveyor_belt_floors_) {
if (checkCollision(s, rect)) {
return s.y;
@@ -160,7 +160,7 @@ auto CollisionMap::checkAutoSurfaces(SDL_FRect& rect) -> int {
}
// Comprueba las colisiones punto con conveyor belts
auto CollisionMap::checkConveyorBelts(SDL_FPoint& p) -> bool {
auto CollisionMap::checkConveyorBelts(const SDL_FPoint& p) -> bool {
return std::ranges::any_of(conveyor_belt_floors_, [&](const auto& s) {
return checkCollision(s, p);
});
@@ -178,7 +178,7 @@ auto CollisionMap::checkLeftSlopes(const LineVertical& line) -> int {
}
// Comprueba las colisiones punto con rampas izquierdas
auto CollisionMap::checkLeftSlopes(SDL_FPoint& p) -> bool {
auto CollisionMap::checkLeftSlopes(const SDL_FPoint& p) -> bool {
return std::ranges::any_of(left_slopes_, [&](const auto& slope) {
return checkCollision(p, slope);
});
@@ -196,7 +196,7 @@ auto CollisionMap::checkRightSlopes(const LineVertical& line) -> int {
}
// Comprueba las colisiones punto con rampas derechas
auto CollisionMap::checkRightSlopes(SDL_FPoint& p) -> bool {
auto CollisionMap::checkRightSlopes(const SDL_FPoint& p) -> bool {
return std::ranges::any_of(right_slopes_, [&](const auto& slope) {
return checkCollision(p, slope);
});