aboutsummaryrefslogtreecommitdiff
path: root/engines/hugo/hugo.cpp
diff options
context:
space:
mode:
authorArnaud Boutonné2010-09-26 11:32:52 +0000
committerArnaud Boutonné2010-09-26 11:32:52 +0000
commit20a618045943af4df7ac21d298c4a3db4c414129 (patch)
tree35acd69e51046cbfb6be1ebb53d6d803791d54f6 /engines/hugo/hugo.cpp
parent2ab77f2f52942dc57d38e342a4633f74630001aa (diff)
downloadscummvm-rg350-20a618045943af4df7ac21d298c4a3db4c414129.tar.gz
scummvm-rg350-20a618045943af4df7ac21d298c4a3db4c414129.tar.bz2
scummvm-rg350-20a618045943af4df7ac21d298c4a3db4c414129.zip
HUGO: Add H1 Dos intro
svn-id: r52902
Diffstat (limited to 'engines/hugo/hugo.cpp')
-rw-r--r--engines/hugo/hugo.cpp24
1 files changed, 17 insertions, 7 deletions
diff --git a/engines/hugo/hugo.cpp b/engines/hugo/hugo.cpp
index 8219e18acf..5243c1e492 100644
--- a/engines/hugo/hugo.cpp
+++ b/engines/hugo/hugo.cpp
@@ -388,15 +388,25 @@ bool HugoEngine::loadHugoDat() {
_textEngine = loadTexts(in);
// Read textIntro
- _textIntro = loadTexts(in);
+ _textIntro = loadTextsVariante(in, 0);
// Read x_intro and y_intro
- _introXSize = in.readUint16BE();
- _introX = (byte *)malloc(sizeof(byte) * _introXSize);
- _introY = (byte *)malloc(sizeof(byte) * _introXSize);
- for (int i = 0; i < _introXSize; i++) {
- _introX[i] = in.readByte();
- _introY[i] = in.readByte();
+ for (int varnt = 0; varnt < _numVariant; varnt++) {
+ int numRows = in.readUint16BE();
+ if (varnt == _gameVariant) {
+ _introXSize = numRows;
+ _introX = (byte *)malloc(sizeof(byte) * _introXSize);
+ _introY = (byte *)malloc(sizeof(byte) * _introXSize);
+ for (int i = 0; i < _introXSize; i++) {
+ _introX[i] = in.readByte();
+ _introY[i] = in.readByte();
+ }
+ } else {
+ for (int i = 0; i < numRows; i++) {
+ in.readByte();
+ in.readByte();
+ }
+ }
}
// Read textMouse