ScummVM API documentation
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
annoy.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  * Based on the original sources
22  * Faery Tale II -- The Halls of the Dead
23  * (c) 1993-1996 The Wyrmkeep Entertainment Co.
24  */
25 
26 #ifndef SAGA2_ANNOY_H
27 #define SAGA2_ANNOY_H
28 
29 namespace Saga2 {
30 
31 //-----------------------------------------------------------------------
32 // known annoying test sounds
33 
34 #define TEST_OPEN 1
35 #define TEST_CLOSE 2
36 #define TEST_USE 3
37 #define TEST_THROW 4
38 
39 /* ===================================================================== *
40  Imports
41  * ===================================================================== */
42 
43 class Location;
44 
45 /* ===================================================================== *
46  Prototypes
47  * ===================================================================== */
48 
49 //-----------------------------------------------------------------------
50 // play routines
51 
52 void playMusic(uint32 s);
53 
54 void playSound(uint32 s);
55 void playSoundAt(uint32 s, Location playAt);
56 void playSoundAt(uint32 s, Point32 playAt);
57 
58 void playVoice(uint32 s);
59 bool sayVoiceAt(uint32 s[], Location l);
60 bool sayVoiceAt(uint32 s[], Point32 l);
61 
62 void playLoop(uint32 s);
63 void playLoopAt(uint32 s, Location l);
64 void playLoopAt(uint32 s, Point32 l);
65 void moveLoop(Point32 loc);
66 
67 //-----------------------------------------------------------------------
68 // play routines for SAGA
69 
70 void PlaySound(char IDstr[]);
71 void PlayVoice(char IDstr[]);
72 void PlayLoop(char IDstr[]);
73 void PlayMusic(char IDstr[]);
74 void PlayLongSound(char IDstr[]);
75 
76 //-----------------------------------------------------------------------
77 // general maintenance
78 
79 bool initAudio();
80 void startAudio();
81 void suspendAudio();
82 void resumeAudio();
83 void cleanupAudio();
84 void writeConfig();
85 
86 void audioEventLoop();
87 bool stillDoingVoice(uint32 sampno);
88 bool stillDoingVoice(uint32 s[]);
89 
90 //-----------------------------------------------------------------------
91 // environmental sounds
92 
93 void audioEnvironmentUseSet(int16 audioSet, int32 auxID, Point32 relPos);
94 void audioEnvironmentCheck();
95 
96 void audioEnvironmentSetAggression(bool onOff);
97 void audioEnvironmentSetDaytime(bool onOff);
98 void audioEnvironmentSuspend(bool onOff);
99 void audioEnvironmentSetWorld(int mapNum);
100 
101 //-----------------------------------------------------------------------
102 // environmental music
103 
104 void clearActiveFactions();
105 void useActiveFactions();
106 
107 }
108 
109 #endif //ANNOY_H
Definition: actor.h:32