aboutsummaryrefslogtreecommitdiff
path: root/engines
diff options
context:
space:
mode:
authorPaul Gilbert2011-07-05 20:51:29 +1000
committerPaul Gilbert2011-07-05 20:51:29 +1000
commit41c7482a525951407dfa09b9793eeef140f21979 (patch)
tree87344c7ed5a82908c97c08ff12d05d6f6467a7e2 /engines
parenta1f177317c780f1223f153ccc3934eae2a76111b (diff)
downloadscummvm-rg350-41c7482a525951407dfa09b9793eeef140f21979.tar.gz
scummvm-rg350-41c7482a525951407dfa09b9793eeef140f21979.tar.bz2
scummvm-rg350-41c7482a525951407dfa09b9793eeef140f21979.zip
CGE: Implement random number source
Diffstat (limited to 'engines')
-rw-r--r--engines/cge/cge.cpp2
-rw-r--r--engines/cge/cge.h1
-rw-r--r--engines/cge/general.cpp4
3 files changed, 4 insertions, 3 deletions
diff --git a/engines/cge/cge.cpp b/engines/cge/cge.cpp
index 87c3964563..7eeb20bebb 100644
--- a/engines/cge/cge.cpp
+++ b/engines/cge/cge.cpp
@@ -41,7 +41,7 @@
namespace CGE {
CGEEngine::CGEEngine(OSystem *syst, const ADGameDescription *gameDescription)
- : Engine(syst), _gameDescription(gameDescription) {
+ : Engine(syst), _gameDescription(gameDescription), _randomSource("cge") {
// Debug/console setup
DebugMan.addDebugChannel(kCGEDebug, "general", "CGE general debug channel");
diff --git a/engines/cge/cge.h b/engines/cge/cge.h
index 04f395559f..a3adf43dde 100644
--- a/engines/cge/cge.h
+++ b/engines/cge/cge.h
@@ -70,6 +70,7 @@ public:
bool _music;
int _pocref[POCKET_NX];
uint8 _volume[2];
+ Common::RandomSource _randomSource;
virtual Common::Error run();
GUI::Debugger *getDebugger() {
diff --git a/engines/cge/general.cpp b/engines/cge/general.cpp
index c4552e6f23..30b5f3186b 100644
--- a/engines/cge/general.cpp
+++ b/engines/cge/general.cpp
@@ -25,6 +25,7 @@
* Copyright (c) 1994-1995 Janus B. Wisniewski and L.K. Avalon
*/
+#include "cge/cge.h"
#include "cge/general.h"
#include "cge/snddrv.h"
#include "cge/wav.h"
@@ -356,8 +357,7 @@ long timer(void) {
}
int new_random(int range) {
- warning("STUB: new_random(a)");
- return 0;
+ return ((CGEEngine *)g_engine)->_randomSource.getRandomNumber(range - 1);
}
#define TIMER_INT 0x08