Añadidos mas ifdef DEBUG para quitar código sobrante de la versión final

This commit is contained in:
2022-11-16 20:24:49 +01:00
parent eed3f9d7d1
commit c6a1f4aab0
6 changed files with 91 additions and 79 deletions

View File

@@ -93,9 +93,13 @@ Player::Player(player_t player)
fallSound.push_back(JA_LoadSound(asset->get("jump23.wav").c_str()));
fallSound.push_back(JA_LoadSound(asset->get("jump24.wav").c_str()));
r = {0, 0, 0, 0};
jumpCounter = 0;
fallCounter = 0;
#ifdef DEBUG
rx = {0, 0, 0, 0};
ry = {0, 0, 0, 0};
#endif
}
// Destructor
@@ -114,6 +118,8 @@ void Player::render()
{
sprite->getTexture()->setColor(color.r, color.g, color.b);
sprite->render();
#ifdef DEBUG
if (debug->getEnabled())
{
// Pinta los underfeet
@@ -125,11 +131,21 @@ void Player::render()
SDL_SetRenderDrawColor(renderer, 0, 255, 0, 192);
SDL_Rect rect = getRect();
SDL_RenderFillRect(renderer, &rect);
SDL_SetRenderDrawColor(renderer, 0, 255, 255, 255);
SDL_RenderDrawRect(renderer, &rect);
// Pinta el rectangulo de movimiento
SDL_SetRenderDrawColor(renderer, 255, 0, 0, 255);
SDL_RenderFillRect(renderer, &r);
if (vx != 0.0f)
{
SDL_RenderFillRect(renderer, &rx);
}
if (vy != 0.0f)
{
SDL_RenderFillRect(renderer, &ry);
}
}
#endif
}
// Actualiza las variables del objeto
@@ -231,21 +247,25 @@ void Player::checkBorders()
border = BORDER_LEFT;
onBorder = true;
}
else if (x > PLAY_AREA_RIGHT - w)
{
border = BORDER_RIGHT;
onBorder = true;
}
else if (y < PLAY_AREA_TOP)
{
border = BORDER_TOP;
onBorder = true;
}
else if (y > PLAY_AREA_BOTTOM - h)
{
border = BORDER_BOTTOM;
onBorder = true;
}
else
{
onBorder = false;
@@ -273,14 +293,14 @@ void Player::checkState()
vy = 0.0f;
jumpCounter = 0;
fallCounter = 0;
if (!isOnFloor() && !isOnAutoSurface())
/*if (!isOnFloor() && !isOnAutoSurface())
{
setState(s_falling);
vx = 0.0f;
vy = maxVY;
fallCounter++;
playFallSound();
}
}*/
}
else if (state == s_jumping)
@@ -363,7 +383,9 @@ void Player::move()
proj.h = h;
proj.w = ceil(abs(vx)); // Para evitar que tenga un ancho de 0 pixels
r = proj;
#ifdef DEBUG
rx = proj;
#endif
// Comprueba la colisión con las superficies
const int pos = room->checkRightSurfaces(&proj);
@@ -406,7 +428,9 @@ void Player::move()
proj.h = h;
proj.w = ceil(vx); // Para evitar que tenga un ancho de 0 pixels
r = proj;
#ifdef DEBUG
rx = proj;
#endif
// Comprueba la colisión
const int pos = room->checkLeftSurfaces(&proj);
@@ -465,7 +489,9 @@ void Player::move()
proj.h = ceil(abs(vy)); // Para evitar que tenga una altura de 0 pixels
proj.w = w;
r = proj;
#ifdef DEBUG
ry = proj;
#endif
// Comprueba la colisión
const int pos = room->checkBottomSurfaces(&proj);
@@ -492,7 +518,9 @@ void Player::move()
proj.h = ceil(vy); // Para evitar que tenga una altura de 0 pixels
proj.w = w;
r = proj;
#ifdef DEBUG
ry = proj;
#endif
// Comprueba la colisión con las superficies normales y las automáticas
const int pos = std::max(room->checkTopSurfaces(&proj), room->checkAutoSurfaces(&proj));
@@ -535,7 +563,10 @@ void Player::move()
sprite->setPosX(x);
sprite->setPosY(y);
debug->add("RECT: " + std::to_string(r.x) + "," + std::to_string(r.y) + "," + std::to_string(r.w) + "," + std::to_string(r.h));
#ifdef DEBUG
debug->add("RECT_X: " + std::to_string(rx.x) + "," + std::to_string(rx.y) + "," + std::to_string(rx.w) + "," + std::to_string(rx.h));
debug->add("RECT_Y: " + std::to_string(ry.x) + "," + std::to_string(ry.y) + "," + std::to_string(ry.w) + "," + std::to_string(ry.h));
#endif
}
// Establece la animación del jugador
@@ -571,7 +602,10 @@ void Player::playJumpSound()
{
JA_PlaySound(jumpSound[jumpCounter / 4]);
}
#ifdef DEBUG
debug->add("JUMP: " + std::to_string(jumpCounter / 4));
#endif
}
// Calcula y reproduce el sonido de caer
@@ -581,7 +615,10 @@ void Player::playFallSound()
{
JA_PlaySound(fallSound[std::min((fallCounter / 4), (int)fallSound.size() - 1)]);
}
#ifdef DEBUG
debug->add("FALL: " + std::to_string(fallCounter / 4));
#endif
}
// Comprueba si el jugador tiene suelo debajo de los pies
@@ -604,6 +641,7 @@ bool Player::isOnFloor()
onSlopeL = room->checkLeftSlopes(&underFeet[0]);
onSlopeR = room->checkRightSlopes(&underFeet[1]);
#ifdef DEBUG
if (onFloor)
{
debug->add("ON_FLOOR");
@@ -618,6 +656,7 @@ bool Player::isOnFloor()
{
debug->add("ON_SLOPE_R: " + std::to_string(underFeet[1].x) + "," + std::to_string(underFeet[1].y));
}
#endif
return onFloor || onSlopeL || onSlopeR;
}
@@ -635,10 +674,12 @@ bool Player::isOnAutoSurface()
onAutoSurface |= room->checkAutoSurfaces(&f);
}
#ifdef DEBUG
if (onAutoSurface)
{
debug->add("ON_AUTO_SURFACE");
}
#endif
return onAutoSurface;
}
@@ -659,10 +700,12 @@ bool Player::isOnDownSlope()
onSlope |= room->checkLeftSlopes(&underFeet[0]);
onSlope |= room->checkRightSlopes(&underFeet[1]);
#ifdef DEBUG
if (onSlope)
{
debug->add("ON_DOWN_SLOPE");
}
#endif
return onSlope;
}