Cambiado el constructor de la clase Player

This commit is contained in:
2022-10-31 07:38:48 +01:00
parent cb6050183b
commit aa3c7a4b80
4 changed files with 46 additions and 32 deletions

View File

@@ -3,20 +3,19 @@
#include <sstream>
// Constructor
Player::Player(player_t ini, std::string png, std::string animation, SDL_Renderer *renderer, Resource *resource, Asset *asset, options_t *options, Input *input, Room *room, Debug *debug)
Player::Player(player_t player)
{
// Obten punteros a objetos
this->resource = resource;
this->asset = asset;
this->renderer = renderer;
this->input = input;
this->room = room;
this->debug = debug;
this->options = options;
this->resource = player.resource;
this->asset = player.asset;
this->renderer = player.renderer;
this->input = player.input;
this->room = player.room;
this->debug = player.debug;
this->options = player.options;
// Crea objetos
//texture = resource->getTexture(png);
sprite = new AnimatedSprite(renderer, resource->getAnimation(animation));
sprite = new AnimatedSprite(renderer, resource->getAnimation(player.animation));
// Inicializa variables
color = stringToColor(options->palette, "white");
@@ -28,24 +27,24 @@ Player::Player(player_t ini, std::string png, std::string animation, SDL_Rendere
maxFallHeight = BLOCK * 4;
paused = false;
jumpIni = ini.jumpIni;
state = ini.state;
jumpIni = player.spawn.jumpIni;
state = player.spawn.state;
prevState = state;
x = ini.x;
y = ini.y;
vx = ini.vx;
vy = ini.vy;
x = player.spawn.x;
y = player.spawn.y;
vx = player.spawn.vx;
vy = player.spawn.vy;
w = 8;
h = 16;
maxVY = 1.2f;
sprite->setPosX(ini.x);
sprite->setPosY(ini.y);
sprite->setPosX(player.spawn.x);
sprite->setPosY(player.spawn.y);
sprite->setWidth(8);
sprite->setHeight(16);
sprite->setFlip(ini.flip);
sprite->setFlip(player.spawn.flip);
sprite->setCurrentAnimation("walk");
sprite->animate();
@@ -670,9 +669,9 @@ bool Player::checkKillingTiles()
}
// Obtiene algunos parametros del jugador
player_t Player::getSpawnParams()
playerSpawn_t Player::getSpawnParams()
{
player_t params;
playerSpawn_t params;
params.x = x;
params.y = y;