[Scummvm-cvs-logs] SF.net SVN: scummvm: [26641] scummvm/trunk/engines/agos

kirben at users.sourceforge.net kirben at users.sourceforge.net
Sat Apr 28 09:00:34 CEST 2007


Revision: 26641
          http://scummvm.svn.sourceforge.net/scummvm/?rev=26641&view=rev
Author:   kirben
Date:     2007-04-28 00:00:33 -0700 (Sat, 28 Apr 2007)

Log Message:
-----------
Add code difference for inventory arrows in Amiga versions of Simon the Sorcerer 1.

Modified Paths:
--------------
    scummvm/trunk/engines/agos/gfx.cpp
    scummvm/trunk/engines/agos/icons.cpp

Modified: scummvm/trunk/engines/agos/gfx.cpp
===================================================================
--- scummvm/trunk/engines/agos/gfx.cpp	2007-04-28 06:57:32 UTC (rev 26640)
+++ scummvm/trunk/engines/agos/gfx.cpp	2007-04-28 07:00:33 UTC (rev 26641)
@@ -959,10 +959,7 @@
 			p += sizeof(AnimationHeader_Simon);
 		}
 
-		if (READ_BE_UINT16(&((AnimationHeader_Simon *) p)->id) != vgaSpriteId) {
-			debug(0, "setImage: Animation %d not found.", vgaSpriteId);
-			return;
-		}
+		assert(READ_BE_UINT16(&((AnimationHeader_Simon *) p)->id) == vgaSpriteId);
 	} else {
 		p = pp + READ_BE_UINT16(pp + 10);
 		p += 20;
@@ -1072,12 +1069,7 @@
 				break;
 			b += sizeof(ImageHeader_Simon);
 		}
-
-
-		if (READ_BE_UINT16(&((ImageHeader_Simon *) b)->id) != vga_res_id) {
-			debug(0, "setImage: Image %d not found.", vga_res_id);
-			return;
-		}
+		assert(READ_BE_UINT16(&((ImageHeader_Simon *) b)->id) == vga_res_id);
 	} else {
 		b = bb + READ_BE_UINT16(bb + 10);
 		b += 20;

Modified: scummvm/trunk/engines/agos/icons.cpp
===================================================================
--- scummvm/trunk/engines/agos/icons.cpp	2007-04-28 06:57:32 UTC (rev 26640)
+++ scummvm/trunk/engines/agos/icons.cpp	2007-04-28 07:00:33 UTC (rev 26641)
@@ -625,8 +625,13 @@
 		ha->window = window;
 		ha->verb = 1;
 
-		stopAnimate(128);
-		animate(0, 1, 128, 0, 0, 14);
+		if (getFeatures() & GF_32COLOR) {
+			// TODO: Manually draws arrows
+		} else {
+			stopAnimate(128);
+			uint8 palette = (getGameId() == GID_SIMON1CD32) ? 15: 14;
+			animate(0, 1, 128, 0, 0, palette);
+		}
 	} else if (getGameType() == GType_WW) {
 		ha->x = 255;
 		ha->y = 170;
@@ -664,7 +669,11 @@
 
 void AGOSEngine::removeArrows(WindowBlock *window, uint num) {
 	if (getGameType() == GType_SIMON1) {
-		stopAnimate(128);
+		if (getFeatures() & GF_32COLOR) {
+			// TODO: Manually removes arrows
+		} else {
+			stopAnimate(128);
+		}
 	} else if (getGameType() == GType_WW) {
 		setBitFlag(22, false);
 		setWindowImageEx(6, 103);


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