[Scummvm-cvs-logs] CVS: scummvm verbs.cpp,1.8,1.9 sound.cpp,1.5,1.6 scummvm.cpp,1.24,1.25 scumm.h,1.25,1.26 script_v2.cpp,1.9,1.10 script_v1.cpp,1.11,1.12 script.cpp,1.10,1.11 saveload.cpp,1.13,1.14 object.cpp,1.13,1.14 debug.cpp,1.7,1.8
Ludvig Strigeus
strigeus at users.sourceforge.net
Mon Nov 12 12:51:03 CET 2001
Update of /cvsroot/scummvm/scummvm
In directory usw-pr-cvs1:/tmp/cvs-serv22073
Modified Files:
verbs.cpp sound.cpp scummvm.cpp scumm.h script_v2.cpp
script_v1.cpp script.cpp saveload.cpp object.cpp debug.cpp
Log Message:
readability patches, some by janssen
Index: verbs.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/verbs.cpp,v
retrieving revision 1.8
retrieving revision 1.9
diff -C2 -d -r1.8 -r1.9
*** verbs.cpp 2001/11/08 18:37:42 1.8
--- verbs.cpp 2001/11/12 20:50:36 1.9
***************
*** 251,255 ****
RoomHeader *roomhdr;
! if (whereIsObject(object) == 4)
error("Can't grab verb image from flobject");
--- 251,255 ----
RoomHeader *roomhdr;
! if (whereIsObject(object) == WIO_FLOBJECT)
error("Can't grab verb image from flobject");
Index: sound.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/sound.cpp,v
retrieving revision 1.5
retrieving revision 1.6
diff -C2 -d -r1.5 -r1.6
*** sound.cpp 2001/11/06 20:25:08 1.5
--- sound.cpp 2001/11/12 20:50:36 1.6
***************
*** 39,43 ****
void Scumm::addSoundToQueue(int sound) {
_vars[VAR_LAST_SOUND] = sound;
! ensureResourceLoaded(4, sound);
addSoundToQueue2(sound);
}
--- 39,43 ----
void Scumm::addSoundToQueue(int sound) {
_vars[VAR_LAST_SOUND] = sound;
! ensureResourceLoaded(rtSound, sound);
addSoundToQueue2(sound);
}
***************
*** 202,206 ****
return 1;
! if (!isResourceLoaded(4, sound))
return 0;
--- 202,206 ----
return 1;
! if (!isResourceLoaded(rtSound, sound))
return 0;
***************
*** 291,295 ****
SoundEngine *se = (SoundEngine*)_soundDriver;
if (se) {
! se->_base_sounds = res.address[4];
}
_soundTagTable = (byte*)sound_tags;
--- 291,295 ----
SoundEngine *se = (SoundEngine*)_soundDriver;
if (se) {
! se->_base_sounds = res.address[rtSound];
}
_soundTagTable = (byte*)sound_tags;
Index: scummvm.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scummvm.cpp,v
retrieving revision 1.24
retrieving revision 1.25
diff -C2 -d -r1.24 -r1.25
*** scummvm.cpp 2001/11/11 16:54:45 1.24
--- scummvm.cpp 2001/11/12 20:50:36 1.25
***************
*** 170,174 ****
_vars[VAR_SOUNDCARD] = _soundCardType;
_vars[VAR_VIDEOMODE] = 0x13;
! _vars[VAR_HEAPSPACE] = 600;
_vars[VAR_MOUSEPRESENT] = _mousePresent;
_vars[VAR_SOUNDPARAM] = _soundParam;
--- 170,174 ----
_vars[VAR_SOUNDCARD] = _soundCardType;
_vars[VAR_VIDEOMODE] = 0x13;
! _vars[VAR_HEAPSPACE] = 630;
_vars[VAR_MOUSEPRESENT] = _mousePresent;
_vars[VAR_SOUNDPARAM] = _soundParam;
***************
*** 418,423 ****
{"atlantis", "Indiana Jones 4 and the Fate of Atlantis", GID_INDY4, 5, 5, 0},
{"playfate", "Indiana Jones 4 and the Fate of Atlantis (Demo)", GID_INDY4, 5, 5, 0},
! {"tentacle", "Day Of The Tenctacle", GID_TENTACLE, 6, 4, 2},
! {"dottdemo", "Day Of The Tenctacle (Demo)", GID_TENTACLE, 6, 3, 2},
{"samnmax", "Sam & Max", GID_SAMNMAX, 6, 4, 2},
{"snmdemo", "Sam & Max (Demo)", GID_SAMNMAX, 6, 3, 0},
--- 418,423 ----
{"atlantis", "Indiana Jones 4 and the Fate of Atlantis", GID_INDY4, 5, 5, 0},
{"playfate", "Indiana Jones 4 and the Fate of Atlantis (Demo)", GID_INDY4, 5, 5, 0},
! {"tentacle", "Day Of The Tentacle", GID_TENTACLE, 6, 4, 2},
! {"dottdemo", "Day Of The Tentacle (Demo)", GID_TENTACLE, 6, 3, 2},
{"samnmax", "Sam & Max", GID_SAMNMAX, 6, 4, 2},
{"snmdemo", "Sam & Max (Demo)", GID_SAMNMAX, 6, 3, 0},
***************
*** 458,462 ****
void Scumm::startScene(int room, Actor *a, int objectNr) {
! int i;
Actor *at;
--- 458,462 ----
void Scumm::startScene(int room, Actor *a, int objectNr) {
! int i,where;
Actor *at;
***************
*** 471,479 ****
if (_currentScript!=0xFF) {
! if (vm.slot[_currentScript].type==1 || vm.slot[_currentScript].type==4) {
if(vm.slot[_currentScript].cutsceneOverride!=0)
error("Object %d stopped with active cutscene/override in exit", vm.slot[_currentScript].number);
_currentScript = 0xFF;
! } else if (vm.slot[_currentScript].type==3) {
if (vm.slot[_currentScript].cutsceneOverride!=0)
error("Script %d stopped with active cutscene/override in exit", vm.slot[_currentScript].number);
--- 471,480 ----
if (_currentScript!=0xFF) {
! if (vm.slot[_currentScript].where==WIO_ROOM ||
! vm.slot[_currentScript].where==WIO_FLOBJECT) {
if(vm.slot[_currentScript].cutsceneOverride!=0)
error("Object %d stopped with active cutscene/override in exit", vm.slot[_currentScript].number);
_currentScript = 0xFF;
! } else if (vm.slot[_currentScript].where==WIO_LOCAL) {
if (vm.slot[_currentScript].cutsceneOverride!=0)
error("Script %d stopped with active cutscene/override in exit", vm.slot[_currentScript].number);
***************
*** 544,550 ****
if (a) {
! if (whereIsObject(objectNr)!=1 &&
! whereIsObject(objectNr)!=4)
! error("startScene: Object %d is not in room %d", objectNr, _currentRoom);
getObjectXYPos(objectNr);
putActor(a, _xPos, _yPos, _currentRoom);
--- 545,551 ----
if (a) {
! where = whereIsObject(objectNr);
! if (where != WIO_ROOM && where!=WIO_FLOBJECT)
! error("startScene: Object %d is not in room %d", objectNr, _currentRoom);
getObjectXYPos(objectNr);
putActor(a, _xPos, _yPos, _currentRoom);
Index: scumm.h
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm.h,v
retrieving revision 1.25
retrieving revision 1.26
diff -C2 -d -r1.25 -r1.26
*** scumm.h 2001/11/11 16:54:45 1.25
--- scumm.h 2001/11/12 20:50:36 1.26
***************
*** 204,208 ****
uint16 newfield;
byte status;
! byte type;
byte unk1,unk2,freezeCount,didexec;
byte cutsceneOverride;
--- 204,208 ----
uint16 newfield;
byte status;
! byte where;
byte unk1,unk2,freezeCount,didexec;
byte cutsceneOverride;
***************
*** 212,216 ****
struct NestedScript {
uint16 number;
! uint8 type;
uint8 slot;
};
--- 212,216 ----
struct NestedScript {
uint16 number;
! uint8 where;
uint8 slot;
};
***************
*** 321,327 ****
rtObjectName = 16,
rtLast = 16,
-
rtNumTypes = 17,
};
--- 321,332 ----
rtObjectName = 16,
rtLast = 16,
rtNumTypes = 17,
+ };
+ enum {
+ OF_OWNER_MASK = 0x0F,
+ OF_STATE_MASK = 0xF0,
+ OF_OWNER_ROOM = 0x0F,
+ OF_STATE_SHL = 4
};
***************
*** 603,606 ****
--- 608,620 ----
struct ScummDebugger;
struct Serializer;
+
+ enum WhereIsObject {
+ WIO_NOT_FOUND = -1,
+ WIO_INVENTORY = 0,
+ WIO_ROOM = 1,
+ WIO_GLOBAL = 2,
+ WIO_LOCAL = 3,
+ WIO_FLOBJECT = 4,
+ };
struct Scumm {
Index: script_v2.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/script_v2.cpp,v
retrieving revision 1.9
retrieving revision 1.10
diff -C2 -d -r1.9 -r1.10
*** script_v2.cpp 2001/11/11 16:54:45 1.9
--- script_v2.cpp 2001/11/12 20:50:36 1.10
***************
*** 853,857 ****
if (obj >= 17) {
! if (whereIsObject(obj)==-1)
return;
getObjectXYPos(obj);
--- 853,857 ----
if (obj >= 17) {
! if (whereIsObject(obj)==WIO_NOT_FOUND)
return;
getObjectXYPos(obj);
***************
*** 910,914 ****
a = derefActorSafe(pop(), "o6_putActorAtObject");
! if (whereIsObject(obj)!=-1) {
getObjectXYPos(obj);
x = _xPos;
--- 910,914 ----
a = derefActorSafe(pop(), "o6_putActorAtObject");
! if (whereIsObject(obj)!=WIO_NOT_FOUND) {
getObjectXYPos(obj);
x = _xPos;
Index: script_v1.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/script_v1.cpp,v
retrieving revision 1.11
retrieving revision 1.12
diff -C2 -d -r1.11 -r1.12
*** script_v1.cpp 2001/11/10 23:30:12 1.11
--- script_v1.cpp 2001/11/12 20:50:36 1.12
***************
*** 1202,1206 ****
a = derefActorSafe(getVarOrDirectByte(0x80), "o5_putActorAtObject");
obj = getVarOrDirectWord(0x40);
! if (whereIsObject(obj)!=-1)
getObjectXYPos(obj);
else {
--- 1202,1206 ----
a = derefActorSafe(getVarOrDirectByte(0x80), "o5_putActorAtObject");
obj = getVarOrDirectWord(0x40);
! if (whereIsObject(obj)!=WIO_NOT_FOUND)
getObjectXYPos(obj);
else {
***************
*** 1885,1889 ****
a = derefActorSafe(getVarOrDirectByte(0x80), "o5_walkActorToObject");
obj = getVarOrDirectWord(0x40);
! if (whereIsObject(obj)!=-1) {
getObjectXYPos(obj);
startWalkActor(a, _xPos, _yPos, _dir);
--- 1885,1889 ----
a = derefActorSafe(getVarOrDirectByte(0x80), "o5_walkActorToObject");
obj = getVarOrDirectWord(0x40);
! if (whereIsObject(obj)!=WIO_NOT_FOUND) {
getObjectXYPos(obj);
startWalkActor(a, _xPos, _yPos, _dir);
Index: script.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/script.cpp,v
retrieving revision 1.10
retrieving revision 1.11
diff -C2 -d -r1.10 -r1.11
*** script.cpp 2001/11/09 18:54:14 1.10
--- script.cpp 2001/11/12 20:50:36 1.11
***************
*** 46,50 ****
scriptPtr = getResourceAddress(rtScript, script);
scriptOffs = 8;
! scriptType = 2;
} else {
scriptOffs = _localScriptList[script - _numGlobalScripts];
--- 46,50 ----
scriptPtr = getResourceAddress(rtScript, script);
scriptOffs = 8;
! scriptType = WIO_GLOBAL;
} else {
scriptOffs = _localScriptList[script - _numGlobalScripts];
***************
*** 52,56 ****
error("Local script %d is not in room %d", script, _roomResource);
scriptOffs += 9;
! scriptType = 3;
}
--- 52,56 ----
error("Local script %d is not in room %d", script, _roomResource);
scriptOffs += 9;
! scriptType = WIO_LOCAL;
}
***************
*** 61,65 ****
s->offs = scriptOffs;
s->status = 2;
! s->type = scriptType;
s->unk1 = a;
s->unk2 = b;
--- 61,65 ----
s->offs = scriptOffs;
s->status = 2;
! s->where = scriptType;
s->unk1 = a;
s->unk2 = b;
***************
*** 82,86 ****
for (i=1; i<NUM_SCRIPT_SLOT; i++,ss++) {
! if (script!=ss->number || ss->type!=2 && ss->type!=3 || ss->status==0)
continue;
--- 82,87 ----
for (i=1; i<NUM_SCRIPT_SLOT; i++,ss++) {
! if (script!=ss->number ||
! ss->where!=WIO_GLOBAL && ss->where!=WIO_LOCAL || ss->status==0)
continue;
***************
*** 100,107 ****
do {
! if (nest->number == script && (nest->type==2 || nest->type==3)) {
nest->number = 0xFF;
nest->slot = 0xFF;
! nest->type = 0xFF;
}
} while(nest++,--num);
--- 101,108 ----
do {
! if (nest->number == script && (nest->where==WIO_GLOBAL || nest->where==WIO_LOCAL)) {
nest->number = 0xFF;
nest->slot = 0xFF;
! nest->where = 0xFF;
}
} while(nest++,--num);
***************
*** 119,123 ****
for (i=1; i<NUM_SCRIPT_SLOT; i++,ss++) {
! if (script==ss->number && (ss->type==1 || ss->type==0 || ss->type==4) && ss->status!=0) {
if (ss->cutsceneOverride)
error("Object %d stopped with active cutscene/override", script);
--- 120,125 ----
for (i=1; i<NUM_SCRIPT_SLOT; i++,ss++) {
! if (script==ss->number && (ss->where==WIO_ROOM ||
! ss->where==WIO_INVENTORY || ss->where==WIO_FLOBJECT) && ss->status!=0) {
if (ss->cutsceneOverride)
error("Object %d stopped with active cutscene/override", script);
***************
*** 136,143 ****
do {
! if (nest->number == script && (nest->type==1 || nest->type==4 || nest->type==0)) {
nest->number = 0xFF;
nest->slot = 0xFF;
! nest->type = 0xFF;
}
} while(nest++,--num);
--- 138,147 ----
do {
! if (nest->number == script &&
! (nest->where==WIO_ROOM || nest->where==WIO_FLOBJECT ||
! nest->where==WIO_INVENTORY)) {
nest->number = 0xFF;
nest->slot = 0xFF;
! nest->where = 0xFF;
}
} while(nest++,--num);
***************
*** 166,174 ****
if (_currentScript==0xFF) {
nest->number = 0xFF;
! nest->type = 0xFF;
} else {
slot = &vm.slot[_currentScript];
nest->number = slot->number;
! nest->type = slot->type;
nest->slot = _currentScript;
}
--- 170,178 ----
if (_currentScript==0xFF) {
nest->number = 0xFF;
! nest->where = 0xFF;
} else {
slot = &vm.slot[_currentScript];
nest->number = slot->number;
! nest->where = slot->where;
nest->slot = _currentScript;
}
***************
*** 189,193 ****
if (nest->number != 0xFF) {
slot = &vm.slot[nest->slot];
! if (slot->number == nest->number && slot->type==nest->type &&
slot->status != 0 && slot->freezeCount==0) {
_currentScript = nest->slot;
--- 193,197 ----
if (nest->number != 0xFF) {
slot = &vm.slot[nest->slot];
! if (slot->number == nest->number && slot->where==nest->where &&
slot->status != 0 && slot->freezeCount==0) {
_currentScript = nest->slot;
***************
*** 215,220 ****
ss = &vm.slot[_currentScript];
! switch(ss->type) {
! case 0: /* inventory script **/
index = getObjectIndex(ss->number);
_scriptOrgPointer = getResourceAddress(rtInventory, index);
--- 219,224 ----
ss = &vm.slot[_currentScript];
! switch(ss->where) {
! case WIO_INVENTORY: /* inventory script **/
index = getObjectIndex(ss->number);
_scriptOrgPointer = getResourceAddress(rtInventory, index);
***************
*** 223,237 ****
case 3:
! case 1: /* room script */
_scriptOrgPointer = getResourceAddress(rtRoom, _roomResource);
_lastCodePtr = &_baseRooms[_roomResource];
break;
! case 2: /* global script */
_scriptOrgPointer = getResourceAddress(rtScript, ss->number);
_lastCodePtr = &_baseScripts[ss->number];
break;
! case 4: /* flobject script */
index = getObjectIndex(ss->number);
_scriptOrgPointer = getResourceAddress(rtFlObject,_objs[index].fl_object_index);
--- 227,241 ----
case 3:
! case WIO_ROOM: /* room script */
_scriptOrgPointer = getResourceAddress(rtRoom, _roomResource);
_lastCodePtr = &_baseRooms[_roomResource];
break;
! case WIO_GLOBAL: /* global script */
_scriptOrgPointer = getResourceAddress(rtScript, ss->number);
_lastCodePtr = &_baseScripts[ss->number];
break;
! case WIO_FLOBJECT: /* flobject script */
index = getObjectIndex(ss->number);
_scriptOrgPointer = getResourceAddress(rtFlObject,_objs[index].fl_object_index);
***************
*** 420,424 ****
ss = &vm.slot[_currentScript];
! if (ss->type!=2 && ss->type!=3) {
if (ss->cutsceneOverride)
error("Object %d ending with active cutscene/override", ss->number);
--- 424,428 ----
ss = &vm.slot[_currentScript];
! if (ss->where!=WIO_GLOBAL && ss->where!=WIO_LOCAL) {
if (ss->cutsceneOverride)
error("Object %d ending with active cutscene/override", ss->number);
***************
*** 516,520 ****
vm.slot[slot].status = 2;
vm.slot[slot].number = 10001;
! vm.slot[slot].type = 1;
vm.slot[slot].offs = _EXCD_offs + 8;
vm.slot[slot].unk1 = 0;
--- 520,524 ----
vm.slot[slot].status = 2;
vm.slot[slot].number = 10001;
! vm.slot[slot].where = WIO_ROOM;
vm.slot[slot].offs = _EXCD_offs + 8;
vm.slot[slot].unk1 = 0;
***************
*** 534,538 ****
vm.slot[slot].status = 2;
vm.slot[slot].number = 10002;
! vm.slot[slot].type = 1;
vm.slot[slot].offs = _ENCD_offs + 8;
vm.slot[slot].unk1 = 0;
--- 538,542 ----
vm.slot[slot].status = 2;
vm.slot[slot].number = 10002;
! vm.slot[slot].where = WIO_ROOM;
vm.slot[slot].offs = _ENCD_offs + 8;
vm.slot[slot].unk1 = 0;
***************
*** 552,560 ****
for (i=1; i<NUM_SCRIPT_SLOT; i++,ss++) {
! if (ss->type==1 || ss->type==4) {
if(ss->cutsceneOverride)
error("Object %d stopped with active cutscene/override in exit", ss->number);
ss->status = 0;
! } else if (ss->type==3) {
if(ss->cutsceneOverride)
error("Script %d stopped with active cutscene/override in exit", ss->number);
--- 556,564 ----
for (i=1; i<NUM_SCRIPT_SLOT; i++,ss++) {
! if (ss->where==WIO_ROOM || ss->where==WIO_FLOBJECT) {
if(ss->cutsceneOverride)
error("Object %d stopped with active cutscene/override in exit", ss->number);
ss->status = 0;
! } else if (ss->where==WIO_LOCAL) {
if(ss->cutsceneOverride)
error("Script %d stopped with active cutscene/override in exit", ss->number);
***************
*** 574,578 ****
for (i=0; i<50; i++) {
int j = _newNames[i];
! if (j && (getOwner(j)&0xF) == 0) {
_newNames[i] = 0;
nukeResource(rtObjectName, i);
--- 578,582 ----
for (i=0; i<50; i++) {
int j = _newNames[i];
! if (j && (getOwner(j)&OF_OWNER_MASK) == 0) {
_newNames[i] = 0;
nukeResource(rtObjectName, i);
***************
*** 646,650 ****
where = whereIsObject(object);
! if (where == -1) {
error("Code for object %d not in room %d", object, _roomResource);
}
--- 650,654 ----
where = whereIsObject(object);
! if (where == WIO_NOT_FOUND) {
error("Code for object %d not in room %d", object, _roomResource);
}
***************
*** 660,664 ****
vm.slot[slot].offs = obcd + offs;
vm.slot[slot].status = 2;
! vm.slot[slot].type = where;
vm.slot[slot].unk1 = a;
vm.slot[slot].unk2 = b;
--- 664,668 ----
vm.slot[slot].offs = obcd + offs;
vm.slot[slot].status = 2;
! vm.slot[slot].where = where;
vm.slot[slot].unk1 = a;
vm.slot[slot].unk2 = b;
***************
*** 686,690 ****
int verboffs;
! if (whereIsObject(obj)==-1)
return 0;
--- 690,694 ----
int verboffs;
! if (whereIsObject(obj)==WIO_NOT_FOUND)
return 0;
***************
*** 823,827 ****
ScriptSlot *ss = vm.slot;
for (i=0; i<NUM_SCRIPT_SLOT; i++,ss++)
! if (ss->number==script && (ss->type==2 || ss->type==3) && ss->status)
return 1;
return 0;
--- 827,832 ----
ScriptSlot *ss = vm.slot;
for (i=0; i<NUM_SCRIPT_SLOT; i++,ss++)
! if (ss->number==script && (ss->where==WIO_GLOBAL ||
! ss->where==WIO_LOCAL) && ss->status)
return 1;
return 0;
Index: saveload.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/saveload.cpp,v
retrieving revision 1.13
retrieving revision 1.14
diff -C2 -d -r1.13 -r1.14
*** saveload.cpp 2001/11/10 19:12:32 1.13
--- saveload.cpp 2001/11/12 20:50:36 1.14
***************
*** 387,391 ****
MKLINE(ScriptSlot,newfield,sleUint16),
MKLINE(ScriptSlot,status,sleByte),
! MKLINE(ScriptSlot,type,sleByte),
MKLINE(ScriptSlot,unk1,sleByte),
MKLINE(ScriptSlot,unk2,sleByte),
--- 387,391 ----
MKLINE(ScriptSlot,newfield,sleUint16),
MKLINE(ScriptSlot,status,sleByte),
! MKLINE(ScriptSlot,where,sleByte),
MKLINE(ScriptSlot,unk1,sleByte),
MKLINE(ScriptSlot,unk2,sleByte),
***************
*** 399,403 ****
const SaveLoadEntry nestedScriptEntries[] = {
MKLINE(NestedScript,number,sleUint16),
! MKLINE(NestedScript,type,sleByte),
MKLINE(NestedScript,slot,sleByte),
MKEND()
--- 399,403 ----
const SaveLoadEntry nestedScriptEntries[] = {
MKLINE(NestedScript,number,sleUint16),
! MKLINE(NestedScript,where,sleByte),
MKLINE(NestedScript,slot,sleByte),
MKEND()
Index: object.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/object.cpp,v
retrieving revision 1.13
retrieving revision 1.14
diff -C2 -d -r1.13 -r1.14
*** object.cpp 2001/11/11 16:54:45 1.13
--- object.cpp 2001/11/12 20:50:36 1.14
***************
*** 46,50 ****
int Scumm::getOwner(int obj) {
checkRange(_numGlobalObjects-1, 0, obj, "Object %d out of range in getOwner");
! return _objectFlagTable[obj]&0xF;
}
--- 46,50 ----
int Scumm::getOwner(int obj) {
checkRange(_numGlobalObjects-1, 0, obj, "Object %d out of range in getOwner");
! return _objectFlagTable[obj]&OF_OWNER_MASK;
}
***************
*** 52,56 ****
checkRange(_numGlobalObjects-1, 0, act, "Object %d out of range in putOwner");
checkRange(15, 0, owner, "Owner %d out of range in putOwner");
! _objectFlagTable[act] = (_objectFlagTable[act]&0xF0) | owner;
}
--- 52,56 ----
checkRange(_numGlobalObjects-1, 0, act, "Object %d out of range in putOwner");
checkRange(15, 0, owner, "Owner %d out of range in putOwner");
! _objectFlagTable[act] = (_objectFlagTable[act]&~OF_OWNER_MASK) | owner;
}
***************
*** 63,67 ****
checkRange(_numGlobalObjects-1, 0, act, "Object %d out of range in putState");
checkRange(15, 0, state, "State %d out of range in putState");
! _objectFlagTable[act] = (_objectFlagTable[act]&0x0F) | (state<<4);
}
--- 63,68 ----
checkRange(_numGlobalObjects-1, 0, act, "Object %d out of range in putState");
checkRange(15, 0, state, "State %d out of range in putState");
! _objectFlagTable[act] = (_objectFlagTable[act]&~OF_STATE_MASK) |
! (state<<OF_STATE_SHL);
}
***************
*** 69,73 ****
int i;
! if ((_objectFlagTable[object]&0xF)!=0xF) {
for (i=0; i<_maxInventoryItems; i++)
if (_inventory[i] == object)
--- 70,74 ----
int i;
! if ((_objectFlagTable[object]&OF_OWNER_MASK)!=OF_OWNER_ROOM) {
for (i=0; i<_maxInventoryItems; i++)
if (_inventory[i] == object)
***************
*** 87,97 ****
if (object >= _numGlobalObjects)
! return -1;
! if ((_objectFlagTable[object]&0xF)!=0xF) {
for (i=0; i<_maxInventoryItems; i++)
if (_inventory[i] == object)
! return 0;
! return -1;
}
--- 88,98 ----
if (object >= _numGlobalObjects)
! return WIO_NOT_FOUND;
! if ((_objectFlagTable[object]&OF_OWNER_MASK)!=OF_OWNER_ROOM) {
for (i=0; i<_maxInventoryItems; i++)
if (_inventory[i] == object)
! return WIO_INVENTORY;
! return WIO_NOT_FOUND;
}
***************
*** 99,106 ****
if (_objs[i].obj_nr == object) {
if (_objs[i].fl_object_index)
! return 4;
! return 1;
}
! return -1;
}
--- 100,107 ----
if (_objs[i].obj_nr == object) {
if (_objs[i].fl_object_index)
! return WIO_FLOBJECT;
! return WIO_ROOM;
}
! return WIO_NOT_FOUND;
}
***************
*** 110,117 ****
}
switch(whereIsObject(object)) {
! case -1:
return -1;
! case 0:
! return getActorXYPos(derefActorSafe(_objectFlagTable[object]&0xF,"getObjectOrActorXY(2)"));
}
getObjectXYPos(object);
--- 111,118 ----
}
switch(whereIsObject(object)) {
! case WIO_NOT_FOUND:
return -1;
! case WIO_INVENTORY:
! return getActorXYPos(derefActorSafe(_objectFlagTable[object]&OF_OWNER_MASK,"getObjectOrActorXY(2)"));
}
getObjectXYPos(object);
***************
*** 209,213 ****
break;
}
! } while ( (_objs[b].ownerstate&0xF0) == a);
}
return 0;
--- 210,214 ----
break;
}
! } while ( (_objs[b].ownerstate&OF_STATE_MASK) == a);
}
return 0;
***************
*** 224,228 ****
do {
od = &_objs[num];
! if (!od->obj_nr || !(od->ownerstate&0xF0))
continue;
--- 225,229 ----
do {
od = &_objs[num];
! if (!od->obj_nr || !(od->ownerstate&OF_STATE_MASK))
continue;
***************
*** 234,238 ****
}
od = &_objs[od->parent];
! } while ((od->ownerstate & 0xF0)==a);
} while (--num);
--- 235,239 ----
}
od = &_objs[od->parent];
! } while ((od->ownerstate & OF_STATE_MASK)==a);
} while (--num);
***************
*** 388,392 ****
od->parentstate = 1<<4;
} else {
! od->parentstate = (cdhd->v6.flags&0xF)<<4;
}
od->parent = cdhd->v6.parent;
--- 389,393 ----
od->parentstate = 1<<4;
} else {
! od->parentstate = (cdhd->v6.flags&0xF)<<OF_STATE_SHL;
}
od->parent = cdhd->v6.parent;
***************
*** 400,404 ****
od->parentstate = 1<<4;
} else {
! od->parentstate = (cdhd->v5.flags&0xF)<<4;
}
od->parent = cdhd->v5.parent;
--- 401,405 ----
od->parentstate = 1<<4;
} else {
! od->parentstate = (cdhd->v5.flags&0xF)<<OF_STATE_SHL;
}
od->parent = cdhd->v5.parent;
***************
*** 438,442 ****
stopObjectScript(obj);
! if (getOwner(obj)==0xF) {
i = 0;
do {
--- 439,443 ----
stopObjectScript(obj);
! if (getOwner(obj)==OF_OWNER_ROOM) {
i = 0;
do {
***************
*** 454,458 ****
if (_inventory[i] == obj) {
j = whereIsObject(obj);
! if (j==0) {
nukeResource(rtInventory, i);
_inventory[i] = 0;
--- 455,459 ----
if (_inventory[i] == obj) {
j = whereIsObject(obj);
! if (j==WIO_INVENTORY) {
nukeResource(rtInventory, i);
_inventory[i] = 0;
***************
*** 519,523 ****
int i;
! if ((_objectFlagTable[object]&0xF)!=0xF)
return 0;
for (i=_numObjectsInRoom; i>0; i--) {
--- 520,524 ----
int i;
! if ((_objectFlagTable[object]&OF_OWNER_MASK)!=OF_OWNER_ROOM)
return 0;
for (i=_numObjectsInRoom; i>0; i--) {
***************
*** 534,538 ****
int i;
! if ((_objectFlagTable[obj]&0xF)!=0xF) {
for(i=0; i<_maxInventoryItems; i++) {
if (_inventory[i] == obj)
--- 535,539 ----
int i;
! if ((_objectFlagTable[obj]&OF_OWNER_MASK)!=OF_OWNER_ROOM) {
for(i=0; i<_maxInventoryItems; i++) {
if (_inventory[i] == obj)
***************
*** 564,568 ****
CHECK_HEAP
! if (whereIsObject(obj)==4) {
i = getObjectIndex(obj);
ptr = getResourceAddress(rtFlObject, _objs[i].fl_object_index) + 64;
--- 565,569 ----
CHECK_HEAP
! if (whereIsObject(obj)==WIO_FLOBJECT) {
i = getObjectIndex(obj);
ptr = getResourceAddress(rtFlObject, _objs[i].fl_object_index) + 64;
***************
*** 620,624 ****
clearOwnerOf(obj);
ss = &vm.slot[_currentScript];
! if (ss->type==0 && _inventory[ss->number]==obj) {
putOwner(obj, 0);
runHook(0);
--- 621,625 ----
clearOwnerOf(obj);
ss = &vm.slot[_currentScript];
! if (ss->where==WIO_INVENTORY && _inventory[ss->number]==obj) {
putOwner(obj, 0);
runHook(0);
***************
*** 635,639 ****
return derefActorSafe(obj,"getObjX")->x;
} else {
! if (whereIsObject(obj)==-1)
return -1;
getObjectOrActorXY(obj);
--- 636,640 ----
return derefActorSafe(obj,"getObjX")->x;
} else {
! if (whereIsObject(obj)==WIO_NOT_FOUND)
return -1;
getObjectOrActorXY(obj);
***************
*** 646,650 ****
return derefActorSafe(obj,"getObjY")->y;
} else {
! if (whereIsObject(obj)==-1)
return -1;
getObjectOrActorXY(obj);
--- 647,651 ----
return derefActorSafe(obj,"getObjY")->y;
} else {
! if (whereIsObject(obj)==WIO_NOT_FOUND)
return -1;
getObjectOrActorXY(obj);
Index: debug.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/debug.cpp,v
retrieving revision 1.7
retrieving revision 1.8
diff -C2 -d -r1.7 -r1.8
*** debug.cpp 2001/11/10 19:12:32 1.7
--- debug.cpp 2001/11/12 20:50:36 1.8
***************
*** 188,192 ****
if (ss->number) {
printf("|%2d|%3d|%3d|%3d|%3d|%3d|%2d|%3d|%3d|\n",
! i, ss->number, ss->status, ss->type, ss->unk1, ss->unk2, ss->freezeCount, ss->cutsceneOverride, ss->unk5);
}
}
--- 188,192 ----
if (ss->number) {
printf("|%2d|%3d|%3d|%3d|%3d|%3d|%2d|%3d|%3d|\n",
! i, ss->number, ss->status, ss->where, ss->unk1, ss->unk2, ss->freezeCount, ss->cutsceneOverride, ss->unk5);
}
}
More information about the Scummvm-git-logs
mailing list