[Scummvm-cvs-logs] SF.net SVN: scummvm:[49595] scummvm/trunk/engines/m4
dreammaster at users.sourceforge.net
dreammaster at users.sourceforge.net
Fri Jun 11 13:03:51 CEST 2010
Revision: 49595
http://scummvm.svn.sourceforge.net/scummvm/?rev=49595&view=rev
Author: dreammaster
Date: 2010-06-11 11:03:51 +0000 (Fri, 11 Jun 2010)
Log Message:
-----------
Clarified various incorrectly named parameters, and fixed code for loading the correct art file backgrounds when running animation sequences
Modified Paths:
--------------
scummvm/trunk/engines/m4/animation.cpp
scummvm/trunk/engines/m4/animation.h
scummvm/trunk/engines/m4/mads_anim.cpp
scummvm/trunk/engines/m4/mads_anim.h
scummvm/trunk/engines/m4/mads_scene.cpp
scummvm/trunk/engines/m4/mads_views.h
Modified: scummvm/trunk/engines/m4/animation.cpp
===================================================================
--- scummvm/trunk/engines/m4/animation.cpp 2010-06-11 10:54:49 UTC (rev 49594)
+++ scummvm/trunk/engines/m4/animation.cpp 2010-06-11 11:03:51 UTC (rev 49595)
@@ -63,7 +63,7 @@
/**
* Initialises and loads the data of an animation
*/
-void MadsAnimation::initialise(const Common::String &filename, uint16 flags, M4Surface *interfaceSurface, M4Surface *sceneSurface) {
+void MadsAnimation::initialise(const Common::String &filename, uint16 flags, M4Surface *surface, M4Surface *depthSurface) {
MadsPack anim(filename.c_str(), _vm);
bool madsRes = filename[0] == '*';
char buffer[20];
@@ -114,7 +114,7 @@
if (_animMode == 4)
flags |= 0x4000;
if (flags & 0x100)
- loadInterface(interfaceSurface, sceneSurface);
+ loadInterface(surface, depthSurface);
// Initialise the reference list
for (int i = 0; i < spriteListCount; ++i)
Modified: scummvm/trunk/engines/m4/animation.h
===================================================================
--- scummvm/trunk/engines/m4/animation.h 2010-06-11 10:54:49 UTC (rev 49594)
+++ scummvm/trunk/engines/m4/animation.h 2010-06-11 11:03:51 UTC (rev 49595)
@@ -108,7 +108,7 @@
MadsAnimation(MadsM4Engine *vm, MadsView *view);
virtual ~MadsAnimation();
- virtual void initialise(const Common::String &filename, uint16 flags, M4Surface *interfaceSurface, M4Surface *sceneSurface);
+ virtual void initialise(const Common::String &filename, uint16 flags, M4Surface *surface, M4Surface *depthSurface);
virtual void load(const Common::String &filename, int abortTimers);
virtual void update();
virtual void setCurrentFrame(int frameNumber);
Modified: scummvm/trunk/engines/m4/mads_anim.cpp
===================================================================
--- scummvm/trunk/engines/m4/mads_anim.cpp 2010-06-11 10:54:49 UTC (rev 49594)
+++ scummvm/trunk/engines/m4/mads_anim.cpp 2010-06-11 11:03:51 UTC (rev 49595)
@@ -458,6 +458,8 @@
_previousUpdate = 0;
_transition = kTransitionNone;
_activeAnimation = NULL;
+ _bgLoadFlag = true;
+
reset();
// Set up system palette colors
@@ -572,13 +574,13 @@
if (strchr(_currentLine, '.') == NULL)
strcat(_currentLine, ".aa");
+ uint16 flags = 0;
+ if (_bgLoadFlag)
+ flags |= 0x100;
+
_activeAnimation = new MadsAnimation(_vm, this);
- _activeAnimation->load(_currentLine, 0);
+ _activeAnimation->initialise(_currentLine, flags, &_backgroundSurface, &_codeSurface);
- _backgroundSurface.loadBackground(_activeAnimation->roomNumber());
- _codeSurface.setSize(_backgroundSurface.width(), _backgroundSurface.height());
- _codeSurface.fillRect(_codeSurface.bounds(), 0xff);
-
_spriteSlots.fullRefresh();
/*
// Handle scene transition
@@ -675,7 +677,10 @@
str_upper(commandStr);
char *param = commandStr;
- if (!strncmp(commandStr, "X", 1)) {
+ if (!strncmp(commandStr, "B", 1)) {
+ // Toggle background load flag
+ _bgLoadFlag = !_bgLoadFlag;
+ } else if (!strncmp(commandStr, "X", 1)) {
//printf("X ");
} else if (!strncmp(commandStr, "W", 1)) {
//printf("W ");
Modified: scummvm/trunk/engines/m4/mads_anim.h
===================================================================
--- scummvm/trunk/engines/m4/mads_anim.h 2010-06-11 10:54:49 UTC (rev 49594)
+++ scummvm/trunk/engines/m4/mads_anim.h 2010-06-11 11:03:51 UTC (rev 49595)
@@ -90,6 +90,7 @@
RGBList *_palData;
int _transition;
MadsAnimation *_activeAnimation;
+ bool _bgLoadFlag;
void reset();
void readNextCommand();
Modified: scummvm/trunk/engines/m4/mads_scene.cpp
===================================================================
--- scummvm/trunk/engines/m4/mads_scene.cpp 2010-06-11 10:54:49 UTC (rev 49594)
+++ scummvm/trunk/engines/m4/mads_scene.cpp 2010-06-11 11:03:51 UTC (rev 49595)
@@ -720,7 +720,7 @@
_vm->_resourceManager->toss(sceneName);
// Load the surface artwork
- surface->loadBackground(sceneNumber);
+ surface->loadBackground(artFileNum);
// Final cleanup
if (ssFlag)
Modified: scummvm/trunk/engines/m4/mads_views.h
===================================================================
--- scummvm/trunk/engines/m4/mads_views.h 2010-06-11 10:54:49 UTC (rev 49594)
+++ scummvm/trunk/engines/m4/mads_views.h 2010-06-11 11:03:51 UTC (rev 49595)
@@ -367,7 +367,7 @@
public:
Animation(MadsM4Engine *vm);
virtual ~Animation();
- virtual void initialise(const Common::String &filename, uint16 flags, M4Surface *walkSurface, M4Surface *sceneSurface) = 0;
+ virtual void initialise(const Common::String &filename, uint16 flags, M4Surface *surface, M4Surface *depthSurface) = 0;
virtual void load(const Common::String &filename, int v0) = 0;
virtual void update() = 0;
virtual void setCurrentFrame(int frameNumber) = 0;
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
More information about the Scummvm-git-logs
mailing list