forked from jaildesigner-jailgames/jaildoctors_dilemma
Actualizadas las clases sprite, movingsprite y animatedsprite
This commit is contained in:
@@ -5,19 +5,19 @@
|
||||
// CAUTION!!!!! si no se gasta al final, quitar la referencia a la habitación
|
||||
|
||||
// Constructor
|
||||
Player::Player(player_t ini, std::string _tileset, SDL_Renderer *_renderer, Asset *_asset, Input *_input, Room *_room)
|
||||
Player::Player(player_t ini, std::string tileset, std::string animation, SDL_Renderer *renderer, Asset *asset, Input *input, Room *room)
|
||||
{
|
||||
// Obten punteros a objetos
|
||||
asset = _asset;
|
||||
renderer = _renderer;
|
||||
input = _input;
|
||||
this->asset = asset;
|
||||
this->renderer = renderer;
|
||||
this->input = input;
|
||||
|
||||
// Crea objetos
|
||||
texture = new LTexture();
|
||||
sprite = new AnimatedSprite(texture, renderer);
|
||||
sprite = new AnimatedSprite(texture, renderer, animation);
|
||||
|
||||
// Carga la textura
|
||||
loadTextureFromFile(texture, asset->get(_tileset), renderer);
|
||||
loadTextureFromFile(texture, asset->get(tileset), renderer);
|
||||
|
||||
// Inicializa variables
|
||||
color = stringToColor("white");
|
||||
@@ -31,19 +31,8 @@ Player::Player(player_t ini, std::string _tileset, SDL_Renderer *_renderer, Asse
|
||||
sprite->setPosY(ini.y);
|
||||
sprite->setVelX(ini.vx);
|
||||
sprite->setVelY(ini.vy);
|
||||
|
||||
sprite->setWidth(8);
|
||||
sprite->setHeight(16);
|
||||
sprite->setCurrentFrame(0);
|
||||
sprite->setAnimationCounter(0);
|
||||
sprite->setAnimationNumFrames(0, 4);
|
||||
sprite->setAnimationSpeed(0, 5);
|
||||
sprite->setAnimationLoop(0, true);
|
||||
sprite->setAnimationFrames(0, 0, 8 * 0, 0, 8, 16);
|
||||
sprite->setAnimationFrames(0, 1, 8 * 1, 0, 8, 16);
|
||||
sprite->setAnimationFrames(0, 2, 8 * 2, 0, 8, 16);
|
||||
sprite->setAnimationFrames(0, 3, 8 * 3, 0, 8, 16);
|
||||
sprite->setSpriteClip(sprite->getAnimationClip(0, 0));
|
||||
|
||||
sprite->setFlip(ini.flip);
|
||||
|
||||
@@ -270,7 +259,11 @@ void Player::move()
|
||||
sprite->update();
|
||||
if (sprite->getVelX() != 0)
|
||||
{
|
||||
sprite->animate(0);
|
||||
sprite->setCurrentAnimation("walk");
|
||||
}
|
||||
else
|
||||
{
|
||||
sprite->setCurrentAnimation("stand");
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user