Start to work on dual input for P1

This commit is contained in:
2021-08-29 19:54:18 +02:00
parent 4de3d69bb8
commit 02b528ea8c
12 changed files with 110 additions and 48 deletions

View File

@@ -315,6 +315,10 @@ void Game::init()
mMenaceThreshold = 0;
mHiScoreAchieved = false;
mCurrentStage = 0;
// BORRAR
mCurrentStage = 9;
mStageBitmapCounter = STAGE_COUNTER;
mDeathCounter = DEATH_COUNTER;
mExplosionTime = false;
@@ -366,6 +370,9 @@ void Game::init()
initEnemyPools();
initGameStages();
// BORRAR
mStage[mCurrentStage].currentPower = mStage[mCurrentStage].powerToComplete - 10;
// Modo debug
mDebug.enabled = false;
mDebug.enemySet = 0;
@@ -1704,7 +1711,10 @@ void Game::updateStage()
mStage[mCurrentStage].currentPower = 0; // Deja el poder a cero para que no vuelva a entrar en esta condición
destroyAllBalloons(); // Destruye a todos los enemigos
mStage[mCurrentStage].currentPower = 0; // Vuelve a dejar el poder a cero, por lo que hubiera podido subir al destruir todos lo globos
mMenaceCurrent = 255;
mMenaceCurrent = 255; // Sube el nivel de amenaza para que no cree mas globos
for (int i = 0; i < mNumPlayers; i++) // Añade un millon de puntos a los jugadores que queden vivos
if (mPlayer[i]->isAlive())
mPlayer[i]->addScore(1000000);
JA_StopMusic();
}
JA_PlaySound(mSoundStageChange);
@@ -1735,7 +1745,7 @@ void Game::updateDeath()
allPlayersAreDead &= (!mPlayer[i]->isAlive());
if (!mPlayer[i]->isAlive())
{
{
// Animación
if ((mPlayer[i]->getDeathCounter() / 5) % 4 == 0)
mSmartSprite[mPlayer[i]->mDeathIndex]->setSpriteClip(24 * 0, 24, 24, 24);
@@ -2946,15 +2956,16 @@ void Game::renderMessages()
if ((mCounter < STAGE_COUNTER) && (!mDemo.enabled))
{
mSpriteGetReady->setPosX((int)mGetReadyBitmapPath[mCounter]);
mSpriteGetReady->render();
//mSpriteGetReady->render();
const color_t color = {0x17, 0x17, 0x26};
mTextBig->writeShadowed((int)mGetReadyBitmapPath[mCounter], PLAY_AREA_CENTER_Y - 8, mLang->getText(75), color, 2);
}
// Time Stopped
if (mTimeStopped)
{
if ((mTimeStoppedCounter > 100) || (mTimeStoppedCounter % 10 > 4))
//mText->writeCentered(PLAY_AREA_CENTER_X, PLAY_AREA_FIRST_QUARTER_Y, "Time Stopped: " + std::to_string(mTimeStoppedCounter / 10));
mText->writeDX(TXT_CENTER | TXT_SHADOW, PLAY_AREA_CENTER_X, PLAY_AREA_FIRST_QUARTER_Y, mLang->getText(36) + std::to_string(mTimeStoppedCounter / 10), 1, noColor, 1, shdwTxtColor);
mText->writeDX(TXT_CENTER | TXT_STROKE, PLAY_AREA_CENTER_X, PLAY_AREA_FIRST_QUARTER_Y, mLang->getText(36) + std::to_string(mTimeStoppedCounter / 10), 1, noColor, 1, shdwTxtColor);
if (mTimeStoppedCounter > 100)
{
@@ -2975,11 +2986,19 @@ void Game::renderMessages()
// STAGE NUMBER
std::string text = mLang->getText(38) + std::to_string(mStage[mCurrentStage].number);
if (mGameCompleted) // Texto de juego completado
text = mLang->getText(50);
if (mStageBitmapCounter < STAGE_COUNTER)
mTextBig->writeDX(TXT_CENTER | TXT_SHADOW, PLAY_AREA_CENTER_X, mStageBitmapPath[mStageBitmapCounter], text, 1, noColor, 2, shdwTxtColor);
{
if (!mGameCompleted)
{
mTextBig->writeDX(TXT_CENTER | TXT_SHADOW, PLAY_AREA_CENTER_X, mStageBitmapPath[mStageBitmapCounter], text, 1, noColor, 2, shdwTxtColor);
}
else
{ // Texto de juego completado
text = mLang->getText(50);
mTextBig->writeDX(TXT_CENTER | TXT_STROKE, PLAY_AREA_CENTER_X, mStageBitmapPath[mStageBitmapCounter], text, 1, noColor, 1, shdwTxtColor);
mText->writeDX(TXT_CENTER | TXT_STROKE, PLAY_AREA_CENTER_X, mStageBitmapPath[mStageBitmapCounter] + 17, mLang->getText(76), 1, noColor, 1, shdwTxtColor);
}
}
}
// Habilita el efecto del item de detener el tiempo