empezando la clase Player
This commit is contained in:
47
source/player.cpp
Normal file
47
source/player.cpp
Normal file
@@ -0,0 +1,47 @@
|
|||||||
|
#include "player.h"
|
||||||
|
#include <fstream>
|
||||||
|
#include <sstream>
|
||||||
|
|
||||||
|
// Constructor
|
||||||
|
Player::Player(std::string _tileset, SDL_Renderer *_renderer, Asset *_asset)
|
||||||
|
{
|
||||||
|
// Obten punteros a objetos
|
||||||
|
asset = _asset;
|
||||||
|
renderer = _renderer;
|
||||||
|
|
||||||
|
// Crea objetos
|
||||||
|
texture = new LTexture();
|
||||||
|
sprite = new AnimatedSprite(texture, renderer);
|
||||||
|
|
||||||
|
// Carga la textura
|
||||||
|
loadTextureFromFile(texture, asset->get(_tileset), renderer);
|
||||||
|
|
||||||
|
// Inicializa variables
|
||||||
|
color = stringToColor("white");
|
||||||
|
}
|
||||||
|
|
||||||
|
// Destructor
|
||||||
|
Player::~Player()
|
||||||
|
{
|
||||||
|
texture->unload();
|
||||||
|
delete texture;
|
||||||
|
texture = nullptr;
|
||||||
|
|
||||||
|
delete sprite;
|
||||||
|
sprite = nullptr;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Pinta el enemigo en pantalla
|
||||||
|
void Player::draw()
|
||||||
|
{
|
||||||
|
sprite->getTexture()->setColor(color.r, color.g, color.b);
|
||||||
|
sprite->render();
|
||||||
|
sprite->getTexture()->setColor(255, 255, 255);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Actualiza las variables del objeto
|
||||||
|
void Player::update()
|
||||||
|
{
|
||||||
|
sprite->update();
|
||||||
|
sprite->animate(0);
|
||||||
|
}
|
||||||
37
source/player.h
Normal file
37
source/player.h
Normal file
@@ -0,0 +1,37 @@
|
|||||||
|
#pragma once
|
||||||
|
#include "ifdefs.h"
|
||||||
|
#include "utils.h"
|
||||||
|
#include "asset.h"
|
||||||
|
#include "animatedsprite.h"
|
||||||
|
#include <string>
|
||||||
|
|
||||||
|
#ifndef PLAYER_H
|
||||||
|
#define PLAYER_H
|
||||||
|
|
||||||
|
// Clase Player
|
||||||
|
class Player
|
||||||
|
{
|
||||||
|
private:
|
||||||
|
LTexture *texture; // Textura con los graficos del enemigo
|
||||||
|
AnimatedSprite *sprite; // Sprite del enemigo
|
||||||
|
|
||||||
|
SDL_Renderer *renderer; // El renderizador de la ventana
|
||||||
|
Asset *asset; // Objeto con la ruta a todos los ficheros de recursos
|
||||||
|
color_t color; // Color del jugador
|
||||||
|
|
||||||
|
|
||||||
|
public:
|
||||||
|
// Constructor
|
||||||
|
Player(std::string _tileset, SDL_Renderer *_renderer, Asset *_asset);
|
||||||
|
|
||||||
|
// Destructor
|
||||||
|
~Player();
|
||||||
|
|
||||||
|
// Pinta el enemigo en pantalla
|
||||||
|
void draw();
|
||||||
|
|
||||||
|
// Actualiza las variables del objeto
|
||||||
|
void update();
|
||||||
|
};
|
||||||
|
|
||||||
|
#endif
|
||||||
Reference in New Issue
Block a user