added power up on the player

This commit is contained in:
2021-08-21 20:39:48 +02:00
parent 182631b2b7
commit 837306f16e
11 changed files with 203 additions and 27 deletions

View File

@@ -5,7 +5,6 @@
Bullet::Bullet()
{
mSprite = new Sprite();
//init(0, 0, NO_KIND, nullptr, nullptr);
mKind = NO_KIND;
}
@@ -18,7 +17,7 @@ Bullet::~Bullet()
}
// Iniciador
void Bullet::init(int x, int y, int kind, LTexture *texture, SDL_Renderer *renderer)
void Bullet::init(int x, int y, int kind, bool poweredUp, LTexture *texture, SDL_Renderer *renderer)
{
// Posición inicial del objeto
mPosX = x;
@@ -56,7 +55,10 @@ void Bullet::init(int x, int y, int kind, LTexture *texture, SDL_Renderer *rende
mVelX = 0;
// Rectangulo con los gráficos del objeto
mSprite->setSpriteClip(0 * mWidth, 0, mSprite->getWidth(), mSprite->getHeight());
if (!poweredUp)
mSprite->setSpriteClip(0 * mWidth, 0, mSprite->getWidth(), mSprite->getHeight());
else
mSprite->setSpriteClip((0 + 3) * mWidth, 0, mSprite->getWidth(), mSprite->getHeight());
break;
case BULLET_LEFT:
@@ -64,7 +66,10 @@ void Bullet::init(int x, int y, int kind, LTexture *texture, SDL_Renderer *rende
mVelX = -2;
// Rectangulo con los gráficos del objeto
mSprite->setSpriteClip(1 * mWidth, 0, mSprite->getWidth(), mSprite->getHeight());
if (!poweredUp)
mSprite->setSpriteClip(1 * mWidth, 0, mSprite->getWidth(), mSprite->getHeight());
else
mSprite->setSpriteClip((1 + 3) * mWidth, 0, mSprite->getWidth(), mSprite->getHeight());
break;
case BULLET_RIGHT:
@@ -72,7 +77,10 @@ void Bullet::init(int x, int y, int kind, LTexture *texture, SDL_Renderer *rende
mVelX = 2;
// Rectangulo con los gráficos del objeto
mSprite->setSpriteClip(2 * mWidth, 0, mSprite->getWidth(), mSprite->getHeight());
if (!poweredUp)
mSprite->setSpriteClip(2 * mWidth, 0, mSprite->getWidth(), mSprite->getHeight());
else
mSprite->setSpriteClip((2 + 3) * mWidth, 0, mSprite->getWidth(), mSprite->getHeight());
break;
default:
@@ -149,7 +157,7 @@ void Bullet::testMove()
// Deshabilita el objeto
void Bullet::erase()
{
init(0, 0, 0, nullptr, nullptr);
init(0, 0, 0, false, nullptr, nullptr);
}
// Comprueba si el objeto está activo