aboutsummaryrefslogtreecommitdiff
path: root/engines/avalanche/dialogs.cpp
diff options
context:
space:
mode:
authoruruk2013-10-01 09:40:41 +0200
committeruruk2013-10-01 09:40:41 +0200
commit8408fa46c73de4923e456ee13210f171953ad820 (patch)
tree79d7f13625dda567164a12d6f10b8bd8b201cb38 /engines/avalanche/dialogs.cpp
parentbfb28c7a399662bca7269f9e5dbc8788b7bb4d58 (diff)
downloadscummvm-rg350-8408fa46c73de4923e456ee13210f171953ad820.tar.gz
scummvm-rg350-8408fa46c73de4923e456ee13210f171953ad820.tar.bz2
scummvm-rg350-8408fa46c73de4923e456ee13210f171953ad820.zip
AVALANCHE: Implement Dialogs::displayQuestion(), repair setSeed() and getRandomNumber() calls.
Diffstat (limited to 'engines/avalanche/dialogs.cpp')
-rw-r--r--engines/avalanche/dialogs.cpp13
1 files changed, 12 insertions, 1 deletions
diff --git a/engines/avalanche/dialogs.cpp b/engines/avalanche/dialogs.cpp
index 9557b36b74..c0383045c7 100644
--- a/engines/avalanche/dialogs.cpp
+++ b/engines/avalanche/dialogs.cpp
@@ -34,6 +34,7 @@
#include "common/textconsole.h"
#include "common/file.h"
+#include "common/random.h"
namespace Avalanche {
@@ -765,7 +766,17 @@ void Dialogs::displayText(Common::String text) { // TODO: REPLACE BUFFER WITH A
bool Dialogs::displayQuestion(Common::String question) {
displayText(question + kControlNewLine + kControlQuestion);
- warning("STUB: Dialogs::displayQuestion()");
+
+ if (_scReturn && (_vm->_rnd->getRandomNumber(1) == 0)) { // Half-and-half chance.
+ Common::String tmpStr = Common::String::format("...Positive about that?%cI%c%c%c", kControlRegister, kControlIcon, kControlNewLine, kControlQuestion);
+ displayText(tmpStr); // Be annoying!
+ if (_scReturn && (_vm->_rnd->getRandomNumber(3) == 3)) { // Another 25% chance
+ // \? are used to avoid that ??! is parsed as a trigraph
+ tmpStr = Common::String::format("%c100%% certain\?\?!%c%c%c%c", kControlInsertSpaces, kControlInsertSpaces, kControlIcon, kControlNewLine, kControlQuestion);
+ displayText(tmpStr); // Be very annoying!
+ }
+ }
+
return _scReturn;
}