[Scummvm-git-logs] scummvm master -> 51a208b00d884bca2145c65f39b4ac4974dee4a7

dreammaster dreammaster at scummvm.org
Thu Dec 1 03:30:55 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:
51a208b00d TITANIC: Fix getting Succubus's NPC script


Commit: 51a208b00d884bca2145c65f39b4ac4974dee4a7
    https://github.com/scummvm/scummvm/commit/51a208b00d884bca2145c65f39b4ac4974dee4a7
Author: Paul Gilbert (dreammaster at scummvm.org)
Date: 2016-11-30T21:30:50-05:00

Commit Message:
TITANIC: Fix getting Succubus's NPC script

Changed paths:
    engines/titanic/support/string.cpp
    engines/titanic/support/string.h
    engines/titanic/true_talk/true_talk_manager.cpp


diff --git a/engines/titanic/support/string.cpp b/engines/titanic/support/string.cpp
index cf1b29b..6687c24 100644
--- a/engines/titanic/support/string.cpp
+++ b/engines/titanic/support/string.cpp
@@ -77,6 +77,15 @@ int CString::lastIndexOf(char c) const {
 	return charP ? charP - c_str() : -1;
 }
 
+bool CString::containsIgnoreCase(const CString &str) const {
+	CString lowerStr = *this;
+	CString subStr = str;
+	lowerStr.toLowercase();
+	subStr.toLowercase();
+
+	return lowerStr.contains(subStr);
+}
+
 FileType CString::fileTypeSuffix() const {
 	CString ext = right(1);
 	if (ext == "0" || ext == "4")
diff --git a/engines/titanic/support/string.h b/engines/titanic/support/string.h
index 71242c0..5ea70db 100644
--- a/engines/titanic/support/string.h
+++ b/engines/titanic/support/string.h
@@ -96,6 +96,11 @@ public:
 	int lastIndexOf(char c) const;
 
 	/**
+	 * Returns true if the string contains a specified substring, ignoring case
+	 */
+	bool containsIgnoreCase(const CString &str) const;
+
+	/**
 	 * Returns the type of a filename based on it's extension
 	 */
 	FileType fileTypeSuffix() const;
diff --git a/engines/titanic/true_talk/true_talk_manager.cpp b/engines/titanic/true_talk/true_talk_manager.cpp
index d90223c..795e160 100644
--- a/engines/titanic/true_talk/true_talk_manager.cpp
+++ b/engines/titanic/true_talk/true_talk_manager.cpp
@@ -243,23 +243,23 @@ void CTrueTalkManager::start4(CTrueTalkNPC *npc, CViewItem *view) {
 }
 
 TTnpcScript *CTrueTalkManager::getTalker(const CString &name) const {
-	if (name.contains("Doorbot"))
+	if (name.containsIgnoreCase("Doorbot"))
 		return _scripts.getNpcScript(104);
-	else if (name.contains("Deskbot"))
+	else if (name.containsIgnoreCase("Deskbot"))
 		return _scripts.getNpcScript(103);
-	else if (name.contains("LiftBot"))
+	else if (name.containsIgnoreCase("LiftBot"))
 		return _scripts.getNpcScript(105);
-	else if (name.contains("Parrot"))
+	else if (name.containsIgnoreCase("Parrot"))
 		return _scripts.getNpcScript(107);
-	else if (name.contains("BarBot"))
+	else if (name.containsIgnoreCase("BarBot"))
 		return _scripts.getNpcScript(100);
-	else if (name.contains("ChatterBot"))
+	else if (name.containsIgnoreCase("ChatterBot"))
 		return _scripts.getNpcScript(102);
-	else if (name.contains("BellBot"))
+	else if (name.containsIgnoreCase("BellBot"))
 		return _scripts.getNpcScript(101);
-	else if (name.contains("MaitreD"))
+	else if (name.containsIgnoreCase("MaitreD"))
 		return _scripts.getNpcScript(112);
-	else if (name.contains("Succubus") || name.contains("Sub"))
+	else if (name.containsIgnoreCase("Succubus") || name.containsIgnoreCase("Sub"))
 		return _scripts.getNpcScript(111);
 
 	return nullptr;





More information about the Scummvm-git-logs mailing list