Compare commits

...

5 Commits

4 changed files with 34 additions and 15 deletions

View File

@@ -172,6 +172,10 @@ macos:
$(CXX) $(SOURCES) $(CXXFLAGS) $(LDFLAGS) -o "$(TARGET_FILE)"
macos_fast:
$(CXX) $(SOURCES) -D VERBOSE -std=c++11 -Wall -Wno-deprecated -lSDL2 -framework OpenGL -o "$(TARGET_FILE)"
macos_debug:
$(CXX) $(SOURCES) -D DEBUG $(CXXFLAGS) $(LDFLAGS) -o "$(TARGET_FILE)_debug"

View File

@@ -245,6 +245,7 @@ void Game::init(int playerID)
if (demo.enabled)
{
// Selecciona una pantalla al azar
const int num = rand() % 2;
if (num == 0)
{
@@ -256,6 +257,15 @@ void Game::init(int playerID)
balloonsPopped = 1800;
currentStage = 6;
}
// Añade 0, 1 o 2 cafes al jugador
// for (int i = 0; i < rand() % 4; ++i)
{
players[0]->hasExtraHit();
}
// Deshabilita los sonidos
JA_EnableSound(false);
}
initPaths();
@@ -277,9 +287,10 @@ void Game::init(int playerID)
}
// Modo demo
demo.recording = false;
#ifdef RECORDING
demo.recording = true;
#else
demo.recording = false;
#endif
demo.counter = 0;
@@ -1539,7 +1550,7 @@ void Game::updatePlayers()
{
killPlayer(player);
if (demo.enabled)
if (demo.enabled && !player->isAlive())
{
section->name = SECTION_PROG_HI_SCORE_TABLE;
}
@@ -2118,18 +2129,16 @@ void Game::checkBulletBalloonCollision()
// Explota el globo
popBalloon(balloon);
// Si no es el modo demo, genera un sonido
if (!demo.enabled)
{
JA_PlaySound(balloonSound);
}
// Sonido de explosión
JA_PlaySound(balloonSound);
// Deshabilita la bala
bullet->disable();
// Suelta el item en caso de que salga uno
const Uint8 droppeditem = dropItem();
if ((droppeditem != NO_KIND) && !(demo.enabled) && !(demo.recording))
// if ((droppeditem != NO_KIND) && !(demo.enabled) && !(demo.recording))
if ((droppeditem != NO_KIND) && !(demo.recording))
{
if (droppeditem != ITEM_COFFEE_MACHINE)
{
@@ -2535,7 +2544,7 @@ void Game::update()
#ifdef RECORDING
checkInput();
if (demo.recording)
{
if (demo.counter >= TOTAL_DEMO_DATA)
@@ -2768,7 +2777,7 @@ void Game::checkInput()
if (players[index]->canFire())
{
players[index]->setInput(input_fire_left);
createBullet(players[index]->getPosX() + (players[index]->getWidth() / 2) - 4, players[index]->getPosY() + (players[index]->getHeight() / 2), BULLET_UP, players[index]->isPowerUp(), index);
createBullet(players[index]->getPosX() + (players[index]->getWidth() / 2) - 4, players[index]->getPosY() + (players[index]->getHeight() / 2), BULLET_LEFT, players[index]->isPowerUp(), index);
players[index]->setFireCooldown(10);
}
}
@@ -2778,7 +2787,7 @@ void Game::checkInput()
if (players[index]->canFire())
{
players[index]->setInput(input_fire_right);
createBullet(players[index]->getPosX() + (players[index]->getWidth() / 2) - 4, players[index]->getPosY() + (players[index]->getHeight() / 2), BULLET_UP, players[index]->isPowerUp(), index);
createBullet(players[index]->getPosX() + (players[index]->getWidth() / 2) - 4, players[index]->getPosY() + (players[index]->getHeight() / 2), BULLET_RIGHT, players[index]->isPowerUp(), index);
players[index]->setFireCooldown(10);
}
}
@@ -3033,6 +3042,12 @@ void Game::run()
checkEvents(); // Tiene que ir antes del render
render();
}
// Vuelve a dejar el sonido como estaba
if (demo.enabled)
{
JA_EnableSound(options->audio.sound.enabled);
}
}
// Indica si se puede crear una powerball

View File

@@ -511,10 +511,9 @@ bool Player::hasExtraHit()
void Player::giveExtraHit()
{
extraHit = true;
coffees++;
if (coffees > 2)
if (coffees < 2)
{
coffees = 2;
coffees++;
}
}

View File

@@ -12,4 +12,5 @@
[] Añadir mini logo a pantalla de titulo
[] Estandarizar tipografias, dejar solo una (o dos)
[] Crear objeto encargado de los mensajes en pantalla (en vez de ser la clase game)
[] ABSOLUTAMENTE TODO ha de estar en un fichero de texto y en una variable PARAMETROS: fisicas, tamaños de zona de juego, formaciones enemigas...
[] ABSOLUTAMENTE TODO ha de estar en un fichero de texto y en una variable PARAMETROS: fisicas, tamaños de zona de juego, formaciones enemigas...
[] Añadir notificaciones para el cambio de tamaño de ventana, shaders, filtro, mute, etc...