[Scummvm-cvs-logs] SF.net SVN: scummvm: [25333] scummvm/trunk/engines/lure/hotspots.cpp

dreammaster at users.sourceforge.net dreammaster at users.sourceforge.net
Fri Feb 2 09:35:18 CET 2007


Revision: 25333
          http://scummvm.svn.sourceforge.net/scummvm/?rev=25333&view=rev
Author:   dreammaster
Date:     2007-02-02 00:35:17 -0800 (Fri, 02 Feb 2007)

Log Message:
-----------
Bugfix to fix crash when Ratpouch chooses an in-room random destination

Modified Paths:
--------------
    scummvm/trunk/engines/lure/hotspots.cpp

Modified: scummvm/trunk/engines/lure/hotspots.cpp
===================================================================
--- scummvm/trunk/engines/lure/hotspots.cpp	2007-02-01 23:27:16 UTC (rev 25332)
+++ scummvm/trunk/engines/lure/hotspots.cpp	2007-02-02 08:35:17 UTC (rev 25333)
@@ -1592,6 +1592,7 @@
 		if (sequenceOffset != 0) return;
 	}
 
+	// TODO: talk_record_index
 	showMessage(sequenceOffset);
 }
 
@@ -2556,11 +2557,12 @@
 
 	if ((fields.getField(37) == 0) && h.currentActions().isEmpty()) {
 		
-		if (h.roomNumber() == h.currentActions().top().roomNumber()) {
-			// In room - set a random destination
+		if (h.roomNumber() == player->roomNumber()) {
+			// In same room as player - set a random destination
 			h.setRandomDest();
 
 		} else {
+			// Character in different room than player
 			if (h.hotspotId() == GOEWIN_ID) 
 				h.currentActions().addFront(DISPATCH_ACTION, player->roomNumber());
 			else {
@@ -2568,7 +2570,7 @@
 				RoomTranslationRecord *p = &roomTranslations[0];
 				while ((p->srcRoom != 0) && (p->srcRoom != player->roomNumber()))
 					++p;
-				h.currentActions().top().setRoomNumber(
+				h.currentActions().addFront(DISPATCH_ACTION, 
 					(p->srcRoom != 0) ? p->destRoom : player->roomNumber());
 			}
 		}


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