[Scummvm-cvs-logs] SF.net SVN: scummvm:[44036] scummvm/trunk/engines/kyra

athrxx at users.sourceforge.net athrxx at users.sourceforge.net
Fri Sep 11 23:15:48 CEST 2009


Revision: 44036
          http://scummvm.svn.sourceforge.net/scummvm/?rev=44036&view=rev
Author:   athrxx
Date:     2009-09-11 21:15:48 +0000 (Fri, 11 Sep 2009)

Log Message:
-----------
LOL: add missing opcode

Modified Paths:
--------------
    scummvm/trunk/engines/kyra/lol.cpp
    scummvm/trunk/engines/kyra/lol.h
    scummvm/trunk/engines/kyra/scene_lol.cpp
    scummvm/trunk/engines/kyra/screen_lol.cpp
    scummvm/trunk/engines/kyra/script_lol.cpp

Modified: scummvm/trunk/engines/kyra/lol.cpp
===================================================================
--- scummvm/trunk/engines/kyra/lol.cpp	2009-09-11 18:13:27 UTC (rev 44035)
+++ scummvm/trunk/engines/kyra/lol.cpp	2009-09-11 21:15:48 UTC (rev 44036)
@@ -1718,6 +1718,20 @@
 	dst.copy(src, 128);
 }
 
+void LoLEngine::createGfxTables() {
+	if (_flags.isTalkie || _loadSuppFilesFlag)
+		return;
+
+	Palette tpal(768);
+	_screen->loadPalette("fxpal.col", tpal);
+	_screen->loadBitmap("fxpal.shp", 3, 3, 0);
+	const uint8 *shpPal = _screen->getPtrToShape(_screen->getCPagePtr(2), 0) + 11;
+
+	_screen->generateTruelightTables(shpPal, 20, tpal, _screen->getPalette(1), _trueLightTable1, _trueLightTable2, 70);
+
+	_loadSuppFilesFlag = 1;
+}
+
 void LoLEngine::updateSequenceBackgroundAnimations() {
 	if (_updateFlags & 8)
 		return;

Modified: scummvm/trunk/engines/kyra/lol.h
===================================================================
--- scummvm/trunk/engines/kyra/lol.h	2009-09-11 18:13:27 UTC (rev 44035)
+++ scummvm/trunk/engines/kyra/lol.h	2009-09-11 21:15:48 UTC (rev 44036)
@@ -796,6 +796,7 @@
 	int olol_assignSpecialGuiShape(EMCState *script);
 	int olol_findInventoryItem(EMCState *script);
 	int olol_restoreFadePalette(EMCState *script);
+	int olol_getSelectedCharacter(EMCState *script);
 	int olol_drinkBezelCup(EMCState *script);
 	int olol_changeItemTypeOrFlag(EMCState *script);
 	int olol_placeInventoryItemInHand(EMCState *script);
@@ -885,6 +886,7 @@
 	void setPaletteBrightness(const Palette &srcPal, int brightness, int modifier);
 	void generateBrightnessPalette(const Palette &src, Palette &dst, int brightness, int modifier);
 	void generateFlashPalette(const Palette &src, Palette &dst, int colorFlags);
+	void createGfxTables();
 	void updateSequenceBackgroundAnimations();
 
 	bool _dialogueField;
@@ -983,7 +985,6 @@
 	void loadCmzFile(const char *file);
 	void loadLevelShpDat(const char *shpFile, const char *datFile, bool flag);
 	void loadLevelGraphics(const char *file, int specialColor, int weight, int vcnLen, int vmpLen, const char *palFile);
-	void createGfxTables();
 
 	void resetItems(int flag);
 	void disableMonsters();

Modified: scummvm/trunk/engines/kyra/scene_lol.cpp
===================================================================
--- scummvm/trunk/engines/kyra/scene_lol.cpp	2009-09-11 18:13:27 UTC (rev 44035)
+++ scummvm/trunk/engines/kyra/scene_lol.cpp	2009-09-11 21:15:48 UTC (rev 44036)
@@ -450,20 +450,6 @@
 	_loadSuppFilesFlag = 1;
 }
 
