Optimizados algunos png

This commit is contained in:
2022-10-05 22:37:37 +02:00
parent 02312e1342
commit 2576d62002
17 changed files with 49 additions and 33 deletions

View File

@@ -33,5 +33,5 @@ frames=36,37,38,39,40,41,42,43,44,45
name=pop name=pop
speed=5 speed=5
loop=-1 loop=-1
frames=60,61,62,63,64,65,66,67,68,69,70,71 frames=48,49,50,51,52,53,54,55,56,57,58,59
[/animation] [/animation]

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.9 KiB

After

Width:  |  Height:  |  Size: 1.8 KiB

View File

@@ -33,5 +33,5 @@ frames=36,37,38,39,40,41,42,43,44,45
name=pop name=pop
speed=5 speed=5
loop=-1 loop=-1
frames=60,61,62,63,64,65,66,67,68,69,70,71 frames=48,49,50,51,52,53,54,55,56,57,58,59
[/animation] [/animation]

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.7 KiB

After

Width:  |  Height:  |  Size: 4.5 KiB

View File

@@ -33,5 +33,5 @@ frames=36,37,38,39,40,41,42,43,44,45
name=pop name=pop
speed=5 speed=5
loop=-1 loop=-1
frames=60,61,62,63,64,65,66,67,68,69,70,71 frames=48,49,50,51,52,53,54,55,56,57,58,59
[/animation] [/animation]

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.5 KiB

After

Width:  |  Height:  |  Size: 6.1 KiB

View File

@@ -33,12 +33,12 @@ frames=36,37,38,39,40,41,42,43,44,45
name=powerball name=powerball
speed=10 speed=10
loop=0 loop=0
frames=48 frames=10
[/animation] [/animation]
[animation] [animation]
name=pop name=pop
speed=5 speed=5
loop=-1 loop=-1
frames=60,61,62,63,64,65,66,67,68,69,70,71 frames=48,49,50,51,52,53,54,55,56,57,58,59
[/animation] [/animation]

Binary file not shown.

Before

Width:  |  Height:  |  Size: 20 KiB

After

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.0 KiB

After

Width:  |  Height:  |  Size: 2.5 KiB

View File

@@ -326,7 +326,7 @@ void Balloon::render()
if (kind == POWER_BALL) if (kind == POWER_BALL)
{ {
Sprite *sp = new Sprite(sprite->getRect(), sprite->getTexture(), sprite->getRenderer()); Sprite *sp = new Sprite(sprite->getRect(), sprite->getTexture(), sprite->getRenderer());
sp->setSpriteClip(370, 148, 37, 37); sp->setSpriteClip(407, 0, 37, 37);
sp->render(); sp->render();
delete sp; delete sp;
} }
@@ -339,7 +339,7 @@ void Balloon::render()
if (kind == POWER_BALL and !popping) if (kind == POWER_BALL and !popping)
{ {
Sprite *sp = new Sprite(sprite->getRect(), sprite->getTexture(), sprite->getRenderer()); Sprite *sp = new Sprite(sprite->getRect(), sprite->getTexture(), sprite->getRenderer());
sp->setSpriteClip(370, 148, 37, 37); sp->setSpriteClip(407, 0, 37, 37);
sp->render(); sp->render();
delete sp; delete sp;
} }

View File

@@ -12,6 +12,9 @@ Director::Director(std::string path)
section.name = PROG_SECTION_GAME; section.name = PROG_SECTION_GAME;
section.subsection = GAME_SECTION_PLAY_1P; section.subsection = GAME_SECTION_PLAY_1P;
section.name = PROG_SECTION_LOGO;
section.subsection = 0;
// Crea el objeto que controla los ficheros de recursos // Crea el objeto que controla los ficheros de recursos
asset = new Asset(path.substr(0, path.find_last_of("\\/")) + "/../"); asset = new Asset(path.substr(0, path.find_last_of("\\/")) + "/../");

View File

