ScummVM API documentation
sound.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
#ifndef SUPERNOVA_SOUND_H
23
#define SUPERNOVA_SOUND_H
24
25
#include "audio/mixer.h"
26
27
namespace
Supernova
{
28
29
class
SupernovaEngine;
30
class
ResourceManager;
31
32
enum
AudioId {
33
// Supernova 1
34
kAudioFoundLocation,
// 44|0
35
kAudioCrash,
// 45|0
36
kAudioVoiceHalt,
// 46|0
37
kAudioGunShot,
// 46|2510
38
kAudioSmash,
// 46|4020
39
kAudioVoiceSupernova,
// 47|0
40
kAudioVoiceYeah,
// 47|24010
41
kAudioRobotShock,
// 48|0
42
kAudioRobotBreaks,
// 48|2510
43
kAudioShock,
// 48|10520
44
kAudioTurntable,
// 48|13530
45
kAudioSiren,
// 50|0
46
kAudioSnoring,
// 50|12786
47
kAudioRocks,
// 51|0
48
kAudioDeath,
// 53|0
49
kAudioAlarm,
// 54|0
50
kAudioSuccess,
// 54|8010
51
kAudioSlideDoor,
// 54|24020
52
kAudioDoorOpen,
// 54|30030
53
kAudioDoorClose,
// 54|31040
54
kAudioNumSamples1,
55
56
// Supernova 2
57
kAudioIntroDing = 0,
58
kAudioSuccess2,
59
kAudioTaxiOpen,
60
kAudioTaxiLeaving,
61
kAudioTaxiArriving,
62
kAudioKiosk,
63
kAudioStage1,
64
kAudioStage2,
65
kAudioAppearance1,
66
kAudioAppearance2,
67
kAudioAppearance3,
68
kAudioElevatorBell,
69
kAudioElevator1,
70
kAudioShip1,
71
kAudioShip2,
72
kAudioShip3,
73
kAudioShipDeath,
74
kAudioDeath2,
75
kAudioCaught,
76
kAudioNumSamples2
77
};
78
79
enum
MusicId {
80
kMusicIntro,
81
kMusicOutro,
82
kMusicMadMonkeys
83
};
84
85
class
Sound
{
86
public
:
87
88
public
:
89
Sound
(
Audio::Mixer
*mixer,
ResourceManager
*resMan);
90
91
void
play(AudioId index);
92
void
play(MusicId index);
93
void
playSiren();
94
void
setVolume(
int
volume);
95
int
getVolume();
96
void
stop();
97
bool
isPlaying();
98
private
:
99
Audio::Mixer
*_mixer;
100
ResourceManager
*_resMan;
101
Audio::SoundHandle
_soundHandle;
102
};
103
104
}
105
106
#endif
Supernova
Definition:
console.h:27
Supernova::ResourceManager
Definition:
resman.h:41
Supernova::Sound
Definition:
sound.h:85
Audio::SoundHandle
Definition:
mixer.h:49
Audio::Mixer
Definition:
mixer.h:59
engines
supernova
sound.h
Generated on Tue Nov 26 2024 09:10:52 for ScummVM API documentation by
1.8.13