[Scummvm-cvs-logs] SF.net SVN: scummvm:[33273] scummvm/trunk/engines/parallaction
peres001 at users.sourceforge.net
peres001 at users.sourceforge.net
Fri Jul 25 10:27:45 CEST 2008
Revision: 33273
http://scummvm.svn.sourceforge.net/scummvm/?rev=33273&view=rev
Author: peres001
Date: 2008-07-25 08:27:44 +0000 (Fri, 25 Jul 2008)
Log Message:
-----------
Made character visible in BRA.
Modified Paths:
--------------
scummvm/trunk/engines/parallaction/gui_br.cpp
scummvm/trunk/engines/parallaction/parallaction_br.cpp
Modified: scummvm/trunk/engines/parallaction/gui_br.cpp
===================================================================
--- scummvm/trunk/engines/parallaction/gui_br.cpp 2008-07-25 06:35:02 UTC (rev 33272)
+++ scummvm/trunk/engines/parallaction/gui_br.cpp 2008-07-25 08:27:44 UTC (rev 33273)
@@ -283,6 +283,8 @@
delete _menuHelper;
_menuHelper = 0;
+
+ _input->_inputMode = Input::kInputModeGame;
}
Modified: scummvm/trunk/engines/parallaction/parallaction_br.cpp
===================================================================
--- scummvm/trunk/engines/parallaction/parallaction_br.cpp 2008-07-25 06:35:02 UTC (rev 33272)
+++ scummvm/trunk/engines/parallaction/parallaction_br.cpp 2008-07-25 08:27:44 UTC (rev 33273)
@@ -232,7 +232,7 @@
// free open location stuff
clearSubtitles();
freeBackground();
- _gfx->clearGfxObjects(kGfxObjNormal | kGfxObjCharacter);
+ _gfx->clearGfxObjects(kGfxObjNormal);
_location._programs.clear();
_location._animations.remove(_char._ani);
@@ -244,12 +244,17 @@
// free(_location._comment);
// _location._comment = 0;
-// _location._commands.clear();
-// _location._aCommands.clear();
+ _location._commands.clear();
+ _location._aCommands.clear();
-
// load new location
parseLocation(location);
+
+ // kFlagsRemove is cleared because the character defaults to visible on new locations
+ // script command can hide the character, anyway, so that's why the flag is cleared
+ // before _location._commands are executed
+ _char._ani->_flags &= ~kFlagsRemove;
+
_cmdExec->run(_location._commands);
// doLocationEnterTransition();
_cmdExec->run(_location._aCommands);
@@ -301,17 +306,19 @@
void Parallaction_br::changeCharacter(const char *name) {
- printf("changeCharacter(%s)\n", name);
+ const char *charName = _char.getName();
- const char *charName = _char.getName();
- if (!scumm_stricmp(charName, name)) {
- return;
+ if (scumm_stricmp(charName, name)) {
+ debugC(1, kDebugExec, "changeCharacter(%s)", name);
+
+ _char.setName(name);
+ _char._ani->gfxobj = _gfx->loadAnim(name);
+ _char._ani->gfxobj->setFlags(kGfxObjCharacter);
+ _char._ani->gfxobj->clearFlags(kGfxObjNormal);
+ _char._talk = _disk->loadTalk(name);
}
- _char.setName(name);
- _char._ani->gfxobj = _gfx->loadAnim(name);
- _char._ani->gfxobj->setFlags(kGfxObjCharacter);
- _char._talk = _disk->loadTalk(name);
+ _char._ani->_flags |= kFlagsActive;
}
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