Skip to content

Commit

Permalink
HOPKINS: Clean up of moving Txt array from Globals to FontManager
Browse files Browse the repository at this point in the history
  • Loading branch information
dreammaster committed Sep 22, 2012
1 parent 2876790 commit 1597aff
Show file tree
Hide file tree
Showing 8 changed files with 58 additions and 46 deletions.
1 change: 1 addition & 0 deletions engines/hopkins/events.cpp
Expand Up @@ -218,6 +218,7 @@ void EventsManager::pollEvents() {
case Common::EVENT_LBUTTONUP:
case Common::EVENT_RBUTTONDOWN:
case Common::EVENT_RBUTTONUP:

return;

default:
Expand Down
15 changes: 15 additions & 0 deletions engines/hopkins/font.cpp
Expand Up @@ -30,6 +30,21 @@ void FontManager::setParent(HopkinsEngine *vm) {
_vm = vm;
}

void FontManager::clearAll() {
for (int idx = 0; idx < 11; ++idx) {
Txt[idx].field0 = 0;
Txt[idx].field12 = 0;
Txt[idx].field3FC = 0;
Txt[idx].field3FE = 0;
Txt[idx].field400 = 0;
Txt[idx].field404 = 0;
Txt[idx].field406 = 0;
Txt[idx].field408 = 0;

ListeTxt[idx].field0 = 0;
}
}

void FontManager::TEXTE_OFF(int idx) {
warning("TODO: TEXTE_OFF");
}
Expand Down
12 changes: 12 additions & 0 deletions engines/hopkins/font.h
Expand Up @@ -39,18 +39,30 @@ struct TxtItem {
int fieldC;
int fieldE;
int field10;
int field12;
int field3FC;
int field3FE;
int field400;
int field404;
int field406;
int field408;
int field40A;
};

struct ListeTxtItem {
int field0;
};


class FontManager {
private:
HopkinsEngine *_vm;
public:
TxtItem Txt[12];
ListeTxtItem ListeTxt[11];
public:
void setParent(HopkinsEngine *vm);
void clearAll();

void TEXTE_OFF(int idx);
};
Expand Down
21 changes: 8 additions & 13 deletions engines/hopkins/globals.cpp
Expand Up @@ -22,8 +22,10 @@

#include "common/textconsole.h"
#include "hopkins/globals.h"
#include "hopkins/graphics.h"
#include "hopkins/files.h"
#include "hopkins/font.h"
#include "hopkins/graphics.h"
#include "hopkins/hopkins.h"

namespace Hopkins {

Expand Down Expand Up @@ -144,6 +146,10 @@ Globals::~Globals() {
free(PERSO);
}

void Globals::setParent(HopkinsEngine *vm) {
_vm = vm;
}

void Globals::setConfig() {
HOPIMAGE = "BUFFER";
HOPANIM = "ANIM";
Expand Down Expand Up @@ -189,18 +195,7 @@ void Globals::clearAll() {
hauteur_boite = 0;
largeur_boite = 0;

for (int idx = 0; idx < 11; ++idx) {
Txt[idx].field0 = 0;
Txt[idx].field12 = 0;
Txt[idx].field3FC = 0;
Txt[idx].field3FE = 0;
Txt[idx].field400 = 0;
Txt[idx].field404 = 0;
Txt[idx].field406 = 0;
Txt[idx].field408 = 0;

ListeTxt[idx].field0 = 0;
}
_vm->_fontManager.clearAll();

INIT_VBOB();
ADR_FICHIER_OBJ = PTRNUL;
Expand Down
22 changes: 5 additions & 17 deletions engines/hopkins/globals.h
Expand Up @@ -28,21 +28,6 @@

namespace Hopkins {

struct TxtItem {
int field0;
int field12;
int field3FC;
int field3FE;
int field400;
int field404;
int field406;
int field408;
};

struct ListeTxtItem {
int field0;
};

struct ZonePItem {
int field0;
int field2;
Expand Down Expand Up @@ -156,10 +141,14 @@ struct BlocItem {
int y2;
};

class HopkinsEngine;

/**
* Engine Globals
*/
class Globals {
private:
HopkinsEngine *_vm;
public:
int FR;
int SVGA;
Expand Down Expand Up @@ -206,8 +195,6 @@ class Globals {
byte *ICONE;
byte *BUF_ZONE;
byte *CACHE_BANQUE[6];
TxtItem Txt[11];
ListeTxtItem ListeTxt[11];
ZonePItem ZoneP[105];
LigneItem Ligne[400];
LigneZoneItem LigneZone[400];
Expand Down Expand Up @@ -277,6 +264,7 @@ class Globals {

Globals();
~Globals();
void setParent(HopkinsEngine *vm);

void setConfig();
void clearAll();
Expand Down
1 change: 1 addition & 0 deletions engines/hopkins/hopkins.cpp
Expand Up @@ -40,6 +40,7 @@ HopkinsEngine::HopkinsEngine(OSystem *syst, const HopkinsGameDescription *gameDe
_animationManager.setParent(this);
_eventsManager.setParent(this);
_fontManager.setParent(this);
_globals.setParent(this);
_graphicsManager.setParent(this);
_menuManager.setParent(this);
_objectsManager.setParent(this);
Expand Down
30 changes: 15 additions & 15 deletions engines/hopkins/menu.cpp
Expand Up @@ -38,7 +38,7 @@ void MenuManager::setParent(HopkinsEngine *vm) {

int MenuManager::MENU() {
byte *spriteData = NULL;
signed int v2;
signed int menuIndex;
int v3;
int v4;
signed int v6;
Expand Down Expand Up @@ -99,25 +99,25 @@ int MenuManager::MENU() {
if (g_system->getEventManager()->shouldQuit())
return -1;

v2 = 0;
menuIndex = 0;
v3 = _vm->_eventsManager.XMOUSE();
v4 = _vm->_eventsManager.YMOUSE();

if ((unsigned int)(v3 - 232) <= 0xB0) {
if ((unsigned int)(v3 - 232) <= 176) {
if ((unsigned int)(v4 - 261) <= 23)
v2 = 1;
menuIndex = 1;
if ((unsigned int)(v4 - 293) <= 23)
v2 = 2;
menuIndex = 2;
if ((unsigned int)(v4 - 325) <= 22)
v2 = 3;
menuIndex = 3;
if ((unsigned int)(v4 - 356) <= 23)
v2 = 4;
menuIndex = 4;

if ((unsigned int)(v4 - 388) <= 23)
v2 = 5;
menuIndex = 5;
}

switch (v2) {
switch (menuIndex) {
case 0:
v11 = 0;
v10 = 0;
Expand Down Expand Up @@ -170,17 +170,17 @@ int MenuManager::MENU() {
_vm->_graphicsManager.AFFICHE_SPEED(spriteData, 230, 386, v7 + 8);
_vm->_graphicsManager.VBL();

if (_vm->_eventsManager.BMOUSE() == 1 && v2 > 0)
if (_vm->_eventsManager.BMOUSE() == 1 && menuIndex > 0)
v12 = 1;
} while (v12 != 1);

if (v2 == 1) {
if (menuIndex == 1) {
_vm->_graphicsManager.AFFICHE_SPEED(spriteData, 230, 259, 10);
_vm->_graphicsManager.VBL();
_vm->_eventsManager.delay(200);
v6 = 1;
}
if (v2 != 2)
if (menuIndex != 2)
break;

_vm->_graphicsManager.AFFICHE_SPEED(spriteData, 230, 291, 11);
Expand All @@ -197,7 +197,7 @@ int MenuManager::MENU() {
_vm->_globals.SORTIE = 0;
}

if (v2 != 3)
if (menuIndex != 3)
break;

_vm->_graphicsManager.AFFICHE_SPEED(spriteData, 230, 322, 12);
Expand All @@ -206,15 +206,15 @@ int MenuManager::MENU() {

CHOICE_OPTION();
}
if (v2 == 4) {
if (menuIndex == 4) {
_vm->_graphicsManager.AFFICHE_SPEED(spriteData, 230, 354, 13);
_vm->_graphicsManager.VBL();
_vm->_eventsManager.delay(200);
_vm->INTRORUN();
continue;
}

if ( v2 == 5 ) {
if ( menuIndex == 5 ) {
_vm->_graphicsManager.AFFICHE_SPEED(spriteData, 230, 386, 14);
_vm->_graphicsManager.VBL();
_vm->_eventsManager.delay(200);
Expand Down
2 changes: 1 addition & 1 deletion engines/hopkins/sound.cpp
Expand Up @@ -36,7 +36,7 @@ void SoundManager::WSOUND_INIT() {
}

void SoundManager::VERIF_SOUND() {
warning("TODO: VERIF_SOUND");
// warning("TODO: VERIF_SOUND");
}

void SoundManager::LOAD_ANM_SOUND() {
Expand Down

0 comments on commit 1597aff

Please sign in to comment.