[Scummvm-cvs-logs] CVS: scummvm/saga actor.cpp,1.81,1.82 events.cpp,1.44,1.45 scene.cpp,1.77,1.78 scene.h,1.33,1.34 sfuncs.cpp,1.72,1.73
Eugene Sandulenko
sev at users.sourceforge.net
Fri Jan 7 14:20:27 CET 2005
Update of /cvsroot/scummvm/scummvm/saga
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv29492
Modified Files:
actor.cpp events.cpp scene.cpp scene.h sfuncs.cpp
Log Message:
Eliminate _scene->getMode() and use scene flags instead
Index: actor.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/saga/actor.cpp,v
retrieving revision 1.81
retrieving revision 1.82
diff -u -d -r1.81 -r1.82
--- actor.cpp 7 Jan 2005 21:24:26 -0000 1.81
+++ actor.cpp 7 Jan 2005 22:18:52 -0000 1.82
@@ -295,7 +295,7 @@
ActorData *actor;
if (walkFlags & kWalkUseAngle) {
// tiled stuff
- if (_vm->_scene->getMode() == SCENE_MODE_ISO) {
+ if (_vm->_scene->getFlags() & kSceneFlagISO) {
//todo: it
} else {
angle = location.x & 15;
@@ -324,7 +324,7 @@
actor = getActor(actorId);
// tiled stuff
- if (_vm->_scene->getMode() == SCENE_MODE_ISO) {
+ if (_vm->_scene->getFlags() & kSceneFlagISO) {
//todo: it
} else {
toLocation.delta(actor->location, delta);
@@ -415,14 +415,14 @@
/* setup protagonist entry
// tiled stuff
- if (_vm->_scene->getMode() == SCENE_MODE_ISO) {
+ if (_vm->_scene->getFlags() & kSceneFlagISO) {
//todo: it
} else {
}
*/
_protagonist->currentAction = kActionWait;
- if (_vm->_scene->getMode() == SCENE_MODE_ISO) {
+ if (_vm->_scene->getFlags() & kSceneFlagISO) {
//todo: it
} else {
_vm->_scene->initDoorsState();
@@ -440,7 +440,7 @@
actor->location.z = _protagonist->location.z;
- if (_vm->_scene->getMode() == SCENE_MODE_ISO) {
+ if (_vm->_scene->getFlags() & kSceneFlagISO) {
//todo: it
} else {
followerDirection &= 0x07;
@@ -656,7 +656,7 @@
case kActionWalkToPoint:
case kActionWalkToLink:
// tiled stuff
- if (_vm->_scene->getMode() == SCENE_MODE_ISO) {
+ if (_vm->_scene->getFlags() & kSceneFlagISO) {
//todo: it
} else {
actor->partialTarget.delta(actor->location, delta);
@@ -735,7 +735,7 @@
case kActionWalkDir:
// tiled stuff
- if (_vm->_scene->getMode() == SCENE_MODE_ISO) {
+ if (_vm->_scene->getFlags() & kSceneFlagISO) {
//todo: it
} else {
actor->location.x += directionLUT[actor->actionDirection][0] * 2;
@@ -859,7 +859,7 @@
void Actor::calcActorScreenPosition(ActorData *actor) {
int beginSlope, endSlope, middle;
- if (_vm->_scene->getMode() == SCENE_MODE_ISO) {
+ if (_vm->_scene->getFlags() & kSceneFlagISO) {
//todo: it
} else {
middle = _vm->getStatusYOffset() - actor->location.y / ACTOR_LMULT;
@@ -935,7 +935,7 @@
continue;
}
- if (_vm->_scene->getMode() == SCENE_MODE_ISO) {
+ if (_vm->_scene->getFlags() & kSceneFlagISO) {
//todo: it
} else {
_vm->_sprite->drawOccluded(back_buf, spriteList, frameNumber, actor->screenPosition, actor->screenScale, actor->screenDepth);
@@ -1003,7 +1003,7 @@
protagonistLocation = _protagonist->location;
calcActorScreenPosition(_protagonist);
- if (_vm->_scene->getMode() == SCENE_MODE_ISO) {
+ if (_vm->_scene->getFlags() & kSceneFlagISO) {
//todo: it
} else {
prefer1.x = (100 * _protagonist->screenScale) >> 8;
@@ -1136,7 +1136,7 @@
_vm->_scene->setDoorState(3, 0xff);
}
- if (_vm->_scene->getMode() == SCENE_MODE_ISO) {
+ if (_vm->_scene->getFlags() & kSceneFlagISO) {
//todo: it
} else {
Index: events.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/saga/events.cpp,v
retrieving revision 1.44
retrieving revision 1.45
diff -u -d -r1.44 -r1.45
--- events.cpp 7 Jan 2005 00:57:43 -0000 1.44
+++ events.cpp 7 Jan 2005 22:18:52 -0000 1.45
@@ -305,7 +305,7 @@
BUFFER_INFO rbuf_info;
Point bg_pt;
- if (_vm->_scene->getMode() == SCENE_MODE_NORMAL) {
+ if (!(_vm->_scene->getFlags() & kSceneFlagISO)) {
back_buf = _vm->_gfx->getBackBuffer();
Index: scene.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/saga/scene.cpp,v
retrieving revision 1.77
retrieving revision 1.78
diff -u -d -r1.77 -r1.78
--- scene.cpp 7 Jan 2005 21:24:26 -0000 1.77
+++ scene.cpp 7 Jan 2005 22:18:52 -0000 1.78
@@ -112,7 +112,6 @@
}
_sceneLoaded = false;
- _sceneMode = 0;
_sceneNumber = 0;
_sceneResNum = 0;
_inGame = false;
@@ -315,12 +314,6 @@
return SUCCESS;
}
-int Scene::getMode() {
- assert(_initialized);
-
- return _sceneMode;
-}
-
void Scene::getSlopes(int &beginSlope, int &endSlope) {
beginSlope = _vm->getStatusYOffset() - _desc.beginSlope;
endSlope = _vm->getStatusYOffset() - _desc.endSlope;
@@ -532,7 +525,6 @@
return FAILURE;
}
- _sceneMode = 0;
_loadDesc = true;
_sceneNumber = -1;
@@ -796,7 +788,6 @@
pal_p = _vm->getImagePal(_bg.res_buf, _bg.res_len);
memcpy(_bg.pal, pal_p, sizeof(_bg.pal));
- _sceneMode = SCENE_MODE_NORMAL;
break;
case SAGA_BG_MASK: // Scene background mask resource
if (_bgMask.loaded) {
@@ -827,7 +818,7 @@
_actionMap->load(res_data, res_data_len);
break;
case SAGA_ISO_TILESET:
- if (_sceneMode == SCENE_MODE_NORMAL) {
+ if (!(_vm->_scene->getFlags() & kSceneFlagISO)) {
warning("Scene::ProcessSceneResources(): Isometric tileset incompatible with normal scene mode");
return FAILURE;
}
@@ -838,11 +829,9 @@
warning("Scene::ProcessSceneResources(): Error loading isometric tileset resource");
return FAILURE;
}
-
- _sceneMode = SCENE_MODE_ISO;
break;
case SAGA_ISO_METAMAP:
- if (_sceneMode == SCENE_MODE_NORMAL) {
+ if (!(_vm->_scene->getFlags() & kSceneFlagISO)) {
warning("Scene::ProcessSceneResources(): Isometric metamap incompatible with normal scene mode");
return FAILURE;
}
@@ -853,11 +842,9 @@
warning("Scene::ProcessSceneResources(): Error loading isometric metamap resource");
return FAILURE;
}
-
- _sceneMode = SCENE_MODE_ISO;
break;
case SAGA_ISO_METATILESET:
- if (_sceneMode == SCENE_MODE_NORMAL) {
+ if (!(_vm->_scene->getFlags() & kSceneFlagISO)) {
warning("Scene::ProcessSceneResources(): Isometric metatileset incompatible with normal scene mode");
return FAILURE;
}
@@ -868,8 +855,6 @@
warning("Scene::ProcessSceneResources(): Error loading isometric tileset resource");
return FAILURE;
}
-
- _sceneMode = SCENE_MODE_ISO;
break;
case SAGA_ANIM_1:
case SAGA_ANIM_2:
@@ -929,20 +914,11 @@
bg_pt.x = 0;
bg_pt.y = 0;
- switch (_sceneMode) {
-
- case SCENE_MODE_NORMAL:
+ if (_vm->_scene->getFlags() & kSceneFlagISO)
+ _vm->_isoMap->draw(dst_s);
+ else
bufToSurface(dst_s, buf_info.bg_buf, disp_info.logical_w,
MAX(disp_info.scene_h, _bg.h), NULL, &bg_pt);
- break;
- case SCENE_MODE_ISO:
- _vm->_isoMap->draw(dst_s);
- break;
- default:
- // Unknown scene mode
- return FAILURE;
- break;
- };
return SUCCESS;
}
Index: scene.h
===================================================================
RCS file: /cvsroot/scummvm/scummvm/saga/scene.h,v
retrieving revision 1.33
retrieving revision 1.34
diff -u -d -r1.33 -r1.34
--- scene.h 7 Jan 2005 21:13:26 -0000 1.33
+++ scene.h 7 Jan 2005 22:18:53 -0000 1.34
@@ -36,13 +36,6 @@
class ActionMap;
class ObjectMap;
-enum SCENE_MODES {
- SCENE_MODE_INVALID,
- SCENE_MODE_NORMAL,
- SCENE_MODE_ISO
-};
-
-
struct SCENE_BGINFO {
int bg_x;
int bg_y;
@@ -232,7 +225,6 @@
int endScene();
int queueScene(SCENE_QUEUE *scene_queue);
int draw(SURFACE *);
- int getMode();
int getFlags() { return _desc.flags; }
bool isInDemo() { return !_inGame; }
@@ -279,7 +271,6 @@
SceneQueueList _sceneQueue;
int _firstScene;
bool _sceneLoaded;
- int _sceneMode;
int _sceneNumber;
int _sceneResNum;
bool _inGame;
Index: sfuncs.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/saga/sfuncs.cpp,v
retrieving revision 1.72
retrieving revision 1.73
diff -u -d -r1.72 -r1.73
--- sfuncs.cpp 7 Jan 2005 00:57:43 -0000 1.72
+++ sfuncs.cpp 7 Jan 2005 22:18:53 -0000 1.73
@@ -494,7 +494,7 @@
int doorNumber;
doorNumber = getUWord(thread->pop());
- if (_vm->_scene->getMode() == SCENE_MODE_ISO) {
+ if (_vm->_scene->getFlags() & kSceneFlagISO) {
//todo: it
} else {
_vm->_scene->setDoorState(doorNumber, 0);
@@ -508,7 +508,7 @@
int doorNumber;
doorNumber = getUWord(thread->pop());
- if (_vm->_scene->getMode() == SCENE_MODE_ISO) {
+ if (_vm->_scene->getFlags() & kSceneFlagISO) {
//todo: it
} else {
_vm->_scene->setDoorState(doorNumber, 0xff);
@@ -1251,7 +1251,7 @@
doorNumber = getUWord(thread->pop());
doorState = getUWord(thread->pop());
- if (_vm->_scene->getMode() == SCENE_MODE_ISO) {
+ if (_vm->_scene->getFlags() & kSceneFlagISO) {
//todo: it
} else {
_vm->_scene->setDoorState(doorNumber, doorState);
More information about the Scummvm-git-logs
mailing list