[Scummvm-cvs-logs] CVS: scummvm/saga actor.h,1.95,1.96 rscfile.cpp,1.46,1.47 rscfile.h,1.19,1.20 saga.cpp,1.141,1.142
Torbjörn Andersson
eriktorbjorn at users.sourceforge.net
Sat Oct 8 15:10:20 CEST 2005
- Previous message: [Scummvm-cvs-logs] CVS: scummvm/scumm thumbnail.cpp,1.8,1.9
- Next message: [Scummvm-cvs-logs] CVS: scummvm/backends/PalmOS/Src base_event.cpp,NONE,1.1 base_gfx.cpp,NONE,1.1 base_mouse.cpp,NONE,1.1 be_base.cpp,NONE,1.1 be_base.h,NONE,1.1 be_create.cpp,NONE,1.1 be_os5.cpp,NONE,1.1 be_os5.h,NONE,1.1 be_save.cpp,NONE,1.1 be_zodiac.cpp,NONE,1.1 be_zodiac.h,NONE,1.1 os5_event.cpp,NONE,1.1 os5_gfx.cpp,NONE,1.1 os5_mouse.cpp,NONE,1.1 os5_overlay.cpp,NONE,1.1 os5_sound.cpp,NONE,1.1 zodiac_event.cpp,NONE,1.1 zodiac_gfx.cpp,NONE,1.1 zodiac_mouse.cpp,NONE,1.1 zodiac_overlay.cpp,NONE,1.1
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
Update of /cvsroot/scummvm/scummvm/saga
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv770
Modified Files:
actor.h rscfile.cpp rscfile.h saga.cpp
Log Message:
Read IHNM actor and object strings from the resource file. (This does not
keep whichObject() from crashing, but I don't know why.)
Index: actor.h
===================================================================
RCS file: /cvsroot/scummvm/scummvm/saga/actor.h,v
retrieving revision 1.95
retrieving revision 1.96
diff -u -d -r1.95 -r1.96
--- actor.h 4 Sep 2005 17:40:16 -0000 1.95
+++ actor.h 8 Oct 2005 22:09:20 -0000 1.96
@@ -641,7 +641,6 @@
SagaEngine *_vm;
ResourceContext *_actorContext;
- StringsTable _actorsStrings;
int _lastTickMsec;
CommonObjectOrderList _drawOrderList;
@@ -653,6 +652,9 @@
Rect _speechBoxScript;
+ StringsTable _objectsStrings;
+ StringsTable _actorsStrings;
+
protected:
SpeechData _activeSpeech;
int _protagState;
Index: rscfile.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/saga/rscfile.cpp,v
retrieving revision 1.46
retrieving revision 1.47
diff -u -d -r1.46 -r1.47
--- rscfile.cpp 4 Oct 2005 23:38:19 -0000 1.46
+++ rscfile.cpp 8 Oct 2005 22:09:21 -0000 1.47
@@ -468,12 +468,12 @@
_metaResource.sceneIndex = metaS.readSint16LE();
_metaResource.objectCount = metaS.readSint16LE();
- _metaResource.field_4 = metaS.readSint32LE();
+ _metaResource.objectsStringsResourceID = metaS.readSint32LE();
_metaResource.field_8 = metaS.readSint32LE();
_metaResource.mainSpritesID = metaS.readSint32LE();
_metaResource.objectsResourceID = metaS.readSint32LE();
_metaResource.actorCount = metaS.readSint16LE();
- _metaResource.field_16 = metaS.readSint32LE();
+ _metaResource.actorsStringsResourceID = metaS.readSint32LE();
_metaResource.actorsResourceID = metaS.readSint32LE();
_metaResource.protagFaceSpritesID = metaS.readSint32LE();
_metaResource.field_22 = metaS.readSint32LE();
@@ -491,7 +491,11 @@
_vm->_actor->_protagonist->_sceneNumber = _metaResource.sceneIndex;
- // TODO: field_16
+ _vm->_actor->_objectsStrings.freeMem();
+
+ _vm->_resource->loadResource(resourceContext, _metaResource.objectsStringsResourceID, resourcePointer, resourceLength);
+ _vm->loadStrings(_vm->_actor->_objectsStrings, resourcePointer, resourceLength);
+ free(resourcePointer);
if (chapter >= _vm->_sndRes->_fxTableIDsLen) {
error("Chapter ID exceeds fxTableIDs length");
@@ -521,7 +525,11 @@
_vm->_interface->_defPortraits.freeMem();
_vm->_sprite->loadList(_metaResource.protagFaceSpritesID, _vm->_interface->_defPortraits);
- // TODO: field_4
+ _vm->_actor->_actorsStrings.freeMem();
+
+ _vm->_resource->loadResource(resourceContext, _metaResource.actorsStringsResourceID, resourcePointer, resourceLength);
+ _vm->loadStrings(_vm->_actor->_actorsStrings, resourcePointer, resourceLength);
+ free(resourcePointer);
// TODO: field_8
Index: rscfile.h
===================================================================
RCS file: /cvsroot/scummvm/scummvm/saga/rscfile.h,v
retrieving revision 1.19
retrieving revision 1.20
diff -u -d -r1.19 -r1.20
--- rscfile.h 7 Aug 2005 00:00:41 -0000 1.19
+++ rscfile.h 8 Oct 2005 22:09:21 -0000 1.20
@@ -92,12 +92,12 @@
struct MetaResource {
int16 sceneIndex;
int16 objectCount;
- int32 field_4;
+ int32 objectsStringsResourceID;
int32 field_8;
int32 mainSpritesID;
int32 objectsResourceID;
int16 actorCount;
- int32 field_16;
+ int32 actorsStringsResourceID;
int32 actorsResourceID;
int32 protagFaceSpritesID;
int32 field_22;
Index: saga.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/saga/saga.cpp,v
retrieving revision 1.141
retrieving revision 1.142
diff -u -d -r1.141 -r1.142
--- saga.cpp 8 Oct 2005 21:28:14 -0000 1.141
+++ saga.cpp 8 Oct 2005 22:09:21 -0000 1.142
@@ -388,7 +388,9 @@
switch (objectTypeId(objectId)) {
case kGameObjectObject:
obj = _actor->getObj(objectId);
- return _script->_mainStrings.getString(obj->_nameIndex);
+ if (getGameType() == GType_ITE)
+ return _script->_mainStrings.getString(obj->_nameIndex);
+ return _actor->_objectsStrings.getString(obj->_nameIndex);
case kGameObjectActor:
actor = _actor->getActor(objectId);
return _actor->_actorsStrings.getString(actor->_nameIndex);
- Previous message: [Scummvm-cvs-logs] CVS: scummvm/scumm thumbnail.cpp,1.8,1.9
- Next message: [Scummvm-cvs-logs] CVS: scummvm/backends/PalmOS/Src base_event.cpp,NONE,1.1 base_gfx.cpp,NONE,1.1 base_mouse.cpp,NONE,1.1 be_base.cpp,NONE,1.1 be_base.h,NONE,1.1 be_create.cpp,NONE,1.1 be_os5.cpp,NONE,1.1 be_os5.h,NONE,1.1 be_save.cpp,NONE,1.1 be_zodiac.cpp,NONE,1.1 be_zodiac.h,NONE,1.1 os5_event.cpp,NONE,1.1 os5_gfx.cpp,NONE,1.1 os5_mouse.cpp,NONE,1.1 os5_overlay.cpp,NONE,1.1 os5_sound.cpp,NONE,1.1 zodiac_event.cpp,NONE,1.1 zodiac_gfx.cpp,NONE,1.1 zodiac_mouse.cpp,NONE,1.1 zodiac_overlay.cpp,NONE,1.1
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
More information about the Scummvm-git-logs
mailing list