@@ -27,10 +27,6 @@ Game::Game(int numPlayers, int currentStage, SDL_Renderer *renderer, Screen *scr
fade = new Fade(renderer); fade = new Fade(renderer);
eventHandler = new SDL_Event(); eventHandler = new SDL_Event();
// std::vector<std::vector<std::string> *> *itemAnimations = new std::vector<std::vector<std::string> *>;
// std::vector<std::vector<std::string> *> *playerAnimations = new std::vector<std::vector<std::string> *>;
// std::vector<std::vector<std::string> *> *balloonAnimations = new std::vector<std::vector<std::string> *>;
// Carga los recursos // Carga los recursos
loadMedia(); loadMedia();
@@ -1603,7 +1599,7 @@ void Game::renderScoreBoard()
powerMeterSprite->setSpriteClip(0, 0, 40, 7); powerMeterSprite->setSpriteClip(0, 0, 40, 7);
powerMeterSprite->render(); powerMeterSprite->render();
const float percent = (stage[currentStage].currentPower * 40.0f) / stage[currentStage].powerToComplete; const float percent = (stage[currentStage].currentPower * 40.0f) / stage[currentStage].powerToComplete;
powerMeterSprite->setSpriteClip(0, 0, (int)percent, 7); powerMeterSprite->setSpriteClip(40, 0, (int)percent, 7);
powerMeterSprite->render(); powerMeterSprite->render();
// HI-SCORE // HI-SCORE
@@ -1705,7 +1701,6 @@ void Game::updateDeath()
// Comprueba si todos los jugadores estan muertos // Comprueba si todos los jugadores estan muertos
bool allAreDead = true; bool allAreDead = true;
for (auto player : players) for (auto player : players)
// for (int i = 0; i < numPlayers; i++)
{ {
allAreDead &= (!player->isAlive()); allAreDead &= (!player->isAlive());
@@ -1764,12 +1759,15 @@ void Game::updateDeath()
case 0: case 0:
JA_PlaySound(bubble1Sound, 0); JA_PlaySound(bubble1Sound, 0);
break; break;
case 1: case 1:
JA_PlaySound(bubble2Sound, 0); JA_PlaySound(bubble2Sound, 0);
break; break;
case 2: case 2:
JA_PlaySound(bubble3Sound, 0); JA_PlaySound(bubble3Sound, 0);
break; break;
case 3: case 3:
JA_PlaySound(bubble4Sound, 0); JA_PlaySound(bubble4Sound, 0);
break; break;
@@ -1882,13 +1880,24 @@ void Game::incBalloonSpeed()
if (difficulty == DIFFICULTY_NORMAL) if (difficulty == DIFFICULTY_NORMAL)
{ {
if (enemySpeed == BALLOON_SPEED_1) if (enemySpeed == BALLOON_SPEED_1)
{
enemySpeed = BALLOON_SPEED_2; enemySpeed = BALLOON_SPEED_2;
}
else if (enemySpeed == BALLOON_SPEED_2) else if (enemySpeed == BALLOON_SPEED_2)
{
enemySpeed = BALLOON_SPEED_3; enemySpeed = BALLOON_SPEED_3;
}
else if (enemySpeed == BALLOON_SPEED_3) else if (enemySpeed == BALLOON_SPEED_3)
{
enemySpeed = BALLOON_SPEED_4; enemySpeed = BALLOON_SPEED_4;
}
else if (enemySpeed == BALLOON_SPEED_4) else if (enemySpeed == BALLOON_SPEED_4)
{
enemySpeed = BALLOON_SPEED_5; enemySpeed = BALLOON_SPEED_5;
}
setBalloonSpeed(enemySpeed); setBalloonSpeed(enemySpeed);
} }
@@ -1901,13 +1910,24 @@ void Game::decBalloonSpeed()
if (difficulty == DIFFICULTY_NORMAL) if (difficulty == DIFFICULTY_NORMAL)
{ {
if (enemySpeed == BALLOON_SPEED_5) if (enemySpeed == BALLOON_SPEED_5)
{
enemySpeed = BALLOON_SPEED_4; enemySpeed = BALLOON_SPEED_4;
}
else if (enemySpeed == BALLOON_SPEED_4) else if (enemySpeed == BALLOON_SPEED_4)
{
enemySpeed = BALLOON_SPEED_3; enemySpeed = BALLOON_SPEED_3;
}
else if (enemySpeed == BALLOON_SPEED_3) else if (enemySpeed == BALLOON_SPEED_3)
{
enemySpeed = BALLOON_SPEED_2; enemySpeed = BALLOON_SPEED_2;
}
else if (enemySpeed == BALLOON_SPEED_2) else if (enemySpeed == BALLOON_SPEED_2)
{
enemySpeed = BALLOON_SPEED_1; enemySpeed = BALLOON_SPEED_1;
}
setBalloonSpeed(enemySpeed); setBalloonSpeed(enemySpeed);
} }
@@ -2447,8 +2467,7 @@ Uint8 Game::dropItem()
// Crea un objeto item // Crea un objeto item
void Game::createItem(Uint8 kind, float x, float y) void Game::createItem(Uint8 kind, float x, float y)
{ {
const int index = kind - 1; Item *item = new Item(kind, x, y, itemTextures.at(kind), itemAnimations.at(kind), renderer);
Item *item = new Item(kind, x, y, itemTextures.at(index), itemAnimations.at(index), renderer);
items.push_back(item); items.push_back(item);
} }
@@ -2559,8 +2578,6 @@ void Game::throwPlayer(int x, int y, Player *player)
{ {
const int sentit = ((rand() % 2) ? 1 : -1); const int sentit = ((rand() % 2) ? 1 : -1);
// player->deathIndex = getSmartSpriteFreeIndex();
SmartSprite *ss = new SmartSprite(nullptr, renderer); SmartSprite *ss = new SmartSprite(nullptr, renderer);
smartSprites.push_back(ss); smartSprites.push_back(ss);

View File

@@ -8,13 +8,12 @@
#define ITEM_H #define ITEM_H
// Tipos de objetos // Tipos de objetos
#define ITEM_POINTS_1_DISK 1 #define ITEM_POINTS_1_DISK 0
#define ITEM_POINTS_2_GAVINA 2 #define ITEM_POINTS_2_GAVINA 1
#define ITEM_POINTS_3_PACMAR 3 #define ITEM_POINTS_3_PACMAR 2
#define ITEM_CLOCK 4 #define ITEM_CLOCK 3
#define ITEM_COFFEE 5 #define ITEM_COFFEE 4
#define ITEM_POWER_BALL 6 #define ITEM_COFFEE_MACHINE 5
#define ITEM_COFFEE_MACHINE 7
// Clase Item // Clase Item
class Item class Item

View File

@@ -14,7 +14,7 @@ Logo::Logo(SDL_Renderer *renderer, Screen *screen, Asset *asset)
// Reserva memoria para los punteros // Reserva memoria para los punteros
eventHandler = new SDL_Event(); eventHandler = new SDL_Event();
texture = new LTexture(renderer, asset->get("logo.png")); texture = new LTexture(renderer, asset->get("logo.png"));
sprite = new Sprite(0, 0, GAME_WIDTH, GAME_HEIGHT, texture, renderer); sprite = new Sprite(14, 75, 226, 44, texture, renderer);
// Inicializa variables // Inicializa variables
counter = 0; counter = 0;
@@ -104,7 +104,7 @@ void Logo::render()
screen->start(); screen->start();
// Limpia la pantalla // Limpia la pantalla
screen->clean(bgColor); screen->clean({238, 238, 238});
// Dibuja los objetos // Dibuja los objetos
sprite->render(); sprite->render();

View File

@@ -35,7 +35,6 @@ void Player::init()
// Inicializa variables de estado // Inicializa variables de estado
alive = true; alive = true;
deathCounter = DEATH_COUNTER; deathCounter = DEATH_COUNTER;
deathIndex = 0;
statusWalking = PLAYER_STATUS_WALKING_STOP; statusWalking = PLAYER_STATUS_WALKING_STOP;
statusFiring = PLAYER_STATUS_FIRING_NO; statusFiring = PLAYER_STATUS_FIRING_NO;
invulnerable = false; invulnerable = false;
@@ -534,7 +533,7 @@ void Player::shiftColliders()
// Obtiene el puntero a la textura con los gráficos de la animación de morir // Obtiene el puntero a la textura con los gráficos de la animación de morir
LTexture *Player::getDeadTexture() LTexture *Player::getDeadTexture()
{ {
//return deathTexture; return deathSprite->getTexture();;
} }
// Obtiene el valor de la variable // Obtiene el valor de la variable

View File

@@ -82,6 +82,7 @@ private:
bool extraHit; // Indica si el jugador tiene un toque extra bool extraHit; // Indica si el jugador tiene un toque extra
Uint8 coffees; // Indica cuantos cafes lleva acumulados Uint8 coffees; // Indica cuantos cafes lleva acumulados
bool powerUp; // Indica si el jugador tiene activo el modo PowerUp bool powerUp; // Indica si el jugador tiene activo el modo PowerUp
Uint16 powerUpCounter; // Temporizador para el modo PowerUp
bool input; // Indica si puede recibir ordenes de entrada bool input; // Indica si puede recibir ordenes de entrada
circle_t collider; // Circulo de colisión del jugador circle_t collider; // Circulo de colisión del jugador
@@ -98,9 +99,6 @@ private:
void updatePowerUpHeadOffset(); void updatePowerUpHeadOffset();
public: public:
Uint8 deathIndex; // Apaño rapidito. Indice de SmartSprite donde esta ubicado el sprite de morirse
Uint16 powerUpCounter; // Temporizador para el modo PowerUp
// Constructor // Constructor
Player(float x, int y, SDL_Renderer *renderer, std::vector<LTexture *> texture, std::vector<std::vector<std::string> *> animations); Player(float x, int y, SDL_Renderer *renderer, std::vector<LTexture *> texture, std::vector<std::vector<std::string> *> animations);

View File

@@ -18,7 +18,7 @@ Sprite::Sprite(int x, int y, int w, int h, LTexture *texture, SDL_Renderer *rend
this->texture = texture; this->texture = texture;
// Establece el rectangulo de donde coger la imagen // Establece el rectangulo de donde coger la imagen
spriteClip = {x, y, w, h}; spriteClip = {0, 0, w, h};
// Inicializa variables // Inicializa variables
enabled = true; enabled = true;
@@ -41,7 +41,7 @@ Sprite::Sprite(SDL_Rect rect, LTexture *texture, SDL_Renderer *renderer)
this->texture = texture; this->texture = texture;
// Establece el rectangulo de donde coger la imagen // Establece el rectangulo de donde coger la imagen
spriteClip = {x, y, w, h}; spriteClip = {0, 0, w, h};
// Inicializa variables // Inicializa variables
enabled = true; enabled = true;