9723
|
1 |
/* $Id$ */
|
|
2 |
|
|
3 |
/** @file sound_type.h Types related to sounds. */
|
|
4 |
|
|
5 |
#ifndef SOUND_TYPE_H
|
|
6 |
#define SOUND_TYPE_H
|
|
7 |
|
|
8 |
#include "core/enum_type.hpp"
|
|
9 |
|
|
10 |
struct MusicFileSettings {
|
|
11 |
byte playlist;
|
|
12 |
byte music_vol;
|
|
13 |
byte effect_vol;
|
|
14 |
byte custom_1[33];
|
|
15 |
byte custom_2[33];
|
|
16 |
bool playing;
|
|
17 |
bool shuffle;
|
|
18 |
char extmidi[80];
|
|
19 |
};
|
|
20 |
|
|
21 |
struct FileEntry {
|
|
22 |
uint8 file_slot;
|
10776
|
23 |
size_t file_offset;
|
|
24 |
size_t file_size;
|
9723
|
25 |
uint16 rate;
|
|
26 |
uint8 bits_per_sample;
|
|
27 |
uint8 channels;
|
|
28 |
uint8 volume;
|
|
29 |
uint8 priority;
|
|
30 |
};
|
|
31 |
|
|
32 |
enum SoundFx {
|
|
33 |
SND_BEGIN = 0,
|
|
34 |
SND_02_SPLAT = 0, // 0 == 0x00 !
|
|
35 |
SND_03_FACTORY_WHISTLE,
|
|
36 |
SND_04_TRAIN,
|
|
37 |
SND_05_TRAIN_THROUGH_TUNNEL,
|
|
38 |
SND_06_SHIP_HORN,
|
|
39 |
SND_07_FERRY_HORN,
|
|
40 |
SND_08_PLANE_TAKE_OFF,
|
|
41 |
SND_09_JET,
|
|
42 |
SND_0A_TRAIN_HORN,
|
|
43 |
SND_0B_MINING_MACHINERY,
|
|
44 |
SND_0C_ELECTRIC_SPARK,
|
|
45 |
SND_0D_STEAM,
|
|
46 |
SND_0E_LEVEL_CROSSING,
|
|
47 |
SND_0F_VEHICLE_BREAKDOWN,
|
|
48 |
SND_10_TRAIN_BREAKDOWN,
|
|
49 |
SND_11_CRASH,
|
|
50 |
SND_12_EXPLOSION, // 16 == 0x10
|
|
51 |
SND_13_BIG_CRASH,
|
|
52 |
SND_14_CASHTILL,
|
|
53 |
SND_15_BEEP, // 19 == 0x13
|
|
54 |
SND_16_MORSE, // 20 == 0x14
|
|
55 |
SND_17_SKID_PLANE,
|
|
56 |
SND_18_HELICOPTER,
|
|
57 |
SND_19_BUS_START_PULL_AWAY,
|
|
58 |
SND_1A_BUS_START_PULL_AWAY_WITH_HORN,
|
|
59 |
SND_1B_TRUCK_START,
|
|
60 |
SND_1C_TRUCK_START_2,
|
|
61 |
SND_1D_APPLAUSE,
|
|
62 |
SND_1E_OOOOH,
|
|
63 |
SND_1F_SPLAT, // 29 == 0x1D
|
|
64 |
SND_20_SPLAT_2, // 30 == 0x1E
|
|
65 |
SND_21_JACKHAMMER,
|
|
66 |
SND_22_CAR_HORN,
|
|
67 |
SND_23_CAR_HORN_2,
|
|
68 |
SND_24_SHEEP,
|
|
69 |
SND_25_COW,
|
|
70 |
SND_26_HORSE,
|
|
71 |
SND_27_BLACKSMITH_ANVIL,
|
|
72 |
SND_28_SAWMILL, // 38 == 0x26 !
|
|
73 |
SND_00_GOOD_YEAR, // 39 == 0x27 !
|
|
74 |
SND_01_BAD_YEAR, // 40 == 0x28 !
|
|
75 |
SND_29_RIP, // 41 == 0x29 !
|
|
76 |
SND_2A_EXTRACT_AND_POP,
|
|
77 |
SND_2B_COMEDY_HIT,
|
|
78 |
SND_2C_MACHINERY,
|
|
79 |
SND_2D_RIP_2,
|
|
80 |
SND_2E_EXTRACT_AND_POP,
|
|
81 |
SND_2F_POP,
|
|
82 |
SND_30_CARTOON_SOUND,
|
|
83 |
SND_31_EXTRACT,
|
|
84 |
SND_32_POP_2,
|
|
85 |
SND_33_PLASTIC_MINE,
|
|
86 |
SND_34_WIND,
|
|
87 |
SND_35_COMEDY_BREAKDOWN,
|
|
88 |
SND_36_CARTOON_CRASH,
|
|
89 |
SND_37_BALLOON_SQUEAK,
|
|
90 |
SND_38_CHAINSAW,
|
|
91 |
SND_39_HEAVY_WIND,
|
|
92 |
SND_3A_COMEDY_BREAKDOWN_2,
|
|
93 |
SND_3B_JET_OVERHEAD,
|
|
94 |
SND_3C_COMEDY_CAR,
|
|
95 |
SND_3D_ANOTHER_JET_OVERHEAD,
|
|
96 |
SND_3E_COMEDY_CAR_2,
|
|
97 |
SND_3F_COMEDY_CAR_3,
|
|
98 |
SND_40_COMEDY_CAR_START_AND_PULL_AWAY,
|
|
99 |
SND_41_MAGLEV,
|
|
100 |
SND_42_LOON_BIRD,
|
|
101 |
SND_43_LION,
|
|
102 |
SND_44_MONKEYS,
|
|
103 |
SND_45_PLANE_CRASHING,
|
|
104 |
SND_46_PLANE_ENGINE_SPUTTERING,
|
|
105 |
SND_47_MAGLEV_2,
|
|
106 |
SND_48_DISTANT_BIRD, // 72 == 0x48
|
|
107 |
SND_END
|
|
108 |
};
|
|
109 |
|
|
110 |
/** Define basic enum properties */
|
|
111 |
template <> struct EnumPropsT<SoundFx> : MakeEnumPropsT<SoundFx, byte, SND_BEGIN, SND_END, SND_END> {};
|
|
112 |
typedef TinyEnumT<SoundFx> SoundFxByte;
|
|
113 |
|
|
114 |
#endif /* SOUND_TYPE_H */
|