[Scummvm-cvs-logs] CVS: scummvm/scumm actor.cpp,1.229.2.4,1.229.2.5 actor.h,1.51,1.51.2.1 base-costume.cpp,2.11,2.11.2.1 base-costume.h,1.18.2.1,1.18.2.2 script_v6he.cpp,2.15.2.3,2.15.2.4
Travis Howell
kirben at users.sourceforge.net
Tue Jun 29 04:12:00 CEST 2004
- Previous message: [Scummvm-cvs-logs] CVS: scummvm/scumm actor.cpp,1.246,1.247 actor.h,1.53,1.54 base-costume.cpp,2.12,2.13 base-costume.h,1.20,1.21 script_v6.cpp,1.347,1.348 script_v6he.cpp,2.72,2.73
- Next message: [Scummvm-cvs-logs] CVS: scummvm/common md5.cpp,1.3,1.4 md5.h,1.3,1.4
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
Update of /cvsroot/scummvm/scummvm/scumm
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv22739/scumm
Modified Files:
Tag: branch-0-6-0
actor.cpp actor.h base-costume.cpp base-costume.h
script_v6he.cpp
Log Message:
Back port actorOps case 218/219 fixes for HE games
Index: actor.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/actor.cpp,v
retrieving revision 1.229.2.4
retrieving revision 1.229.2.5
diff -u -d -r1.229.2.4 -r1.229.2.5
--- actor.cpp 11 Apr 2004 20:56:41 -0000 1.229.2.4
+++ actor.cpp 29 Jun 2004 11:11:30 -0000 1.229.2.5
@@ -56,6 +56,7 @@
walkbox = 0;
animProgress = 0;
skipLimb = false;
+ actorDrawVirScr = false;
memset(animVariable, 0, sizeof(animVariable));
memset(palette, 0, sizeof(palette));
memset(sound, 0, sizeof(sound));
@@ -1014,6 +1015,7 @@
bcr->_draw_bottom = bottom = 0;
bcr->_skipLimb = (skipLimb != 0);
+ bcr->_actorDrawVirScr = (actorDrawVirScr != 0);
// If the actor is partially hidden, redraw it next frame.
// Only done for pre-AKOS, though.
Index: actor.h
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/actor.h,v
retrieving revision 1.51
retrieving revision 1.51.2.1
diff -u -d -r1.51 -r1.51.2.1
--- actor.h 9 Feb 2004 08:05:23 -0000 1.51
+++ actor.h 29 Jun 2004 11:11:30 -0000 1.51.2.1
@@ -107,6 +107,7 @@
uint16 talkScript, walkScript;
bool ignoreTurns;
bool skipLimb;
+ bool actorDrawVirScr;
int8 layer;
uint16 sound[8];
CostumeData cost;
Index: base-costume.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/base-costume.cpp,v
retrieving revision 2.11
retrieving revision 2.11.2.1
diff -u -d -r2.11 -r2.11.2.1
--- base-costume.cpp 6 Jan 2004 12:45:29 -0000 2.11
+++ base-costume.cpp 29 Jun 2004 11:11:30 -0000 2.11.2.1
@@ -29,7 +29,10 @@
int i;
byte result = 0;
- _outptr = vs.screenPtr + vs.xstart;
+ if (_actorDrawVirScr)
+ _outptr = _vm->getResourceAddress(rtBuffer, 5) + vs.xstart;
+ else
+ _outptr = vs.screenPtr + vs.xstart;
_outwidth = vs.width;
_outheight = vs.height;
_numStrips = vs.width / 8;
Index: base-costume.h
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/base-costume.h,v
retrieving revision 1.18.2.1
retrieving revision 1.18.2.2
diff -u -d -r1.18.2.1 -r1.18.2.2
--- base-costume.h 10 Apr 2004 18:14:56 -0000 1.18.2.1
+++ base-costume.h 29 Jun 2004 11:11:30 -0000 1.18.2.2
@@ -62,6 +62,7 @@
int _draw_top, _draw_bottom;
bool _skipLimb;
+ bool _actorDrawVirScr;
protected:
@@ -116,6 +117,7 @@
_mirror = false;
_width = _height = 0;
_skipLimb = 0;
+ _actorDrawVirScr = 0;
_outptr = 0;
Index: script_v6he.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/script_v6he.cpp,v
retrieving revision 2.15.2.3
retrieving revision 2.15.2.4
diff -u -d -r2.15.2.3 -r2.15.2.4
--- script_v6he.cpp 20 Jun 2004 14:43:22 -0000 2.15.2.3
+++ script_v6he.cpp 29 Jun 2004 11:11:30 -0000 2.15.2.4
@@ -664,14 +664,12 @@
break;
case 218:
{
- // TODO: this opcode is used in the putt-putt fun pack, in 'checkers" mini game
-
int top_actor = a->top;
int bottom_actor = a->bottom;
- a->forceClip = 1;
+ a->actorDrawVirScr = 1;
a->needRedraw = true;
a->drawActorCostume();
- a->forceClip = 0;
+ a->actorDrawVirScr = 0;
a->needRedraw = true;
a->drawActorCostume();
a->needRedraw = false;
@@ -681,10 +679,13 @@
if (a->bottom < bottom_actor)
a->bottom = bottom_actor;
- //FIXME Trigger redraw
- a->bottom = top_actor;
}
break;
+ case 219:
+ a->actorDrawVirScr = false;
+ a->needRedraw = true;
+ a->needBgReset = true;
+ break;
default:
error("o6_actorOps: default case %d", b);
}
@@ -981,10 +982,7 @@
int vs = 0; // XXX = gdi_virtScreen;
for (int j = y1; j <= y2; ++j) {
- // FIXME - to match the disassembly, we should save buffer (vs + 5),
- // but if we do that, then the cake decoration in Fatty Bear's Birthday
- // Surprise is not saved at all
- uint8 *p = getResourceAddress(rtBuffer, vs + 1);
+ uint8 *p = getResourceAddress(rtBuffer, vs + 5);
p += virtscr[kMainVirtScreen].xstart;
p += (j - virtscr[kMainVirtScreen].topline) * 320 + x1;
- Previous message: [Scummvm-cvs-logs] CVS: scummvm/scumm actor.cpp,1.246,1.247 actor.h,1.53,1.54 base-costume.cpp,2.12,2.13 base-costume.h,1.20,1.21 script_v6.cpp,1.347,1.348 script_v6he.cpp,2.72,2.73
- Next message: [Scummvm-cvs-logs] CVS: scummvm/common md5.cpp,1.3,1.4 md5.h,1.3,1.4
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
More information about the Scummvm-git-logs
mailing list