ScummVM API documentation
ghostroom.h
1
/* ScummVM - Graphic Adventure Engine
2
*
3
* ScummVM is the legal property of its developers, whose names
4
* are too numerous to list here. Please refer to the COPYRIGHT
5
* file distributed with this source distribution.
6
*
7
* This program is free software: you can redistribute it and/or modify
8
* it under the terms of the GNU General Public License as published by
9
* the Free Software Foundation, either version 3 of the License, or
10
* (at your option) any later version.
11
*
12
* This program is distributed in the hope that it will be useful,
13
* but WITHOUT ANY WARRANTY; without even the implied warranty of
14
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15
* GNU General Public License for more details.
16
*
17
* You should have received a copy of the GNU General Public License
18
* along with this program. If not, see <http://www.gnu.org/licenses/>.
19
*
20
*/
21
22
/*
23
* This code is based on the original source code of Lord Avalot d'Argent version 1.3.
24
* Copyright (c) 1994-1995 Mike: Mark and Thomas Thurman.
25
*/
26
27
#ifndef AVALANCHE_GHOSTROOM_H
28
#define AVALANCHE_GHOSTROOM_H
29
30
#include "common/scummsys.h"
31
#include "graphics/surface.h"
32
33
namespace
Avalanche {
34
class
AvalancheEngine;
35
36
struct
ChunkBlock
{
37
Flavour _flavour;
38
int16 _x, _y;
39
int16 _width, _height;
40
int32 _size;
41
};
42
43
class
GhostRoom
{
44
public
:
45
GhostRoom
(
AvalancheEngine
*vm);
46
~GhostRoom
();
47
48
void
run();
49
ChunkBlock
readChunkBlock(
Common::File
&file);
50
51
private
:
52
AvalancheEngine
*_vm;
53
54
static
const
int8 kAdjustment[5];
55
static
const
byte
kWaveOrder[5];
56
static
const
byte
kGlerkFade[26];
57
static
const
byte
kGreldetFade[18];
58
59
Common::Point
dummyCoord;
60
byte
****_ghost;
// [5][2][66][26]
61
Graphics::Surface
_eyes[2];
62
Graphics::Surface
_exclamation;
63
Graphics::Surface
_bat[3];
64
byte
****_glerk;
// [6][4][35][9]
65
Graphics::Surface
_aargh[6];
66
Common::Point
_aarghWhere[6];
67
Graphics::Surface
_greenEyes[5];
68
Graphics::Surface
_greldet[6][2];
69
70
int16 _batX, _batY;
71
uint16 _batCount;
72
byte
_glerkStage;
73
int8 _aarghCount;
74
int16 _greldetX, _greldetY;
75
byte
_greldetCount;
76
bool
_redGreldet;
77
bool
_wasLoaded;
78
79
void
loadPictures();
80
void
wait(uint16 howLong);
81
void
doBat();
82
void
bigGreenEyes(
byte
how);
83
};
84
85
}
// End of namespace Avalanche
86
87
#endif
// AVALANCHE_GHOSTROOM_H
Avalanche::AvalancheEngine
Definition:
avalanche.h:78
Avalanche::GhostRoom
Definition:
ghostroom.h:43
Common::File
Definition:
file.h:47
Avalanche::ChunkBlock
Definition:
ghostroom.h:36
Common::Point
Definition:
rect.h:144
Graphics::Surface
Definition:
surface.h:67
engines
avalanche
ghostroom.h
Generated on Sat Oct 24 2026 09:15:33 for ScummVM API documentation by
1.9.4