OpenTTD

- Main Page
- Related Pages
- Modules
- Namespaces
- Data Structures
- Files

- File List
- Globals

newgrf_sound.h
Go to the documentation of this file.
1 /* $Id: newgrf_sound.h 24052 2012-03-19 22:55:29Z frosch $ */
2
3 /*
4 * This file is part of OpenTTD.
5 * OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
6 * OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
7 * See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
8 */
9
12 #ifndef NEWGRF_SOUND_H
13 #define NEWGRF_SOUND_H
14
15 #include "sound_type.h"
16 #include "tile_type.h"
17 #include "vehicle_type.h"
18
20 enum VehicleSoundEvent {
21 VSE_START = 1,
22 VSE_TUNNEL = 2,
23 VSE_BREAKDOWN = 3,
24 VSE_RUNNING = 4,
25 VSE_TOUCHDOWN = 5,
26 VSE_VISUAL_EFFECT = 6,
27 VSE_RUNNING_16 = 7,
28 VSE_STOPPED_16 = 8,
29 VSE_LOAD_UNLOAD = 9,
30 };
31
32
33 SoundEntry *AllocateSound(uint num);
34 void InitializeSoundPool();
35 bool LoadNewGRFSound(SoundEntry *sound);
36 SoundEntry *GetSound(SoundID sound_id);
37 uint GetNumSounds();
38 bool PlayVehicleSound(const Vehicle *v, VehicleSoundEvent event);
39 void PlayTileSound(const struct GRFFile *file, SoundID sound_id, TileIndex tile);
40
41 #endif /* NEWGRF_SOUND_H */