-void LoLEngine::createGfxTables() {
-	if (_flags.isTalkie || _loadSuppFilesFlag)
-		return;
-
-	Palette tpal(768);
-	_screen->loadPalette("fxpal.col", tpal);
-	_screen->loadBitmap("fxpal.shp", 3, 3, 0);
-	const uint8 *shpPal = _screen->getPtrToShape(_screen->getCPagePtr(2), 0) + 11;
-
-	_screen->generateTruelightTables(shpPal, 20, tpal, _screen->getPalette(1), _trueLightTable1, _trueLightTable2, 70);
-
-	_loadSuppFilesFlag = 1;
-}
-
 void LoLEngine::resetItems(int flag) {
 	for (int i = 0; i < 1024; i++) {
 		_levelBlockProperties[i].direction = 5;

Modified: scummvm/trunk/engines/kyra/screen_lol.cpp
===================================================================
--- scummvm/trunk/engines/kyra/screen_lol.cpp	2009-09-11 18:13:27 UTC (rev 44035)
+++ scummvm/trunk/engines/kyra/screen_lol.cpp	2009-09-11 21:15:48 UTC (rev 44036)
@@ -251,8 +251,7 @@
 			}			
 
 		} else {
-			for (int ii = 0; ii < 256; ii++)
-				outTable2[(i << 8) + ii] = 0;
+			memset(&outTable2[i << 8], 0, 256);
 		}
 	}
 }

Modified: scummvm/trunk/engines/kyra/script_lol.cpp
===================================================================
--- scummvm/trunk/engines/kyra/script_lol.cpp	2009-09-11 18:13:27 UTC (rev 44035)
+++ scummvm/trunk/engines/kyra/script_lol.cpp	2009-09-11 21:15:48 UTC (rev 44036)
@@ -2005,12 +2005,6 @@
 	return -1;
 }
 
-int LoLEngine::olol_drinkBezelCup(EMCState *script) {
-	debugC(3, kDebugLevelScriptFuncs, "LoLEngine::olol_drinkBezelCup(%p) (%d, %d)", (const void *)script, stackPos(0), stackPos(1));
-	drinkBezelCup(3 - stackPos(0), stackPos(1));
-	return 1;
-}
-
 int LoLEngine::olol_restoreFadePalette(EMCState *script) {
 	debugC(3, kDebugLevelScriptFuncs, "LoLEngine::olol_restoreFadePalette(%p)", (const void *)script);
 	_screen->getPalette(0).copy(_screen->getPalette(1), 0, 128);
@@ -2019,6 +2013,17 @@
 	return 1;
 }
 
+int LoLEngine::olol_getSelectedCharacter(EMCState *script) {
+	debugC(3, kDebugLevelScriptFuncs, "LoLEngine::olol_getSelectedCharacter(%p)", (const void *)script);
+	return _selectedCharacter;
+}
+
+int LoLEngine::olol_drinkBezelCup(EMCState *script) {
+	debugC(3, kDebugLevelScriptFuncs, "LoLEngine::olol_drinkBezelCup(%p) (%d, %d)", (const void *)script, stackPos(0), stackPos(1));
+	drinkBezelCup(3 - stackPos(0), stackPos(1));
+	return 1;
+}
+
 int LoLEngine::olol_changeItemTypeOrFlag(EMCState *script) {
 	debugC(3, kDebugLevelScriptFuncs, "LoLEngine::olol_changeItemTypeOrFlag(%p) (%d, %d, %d)", (const void *)script, stackPos(0), stackPos(1), stackPos(2));
 	if (stackPos(0) < 1)
@@ -2881,8 +2886,8 @@
 	Opcode(olol_calcNewBlockPosition);
 
 	// 0xA8
+	Opcode(olol_getSelectedCharacter);
 	OpcodeUnImpl();
-	OpcodeUnImpl();
 	Opcode(olol_drinkBezelCup);
 	Opcode(olol_changeItemTypeOrFlag);
 


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