[Scummvm-cvs-logs] SF.net SVN: scummvm: [31494] scummvm/trunk/engines/kyra/sequences_v2.cpp
athrxx at users.sourceforge.net
athrxx at users.sourceforge.net
Sun Apr 13 01:55:26 CEST 2008
Revision: 31494
http://scummvm.svn.sourceforge.net/scummvm/?rev=31494&view=rev
Author: athrxx
Date: 2008-04-12 16:55:26 -0700 (Sat, 12 Apr 2008)
Log Message:
-----------
fix crash and graphic glitch in non-playable HOF demo
Modified Paths:
--------------
scummvm/trunk/engines/kyra/sequences_v2.cpp
Modified: scummvm/trunk/engines/kyra/sequences_v2.cpp
===================================================================
--- scummvm/trunk/engines/kyra/sequences_v2.cpp 2008-04-12 23:54:09 UTC (rev 31493)
+++ scummvm/trunk/engines/kyra/sequences_v2.cpp 2008-04-12 23:55:26 UTC (rev 31494)
@@ -2557,12 +2557,10 @@
if (dstH > 0) {
for (int i = 0; i < 4; i++) {
- int p = _screen->setCurPage(4);
const ItemAnimData_v1 *def = &_demoAnimData[i];
ActiveItemAnim *a = &_activeItemAnim[i];
- _screen->drawBox(12, def->y - 8, 28, def->y + 8, 0);
- _screen->setCurPage(p);
+ _screen->fillRect(12, def->y - 8, 28, def->y + 8, 0, 4);
_screen->drawShape(4, _defaultShapeTable[def->itemIndex + def->frames[a->currentFrame]], 12, def->y - 8, 0, 0);
if(_seqFrameCounter % 2 == 0)
a->currentFrame = ++a->currentFrame % 20;
@@ -2635,16 +2633,17 @@
numShp++;
_defaultShapeTable[numShp] = _screen->getPtrToShape(_newShapeFiledata, numShp);
} while (_defaultShapeTable[numShp]);
+ _menu = 0;
+ } else {
+ MainMenu::StaticData data = {
+ { _sequenceStrings[97], _sequenceStrings[96], _sequenceStrings[95], _sequenceStrings[98] },
+ { 0x01, 0x04, 0x0C, 0x04, 0x00, 0xd7, 0xd6, 0x00, 0x01, 0x02, 0x03 },
+ { 0xd8, 0xda, 0xd9, 0xd8 },
+ 0xd7, 0xd6
+ };
+ _menu = new MainMenu(this);
+ _menu->init(data, MainMenu::Animation());
}
-
- MainMenu::StaticData data = {
- { _sequenceStrings[97], _sequenceStrings[96], _sequenceStrings[95], _sequenceStrings[98] },
- { 0x01, 0x04, 0x0C, 0x04, 0x00, 0xd7, 0xd6, 0x00, 0x01, 0x02, 0x03 },
- { 0xd8, 0xda, 0xd9, 0xd8 },
- 0xd7, 0xd6
- };
- _menu = new MainMenu(this);
- _menu->init(data, MainMenu::Animation());
}
void KyraEngine_v2::seq_uninit() {
@@ -2668,8 +2667,10 @@
memset(&_defaultShapeTable, 0, sizeof(_defaultShapeTable));
- delete _menu;
- _menu = 0;
+ if (_menu) {
+ delete _menu;
+ _menu = 0;
+ }
}
#pragma mark -
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