aboutsummaryrefslogtreecommitdiff
path: root/engines
diff options
context:
space:
mode:
authorStrangerke2013-05-06 08:21:50 +0200
committerStrangerke2013-05-06 08:21:50 +0200
commitb1dce29ee895e888253a66ce17e892e04fcccf4d (patch)
treed507ae4bc74c030349e8552699750d3497e79bce /engines
parent3d5b975c37989ec9c21f3f6b678574903379340b (diff)
downloadscummvm-rg350-b1dce29ee895e888253a66ce17e892e04fcccf4d.tar.gz
scummvm-rg350-b1dce29ee895e888253a66ce17e892e04fcccf4d.tar.bz2
scummvm-rg350-b1dce29ee895e888253a66ce17e892e04fcccf4d.zip
HOPKINS: Get rid of magic values
Diffstat (limited to 'engines')
-rw-r--r--engines/hopkins/globals.cpp4
-rw-r--r--engines/hopkins/globals.h2
-rw-r--r--engines/hopkins/hopkins.cpp12
-rw-r--r--engines/hopkins/lines.cpp4
-rw-r--r--engines/hopkins/objects.cpp31
-rw-r--r--engines/hopkins/script.cpp4
6 files changed, 28 insertions, 29 deletions
diff --git a/engines/hopkins/globals.cpp b/engines/hopkins/globals.cpp
index 2e7a2195d1..89a36f8723 100644
--- a/engines/hopkins/globals.cpp
+++ b/engines/hopkins/globals.cpp
@@ -89,7 +89,7 @@ Globals::Globals(HopkinsEngine *vm) {
_menuTextOff = 0;
_menuDisplayType = 0;
_checkDistanceFl = false;
- _characterType = 0;
+ _characterType = CHARACTER_HOPKINS;
_actionMoveTo = false;
_actionDirection = DIR_NONE;
@@ -185,7 +185,7 @@ void Globals::clearAll() {
}
void Globals::loadCharacterData() {
- assert(_characterType >= 0 && _characterType <= 2);
+ assert(_characterType >= CHARACTER_HOPKINS && _characterType <= CHARACTER_SAMANTHA);
const int *srcList[] = { HOPKINS_PERSO_0, HOPKINS_PERSO_1, HOPKINS_PERSO_2 };
const int *srcP = srcList[_characterType];
diff --git a/engines/hopkins/globals.h b/engines/hopkins/globals.h
index f86a810c28..94512c3d26 100644
--- a/engines/hopkins/globals.h
+++ b/engines/hopkins/globals.h
@@ -172,7 +172,7 @@ public:
int _characterMaxPosY;
int _baseMapColor;
int _spriteSize[500];
- int _characterType;
+ PlayerCharacter _characterType;
uint _speed;
byte *_answerBuffer;
Savegame *_saveData;
diff --git a/engines/hopkins/hopkins.cpp b/engines/hopkins/hopkins.cpp
index 0da2d35195..960a5cf524 100644
--- a/engines/hopkins/hopkins.cpp
+++ b/engines/hopkins/hopkins.cpp
@@ -172,7 +172,7 @@ bool HopkinsEngine::runWin95Demo() {
_globals->_characterSpriteBuf = _fileIO->loadFile("PERSO.SPR");
}
- _globals->_characterType = 0;
+ _globals->_characterType = CHARACTER_HOPKINS;
_objectsMan->_mapCarPosX = _objectsMan->_mapCarPosY = 0;
memset(_globals->_saveData, 0, 2000);
_globals->_exitId = 0;
@@ -453,7 +453,7 @@ bool HopkinsEngine::runLinuxDemo() {
_globals->_eventMode = EVENTMODE_DEFAULT;
_globals->_characterSpriteBuf = _fileIO->loadFile("PERSO.SPR");
- _globals->_characterType = 0;
+ _globals->_characterType = CHARACTER_HOPKINS;
_objectsMan->_mapCarPosX = _objectsMan->_mapCarPosY = 0;
memset(_globals->_saveData, 0, 2000);
_globals->_exitId = 0;
@@ -813,7 +813,7 @@ bool HopkinsEngine::runFull() {
}
_globals->_eventMode = EVENTMODE_DEFAULT;
_globals->_characterSpriteBuf = _fileIO->loadFile("PERSO.SPR");
- _globals->_characterType = 0;
+ _globals->_characterType = CHARACTER_HOPKINS;
_objectsMan->_mapCarPosX = _objectsMan->_mapCarPosY = 0;
memset(_globals->_saveData, 0, 2000);
@@ -1525,7 +1525,7 @@ bool HopkinsEngine::runFull() {
//_globals->_exitId = WBASE(); // Handles the 3D Doom level (Windows)
_soundMan->stopSound();
_globals->_characterSpriteBuf = _fileIO->loadFile("PERSO.SPR");
- _globals->_characterType = 0;
+ _globals->_characterType = CHARACTER_HOPKINS;
_globals->_eventMode = EVENTMODE_DEFAULT;
_graphicsMan->_lineNbr = SCREEN_WIDTH;
break;
@@ -2177,7 +2177,7 @@ void HopkinsEngine::playEnding() {
_globals->_exitId = 300;
}
_globals->_characterSpriteBuf = _fileIO->loadFile("PERSO.SPR");
- _globals->_characterType = 0;
+ _globals->_characterType = CHARACTER_HOPKINS;
_globals->_eventMode = EVENTMODE_DEFAULT;
}
@@ -2819,7 +2819,7 @@ void HopkinsEngine::handleOceanMaze(int16 curExitId, Common::String backgroundFi
_objectsMan->removeSprite(0);
_objectsMan->clearScreen();
_globals->_characterSpriteBuf = _fileIO->loadFile("PERSO.SPR");
- _globals->_characterType = 0;
+ _globals->_characterType = CHARACTER_HOPKINS;
}
void HopkinsEngine::syncSoundSettings() {
diff --git a/engines/hopkins/lines.cpp b/engines/hopkins/lines.cpp
index 6bb6e0a47b..60b9b48880 100644
--- a/engines/hopkins/lines.cpp
+++ b/engines/hopkins/lines.cpp
@@ -2481,11 +2481,11 @@ int LinesManager::testLine(int paramX, int paramY, int *testValue, int *foundLin
int LinesManager::computeYSteps(int idx) {
int zoomPct = _vm->_globals->_spriteSize[idx];
- if (_vm->_globals->_characterType == 1) {
+ if (_vm->_globals->_characterType == CHARACTER_HOPKINS_CLONE) {
if (zoomPct < 0)
zoomPct = -zoomPct;
zoomPct = 20 * (5 * zoomPct - 100) / -80;
- } else if (_vm->_globals->_characterType == 2) {
+ } else if (_vm->_globals->_characterType == CHARACTER_SAMANTHA) {
if (zoomPct < 0)
zoomPct = -zoomPct;
zoomPct = 20 * (5 * zoomPct - 165) / -67;
diff --git a/engines/hopkins/objects.cpp b/engines/hopkins/objects.cpp
index 6b95a0f4cd..c26c9ab389 100644
--- a/engines/hopkins/objects.cpp
+++ b/engines/hopkins/objects.cpp
@@ -2199,7 +2199,7 @@ void ObjectsManager::changeCharacterHead(PlayerCharacter oldCharacter, PlayerCha
loc = &_vm->_globals->_saveData->_realHopkins;
_vm->_globals->_characterSpriteBuf = _vm->_fileIO->loadFile("PERSO.SPR");
- _vm->_globals->_characterType = 0;
+ _vm->_globals->_characterType = CHARACTER_HOPKINS;
addStaticSprite(_vm->_globals->_characterSpriteBuf, loc->_pos, 0, 64, loc->_zoomFactor, false, 34, 190);
animateSprite(0);
_vm->_globals->loadCharacterData();
@@ -2224,7 +2224,7 @@ void ObjectsManager::changeCharacterHead(PlayerCharacter oldCharacter, PlayerCha
loc = &_vm->_globals->_saveData->_samantha;
_vm->_globals->_characterSpriteBuf = _vm->_fileIO->loadFile("PSAMAN.SPR");
- _vm->_globals->_characterType = 2;
+ _vm->_globals->_characterType = CHARACTER_SAMANTHA;
addStaticSprite(_vm->_globals->_characterSpriteBuf, loc->_pos, 0, 64, loc->_zoomFactor, false, 20, 127);
animateSprite(0);
_vm->_globals->loadCharacterData();
@@ -2287,9 +2287,9 @@ void ObjectsManager::changeCharacterHead(PlayerCharacter oldCharacter, PlayerCha
// Check Size
void ObjectsManager::computeAndSetSpriteSize() {
int size = _vm->_globals->_spriteSize[getSpriteY(0)];
- if (_vm->_globals->_characterType == 1) {
+ if (_vm->_globals->_characterType == CHARACTER_HOPKINS_CLONE) {
size = 20 * (5 * abs(size) - 100) / -80;
- } else if (_vm->_globals->_characterType == 2) {
+ } else if (_vm->_globals->_characterType == CHARACTER_SAMANTHA) {
size = 20 * (5 * abs(size) - 165) / -67;
}
setSpriteZoom(0, size);
@@ -3861,30 +3861,29 @@ void ObjectsManager::sceneControl2(const Common::String &backgroundFile, const C
_vm->_graphicsMan->setColorPercentage(253, 100, 100, 100);
_vm->_graphicsMan->setColorPercentage(251, 100, 100, 100);
_vm->_graphicsMan->setColorPercentage(254, 0, 0, 0);
- if (_vm->_globals->_characterType) {
- if (!_vm->_globals->_saveData->_data[svAlternateSpriteFl] && !_vm->_globals->_saveData->_data[svField356]) {
- _vm->_globals->_characterSpriteBuf = _vm->_fileIO->loadFile("PERSO.SPR");
- _vm->_globals->_characterType = 0;
- }
+ if (_vm->_globals->_characterType != CHARACTER_HOPKINS && !_vm->_globals->_saveData->_data[svAlternateSpriteFl] && !_vm->_globals->_saveData->_data[svField356]) {
+ _vm->_globals->_characterSpriteBuf = _vm->_fileIO->loadFile("PERSO.SPR");
+ _vm->_globals->_characterType = CHARACTER_HOPKINS;
}
- if (!_vm->_globals->_characterType && _vm->_globals->_saveData->_data[svAlternateSpriteFl] == 1) {
+
+ if (_vm->_globals->_characterType == CHARACTER_HOPKINS && _vm->_globals->_saveData->_data[svAlternateSpriteFl] == 1) {
_vm->_globals->_characterSpriteBuf = _vm->_fileIO->loadFile("HOPFEM.SPR");
- _vm->_globals->_characterType = 1;
+ _vm->_globals->_characterType = CHARACTER_HOPKINS_CLONE;
}
- if (_vm->_globals->_characterType != 2 && _vm->_globals->_saveData->_data[svField356] == 1) {
+ if (_vm->_globals->_characterType != CHARACTER_SAMANTHA && _vm->_globals->_saveData->_data[svField356] == 1) {
_vm->_globals->_characterSpriteBuf = _vm->_fileIO->loadFile("PSAMAN.SPR");
- _vm->_globals->_characterType = 2;
+ _vm->_globals->_characterType = CHARACTER_SAMANTHA;
}
_vm->_globals->loadCharacterData();
switch (_vm->_globals->_characterType) {
- case 0:
+ case CHARACTER_HOPKINS:
addStaticSprite(_vm->_globals->_characterSpriteBuf, _characterPos, 0, _startSpriteIndex, 0, false, 34, 190);
break;
- case 1:
+ case CHARACTER_HOPKINS_CLONE:
addStaticSprite(_vm->_globals->_characterSpriteBuf, _characterPos, 0, _startSpriteIndex, 0, false, 28, 155);
break;
- case 2:
+ case CHARACTER_SAMANTHA:
addStaticSprite(_vm->_globals->_characterSpriteBuf, _characterPos, 0, _startSpriteIndex, 0, false, 20, 127);
break;
}
diff --git a/engines/hopkins/script.cpp b/engines/hopkins/script.cpp
index c14fb6c8f9..df8c077611 100644
--- a/engines/hopkins/script.cpp
+++ b/engines/hopkins/script.cpp
@@ -955,7 +955,7 @@ int ScriptManager::handleOpcode(const byte *dataP) {
case 56:
_vm->_globals->_characterSpriteBuf = _vm->_fileIO->loadFile("HOPFEM.SPR");
- _vm->_globals->_characterType = 1;
+ _vm->_globals->_characterType = CHARACTER_HOPKINS_CLONE;
_vm->_globals->_saveData->_data[svAlternateSpriteFl] = 1;
_vm->_globals->loadCharacterData();
_vm->_objectsMan->_sprite[0]._deltaX = 28;
@@ -965,7 +965,7 @@ int ScriptManager::handleOpcode(const byte *dataP) {
case 57:
_vm->_globals->_characterSpriteBuf = _vm->_fileIO->loadFile("PERSO.SPR");
- _vm->_globals->_characterType = 0;
+ _vm->_globals->_characterType = CHARACTER_HOPKINS;
_vm->_globals->_saveData->_data[svAlternateSpriteFl] = 0;
_vm->_globals->loadCharacterData();
_vm->_objectsMan->_sprite[0]._deltaX = 34;