[Scummvm-cvs-logs] CVS: scummvm/scumm intern.h,2.219,2.220 object.cpp,1.181,1.182 script_v6he.cpp,2.112,2.113 script_v80he.cpp,2.1,2.2 scumm.h,1.470,1.471
Travis Howell
kirben at users.sourceforge.net
Sun Sep 5 18:11:12 CEST 2004
- Previous message: [Scummvm-cvs-logs] CVS: scummvm/scumm script_v6he.cpp,2.111,2.112 script_v72he.cpp,2.52,2.53
- Next message: [Scummvm-cvs-logs] CVS: scummvm/scumm intern.h,2.220,2.221 script_v72he.cpp,2.53,2.54 script_v90he.cpp,2.1,2.2
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
Update of /cvsroot/scummvm/scummvm/scumm
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv12303/scumm
Modified Files:
intern.h object.cpp script_v6he.cpp script_v80he.cpp scumm.h
Log Message:
HE 72+ games use a remove object from queue function.
Index: intern.h
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/intern.h,v
retrieving revision 2.219
retrieving revision 2.220
diff -u -d -r2.219 -r2.220
--- intern.h 6 Sep 2004 00:58:40 -0000 2.219
+++ intern.h 6 Sep 2004 01:10:30 -0000 2.220
@@ -778,6 +778,7 @@
virtual const char *getOpcodeDesc(byte i);
/* HE version 80 script opcodes */
+ void o80_setState();
};
class ScummEngine_v90he : public ScummEngine_v80he {
Index: object.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/object.cpp,v
retrieving revision 1.181
retrieving revision 1.182
diff -u -d -r1.181 -r1.182
--- object.cpp 5 Sep 2004 17:39:53 -0000 1.181
+++ object.cpp 6 Sep 2004 01:10:30 -0000 1.182
@@ -851,6 +851,17 @@
_drawObjectQue[_drawObjectQueNr++] = object;
}
+void ScummEngine::removeObjectFromDrawQue(int object) {
+ if (_drawObjectQue <= 0)
+ return;
+
+ int i;
+ for (i = 0; i < _drawObjectQueNr; i++) {
+ if (_drawObjectQue[i] = object)
+ _drawObjectQue[i] = 0;
+ }
+}
+
void ScummEngine::clearDrawObjectQueue() {
_drawObjectQueNr = 0;
}
Index: script_v6he.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/script_v6he.cpp,v
retrieving revision 2.112
retrieving revision 2.113
diff -u -d -r2.112 -r2.113
--- script_v6he.cpp 6 Sep 2004 01:00:18 -0000 2.112
+++ script_v6he.cpp 6 Sep 2004 01:10:31 -0000 2.113
@@ -391,6 +391,8 @@
if (state & 0x8000) {
state = state & 0x7F00;
putState(obj, state);
+ if (_heversion >= 72)
+ removeObjectFromDrawQue(obj);
return;
}
Index: script_v80he.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/script_v80he.cpp,v
retrieving revision 2.1
retrieving revision 2.2
diff -u -d -r2.1 -r2.2
--- script_v80he.cpp 6 Sep 2004 00:58:40 -0000 2.1
+++ script_v80he.cpp 6 Sep 2004 01:10:31 -0000 2.2
@@ -185,7 +185,7 @@
OPCODE(o6_setClass),
OPCODE(o6_getState),
/* 70 */
- OPCODE(o6_setState),
+ OPCODE(o80_setState),
OPCODE(o6_setOwner),
OPCODE(o6_getOwner),
OPCODE(o6_jump),
@@ -378,4 +378,13 @@
return _opcodesV80he[i].desc;
}
+void ScummEngine_v80he::o80_setState() {
+ int state = pop();
+ int obj = pop();
+
+ state = state & 0x7F00;
+ putState(obj, state);
+ removeObjectFromDrawQue(obj);
+}
+
} // End of namespace Scumm
Index: scumm.h
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/scumm.h,v
retrieving revision 1.470
retrieving revision 1.471
diff -u -d -r1.470 -r1.471
--- scumm.h 5 Sep 2004 15:44:29 -0000 1.470
+++ scumm.h 6 Sep 2004 01:10:31 -0000 1.471
@@ -758,6 +758,7 @@
void setObjectName(int obj);
void addObjectToDrawQue(int object);
+ void removeObjectFromDrawQue(int object);
void clearDrawObjectQueue();
void processDrawQue();
- Previous message: [Scummvm-cvs-logs] CVS: scummvm/scumm script_v6he.cpp,2.111,2.112 script_v72he.cpp,2.52,2.53
- Next message: [Scummvm-cvs-logs] CVS: scummvm/scumm intern.h,2.220,2.221 script_v72he.cpp,2.53,2.54 script_v90he.cpp,2.1,2.2
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
More information about the Scummvm-git-logs
mailing list