diff options
author | Strangerke | 2011-07-30 15:43:49 +0200 |
---|---|---|
committer | Strangerke | 2011-07-30 15:43:49 +0200 |
commit | b53ffa8f2c31d27ac5a7b3fd48143102be6ff4ff (patch) | |
tree | 3ab435761eb439dd0381bc96eea429792f641852 /engines/cge/cge.cpp | |
parent | 8b53899ca7d5ab1599f6bf3e1d4e49746876674b (diff) | |
download | scummvm-rg350-b53ffa8f2c31d27ac5a7b3fd48143102be6ff4ff.tar.gz scummvm-rg350-b53ffa8f2c31d27ac5a7b3fd48143102be6ff4ff.tar.bz2 scummvm-rg350-b53ffa8f2c31d27ac5a7b3fd48143102be6ff4ff.zip |
CGE: Move some conditional defines to variables
Diffstat (limited to 'engines/cge/cge.cpp')
-rw-r--r-- | engines/cge/cge.cpp | 62 |
1 files changed, 47 insertions, 15 deletions
diff --git a/engines/cge/cge.cpp b/engines/cge/cge.cpp index 116bafcb64..8d2073b66f 100644 --- a/engines/cge/cge.cpp +++ b/engines/cge/cge.cpp @@ -56,6 +56,49 @@ CGEEngine::CGEEngine(OSystem *syst, const ADGameDescription *gameDescription) } +void CGEEngine::initCaveValues() { + if (_isDemo) { + _mini = new byte[16384]; + CAVE_DX = 23; + CAVE_DY = 29; + CAVE_NX = 3; + CAVE_NY = 1; + } else { + _mini = new byte[65536]; + CAVE_DX = 9; + CAVE_DY = 10; + CAVE_NX = 8; + CAVE_NY = 3; + } + CAVE_MAX = CAVE_NX * CAVE_NY; + + if (_isDemo) { + _maxCaveArr[0] = CAVE_MAX; + _maxCaveArr[1] = -1; + _maxCaveArr[2] = -1; + _maxCaveArr[3] = -1; + _maxCaveArr[4] = -1; + } else { + _maxCaveArr[0] = 1; + _maxCaveArr[1] = 8; + _maxCaveArr[2] = 16; + _maxCaveArr[3] = 23; + _maxCaveArr[4] = 24; + }; + + _heroXY = (Hxy *) malloc (sizeof(Hxy) * CAVE_MAX); + for (int i = 0; i < CAVE_MAX; i++) { + _heroXY[i]._x = 0; + _heroXY[i]._y = 0; + } + + _barriers = (Bar *) malloc (sizeof(Bar) * (1 + CAVE_MAX)); + for (int i = 0; i < CAVE_MAX + 1; i++) { + _barriers[i]._horz = 0xFF; + _barriers[i]._vert = 0xFF; + } +} + void CGEEngine::setup() { debugC(1, kCGEDebugEngine, "CGEEngine::setup()"); @@ -109,22 +152,8 @@ void CGEEngine::setup() { _volume[0] = 0; _volume[1] = 0; + initCaveValues(); - if (_isDemo) { - _mini = new byte[16384]; - _maxCaveArr[0] = CAVE_MAX; - _maxCaveArr[1] = -1; - _maxCaveArr[2] = -1; - _maxCaveArr[3] = -1; - _maxCaveArr[4] = -1; - } else { - _mini = new byte[65536]; - _maxCaveArr[0] = 1; - _maxCaveArr[1] = 8; - _maxCaveArr[2] = 16; - _maxCaveArr[3] = 23; - _maxCaveArr[4] = 24; - }; _maxCave = 0; _dark = false; _game = false; @@ -181,6 +210,9 @@ CGEEngine::~CGEEngine() { delete _snail_; delete _hero; delete[] _mini; + + free(_heroXY); + free(_barriers); } Common::Error CGEEngine::run() { |