BBVS: Replace minigame flags parameter

This commit is contained in:
johndoe123 2014-01-25 23:16:27 +01:00
parent 11a5807110
commit ef55f5b774
10 changed files with 29 additions and 30 deletions

View File

@ -26,6 +26,7 @@
#include "bbvs/graphics.h"
#include "bbvs/sound.h"
#include "bbvs/spritemodule.h"
#include "bbvs/minigames/minigame.h"
#include "bbvs/minigames/bbairguitar.h"
#include "bbvs/minigames/bbant.h"
#include "bbvs/minigames/bbloogie.h"
@ -2145,26 +2146,23 @@ void BbvsEngine::stopSounds() {
bool BbvsEngine::runMinigame(int minigameNum) {
debug("BbvsEngine::runMinigame() minigameNum: %d", minigameNum);
int callFlags = 0;
bool fromMainGame = _currSceneNum != kMainMenu;
if (_currSceneNum != kMainMenu)
callFlags = 1;
_sound->unloadSounds();
Minigame *minigame = 0;
switch (minigameNum) {
case 0:
case kMinigameBbloogie:
minigame = new MinigameBbloogie(this);
break;
case 1:
case kMinigameBbTennis:
minigame = new MinigameBbTennis(this);
break;
case 2:
case kMinigameBbAnt:
minigame = new MinigameBbAnt(this);
break;
case 3:
case kMinigameBbAirGuitar:
minigame = new MinigameBbAirGuitar(this);
break;
default:
@ -2172,7 +2170,7 @@ bool BbvsEngine::runMinigame(int minigameNum) {
break;
}
int minigameResult = minigame->run(callFlags);
int minigameResult = minigame->run(fromMainGame);
delete minigame;
@ -2180,9 +2178,11 @@ bool BbvsEngine::runMinigame(int minigameNum) {
if (minigameNum == 0 && minigameResult == 1)
_gameVars[42] = 1;
#if 0
//DEBUG Fake it :)
if (minigameNum == 0)
_gameVars[42] = 1;
#endif
return true;
}

View File

@ -732,7 +732,7 @@ void MinigameBbAirGuitar::updateObjs() {
}
}
int MinigameBbAirGuitar::run(uint flags) {
int MinigameBbAirGuitar::run(bool fromMainGame) {
memset(_objects, 0, sizeof(_objects));
@ -762,9 +762,7 @@ int MinigameBbAirGuitar::run(uint flags) {
_backgroundSpriteIndex = 97;
_titleScreenSpriteIndex = 98;
_fromMainGame = false;
if (flags & 1)
_fromMainGame = true;
_fromMainGame = fromMainGame;
_gameState = 0;
_gameTicks = 0;

View File

@ -30,7 +30,7 @@ namespace Bbvs {
class MinigameBbAirGuitar : public Minigame {
public:
MinigameBbAirGuitar(BbvsEngine *vm) : Minigame(vm) {};
int run(uint flags);
int run(bool fromMainGame);
public:
struct Obj {

View File

@ -1185,7 +1185,7 @@ void MinigameBbAnt::updateObjs(uint mouseButtons) {
}
int MinigameBbAnt::run(uint flags) {
int MinigameBbAnt::run(bool fromMainGame) {
memset(_objects, 0, sizeof(_objects));
@ -1194,9 +1194,7 @@ int MinigameBbAnt::run(uint flags) {
_backgroundSpriteIndex = 303;
_titleScreenSpriteIndex = 304;
_fromMainGame = false;
if (flags & 1)
_fromMainGame = true;
_fromMainGame = fromMainGame;
_hiScore = 0;
_gameState = 0;

View File

@ -30,7 +30,7 @@ namespace Bbvs {
class MinigameBbAnt : public Minigame {
public:
MinigameBbAnt(BbvsEngine *vm) : Minigame(vm) {};
int run(uint flags);
int run(bool fromMainGame);
public:
struct Obj {

View File

@ -1264,7 +1264,7 @@ void MinigameBbloogie::playRndSound() {
playSound(_playerSounds1[_vm->getRandom(_playerSounds1Count)]);
}
int MinigameBbloogie::run(uint flags) {
int MinigameBbloogie::run(bool fromMainGame) {
memset(_objects, 0, sizeof(_objects));
@ -1273,9 +1273,7 @@ int MinigameBbloogie::run(uint flags) {
_backgroundSpriteIndex = 210;
_titleScreenSpriteIndex = 211;
_fromMainGame = false;
if (flags & 1)
_fromMainGame = true;
_fromMainGame = fromMainGame;
_hiScore = 0;
if (!_fromMainGame) {

View File

@ -30,7 +30,7 @@ namespace Bbvs {
class MinigameBbloogie : public Minigame {
public:
MinigameBbloogie(BbvsEngine *vm) : Minigame(vm) {};
int run(uint flags);
int run(bool fromMainGame);
public:
struct Obj {

View File

@ -1181,7 +1181,7 @@ void MinigameBbTennis::hitSomething() {
++_score;
}
int MinigameBbTennis::run(uint flags) {
int MinigameBbTennis::run(bool fromMainGame) {
memset(_objects, 0, sizeof(_objects));
@ -1190,9 +1190,7 @@ int MinigameBbTennis::run(uint flags) {
_backgroundSpriteIndex = 272;
_titleScreenSpriteIndex = 273;
_fromMainGame = false;
if (flags & 1)
_fromMainGame = true;
_fromMainGame = fromMainGame;
_hiScore = 0;
if (!_fromMainGame) {

View File

@ -30,7 +30,7 @@ namespace Bbvs {
class MinigameBbTennis : public Minigame {
public:
MinigameBbTennis(BbvsEngine *vm) : Minigame(vm) {};
int run(uint flags);
int run(bool fromMainGame);
public:
struct Obj {

View File

@ -30,6 +30,13 @@
namespace Bbvs {
enum {
kMinigameBbloogie = 0,
kMinigameBbTennis = 1,
kMinigameBbAnt = 2,
kMinigameBbAirGuitar = 3
};
struct ObjAnimation {
int frameCount;
const int *frameIndices;
@ -41,7 +48,7 @@ class Minigame {
public:
Minigame(BbvsEngine *vm);
virtual ~Minigame();
virtual int run(uint flags) = 0;
virtual int run(bool fromMainGame) = 0;
public:
BbvsEngine *_vm;
SpriteModule *_spriteModule;