commit de moure a un Linux a gastar eines de home

This commit is contained in:
2025-02-25 19:37:08 +01:00
parent c9da5135b2
commit 32c31a8cb6
28 changed files with 145 additions and 647 deletions

View File

@@ -5,7 +5,7 @@
#include <cmath> // Para ceil, abs
#include "animated_sprite.h" // Para AnimatedSprite
#include "asset.h" // Para Asset
#include "const.h" // Para BORDER_TOP, BLOCK, BORDER_BOTTOM, BORDER...
#include "defines.h" // Para BORDER_TOP, BLOCK, BORDER_BOTTOM, BORDER...
#include "debug.h" // Para Debug
#include "input.h" // Para Input, inputs_e
#include "jail_audio.h" // Para JA_LoadSound, JA_Sound_t, JA_PlaySound
@@ -21,11 +21,11 @@ Player::Player(player_t player)
input_(Input::get()),
resource_(Resource::get()),
asset_(Asset::get()),
room_(player.room),
debug_(Debug::get())
debug_(Debug::get()),
room_(player.room)
{
// Crea objetos
sprite_ = std::make_shared<AnimatedSprite>(resource_->getAnimation(player.animation));
sprite_ = std::make_shared<AnimatedSprite>(resource_->getTexture(player.png), resource_->getAnimation(player.animation));
// Inicializa variables
reLoadPalette();
@@ -538,7 +538,7 @@ void Player::move()
// Comprueba la colisión con las superficies normales y las automáticas
const int pos = std::max(room_->checkTopSurfaces(&proj), room_->checkAutoSurfaces(&proj));
if (pos > -1)
{
{
// Si hay colisión lo mueve hasta donde no colisiona y pasa a estar sobre la superficie
y_ = pos - h_;
setState(s_standing);
@@ -547,7 +547,7 @@ void Player::move()
auto_movement_ = false;
}
else
{
{
// Si no hay colisión con los muros, comprueba la colisión con las rampas
if (state_ != s_jumping)
{ // Las rampas no se miran si se está saltando
@@ -555,7 +555,7 @@ void Player::move()
v_line_t rightSide = {proj.x + proj.w - 1, proj.y, proj.y + proj.h - 1};
const int p = std::max(room_->checkRightSlopes(&rightSide), room_->checkLeftSlopes(&leftSide));
if (p > -1)
{
{
// No está saltando y hay colisión con una rampa
// Calcula la nueva posición
y_ = p - h_;
@@ -566,7 +566,7 @@ void Player::move()
#endif
}
else
{
{
// No está saltando y no hay colisón con una rampa
// Calcula la nueva posición
y_ += vy_;
@@ -576,7 +576,7 @@ void Player::move()
}
}
else
{
{
// Esta saltando y no hay colisión con los muros
// Calcula la nueva posición
y_ += vy_;
@@ -611,7 +611,7 @@ void Player::checkJumpEnd()
if (vy_ > 0)
{
if (y_ >= jump_init_pos_)
{
{
// Si alcanza la altura de salto inicial, pasa al estado de caída
setState(s_falling);
vy_ = MAX_VY_;