[Scummvm-git-logs] scummvm master -> d356d873788478fad993c5297e42e2bae57d2539

dreammaster dreammaster at scummvm.org
Sun Dec 18 04:26:18 CET 2016


This automated email contains information about 1 new commit which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .

Summary:
d356d87378 TITANIC: Fix saving games when there is range data to be included


Commit: d356d873788478fad993c5297e42e2bae57d2539
    https://github.com/scummvm/scummvm/commit/d356d873788478fad993c5297e42e2bae57d2539
Author: Paul Gilbert (dreammaster at scummvm.org)
Date: 2016-12-17T22:26:16-05:00

Commit Message:
TITANIC: Fix saving games when there is range data to be included

Changed paths:
    engines/titanic/true_talk/tt_npc_script.cpp
    engines/titanic/true_talk/tt_npc_script.h


diff --git a/engines/titanic/true_talk/tt_npc_script.cpp b/engines/titanic/true_talk/tt_npc_script.cpp
index 7540a73..ba205b6 100644
--- a/engines/titanic/true_talk/tt_npc_script.cpp
+++ b/engines/titanic/true_talk/tt_npc_script.cpp
@@ -416,6 +416,7 @@ void TTnpcScript::load(SimpleFile *file) {
 	loadBody(file);
 
 	int count = file->readNumber();
+	assert(count == 4);
 	_rangeResetCtr = file->readNumber();
 	_currentDialNum = file->readNumber();
 	_dialDelta = file->readNumber();
@@ -434,13 +435,13 @@ void TTnpcScript::load(SimpleFile *file) {
 }
 
 void TTnpcScript::saveBody(SimpleFile *file) {
-	int count = proc31();
+	int count = getRangesCount();
 	file->writeNumber(count);
 
 	if (count > 0) {
 		for (uint idx = 0; idx < _ranges.size(); ++idx) {
 			const TTscriptRange &item = _ranges[idx];
-			if (item._mode == SF_RANDOM && item._priorIndex) {
+			if (item._mode != SF_RANDOM && item._priorIndex) {
 				file->writeNumber(item._id);
 				file->writeNumber(item._priorIndex);
 			}
@@ -466,7 +467,7 @@ void TTnpcScript::loadBody(SimpleFile *file) {
 	}
 }
 
-int TTnpcScript::proc31() const {
+int TTnpcScript::getRangesCount() const {
 	int count = 0;
 	for (uint idx = 0; idx < _ranges.size(); ++idx) {
 		const TTscriptRange &item = _ranges[idx];
diff --git a/engines/titanic/true_talk/tt_npc_script.h b/engines/titanic/true_talk/tt_npc_script.h
index bdca568..e5be7d7 100644
--- a/engines/titanic/true_talk/tt_npc_script.h
+++ b/engines/titanic/true_talk/tt_npc_script.h
@@ -308,7 +308,11 @@ public:
 	virtual void load(SimpleFile *file);
 	virtual void saveBody(SimpleFile *file);
 	virtual void loadBody(SimpleFile *file);
-	virtual int proc31() const;
+
+	/**
+	 * Returns the number of range records that are non-random
+	 */
+	virtual int getRangesCount() const;
 
 	/**
 	 * Sets a given dial to be pointing in a specified region (0 to 2)





More information about the Scummvm-git-logs mailing list