diff options
Diffstat (limited to 'src/sound_type.h')
-rw-r--r-- | src/sound_type.h | 114 |
1 files changed, 114 insertions, 0 deletions
diff --git a/src/sound_type.h b/src/sound_type.h new file mode 100644 index 000000000..319a8a06f --- /dev/null +++ b/src/sound_type.h @@ -0,0 +1,114 @@ +/* $Id$ */ + +/** @file sound_type.h Types related to sounds. */ + +#ifndef SOUND_TYPE_H +#define SOUND_TYPE_H + +#include "core/enum_type.hpp" + +struct MusicFileSettings { + byte playlist; + byte music_vol; + byte effect_vol; + byte custom_1[33]; + byte custom_2[33]; + bool playing; + bool shuffle; + char extmidi[80]; +}; + +struct FileEntry { + uint8 file_slot; + uint32 file_offset; + uint32 file_size; + uint16 rate; + uint8 bits_per_sample; + uint8 channels; + uint8 volume; + uint8 priority; +}; + +enum SoundFx { + SND_BEGIN = 0, + SND_02_SPLAT = 0, // 0 == 0x00 ! + SND_03_FACTORY_WHISTLE, + SND_04_TRAIN, + SND_05_TRAIN_THROUGH_TUNNEL, + SND_06_SHIP_HORN, + SND_07_FERRY_HORN, + SND_08_PLANE_TAKE_OFF, + SND_09_JET, + SND_0A_TRAIN_HORN, + SND_0B_MINING_MACHINERY, + SND_0C_ELECTRIC_SPARK, + SND_0D_STEAM, + SND_0E_LEVEL_CROSSING, + SND_0F_VEHICLE_BREAKDOWN, + SND_10_TRAIN_BREAKDOWN, + SND_11_CRASH, + SND_12_EXPLOSION, // 16 == 0x10 + SND_13_BIG_CRASH, + SND_14_CASHTILL, + SND_15_BEEP, // 19 == 0x13 + SND_16_MORSE, // 20 == 0x14 + SND_17_SKID_PLANE, + SND_18_HELICOPTER, + SND_19_BUS_START_PULL_AWAY, + SND_1A_BUS_START_PULL_AWAY_WITH_HORN, + SND_1B_TRUCK_START, + SND_1C_TRUCK_START_2, + SND_1D_APPLAUSE, + SND_1E_OOOOH, + SND_1F_SPLAT, // 29 == 0x1D + SND_20_SPLAT_2, // 30 == 0x1E + SND_21_JACKHAMMER, + SND_22_CAR_HORN, + SND_23_CAR_HORN_2, + SND_24_SHEEP, + SND_25_COW, + SND_26_HORSE, + SND_27_BLACKSMITH_ANVIL, + SND_28_SAWMILL, // 38 == 0x26 ! + SND_00_GOOD_YEAR, // 39 == 0x27 ! + SND_01_BAD_YEAR, // 40 == 0x28 ! + SND_29_RIP, // 41 == 0x29 ! + SND_2A_EXTRACT_AND_POP, + SND_2B_COMEDY_HIT, + SND_2C_MACHINERY, + SND_2D_RIP_2, + SND_2E_EXTRACT_AND_POP, + SND_2F_POP, + SND_30_CARTOON_SOUND, + SND_31_EXTRACT, + SND_32_POP_2, + SND_33_PLASTIC_MINE, + SND_34_WIND, + SND_35_COMEDY_BREAKDOWN, + SND_36_CARTOON_CRASH, + SND_37_BALLOON_SQUEAK, + SND_38_CHAINSAW, + SND_39_HEAVY_WIND, + SND_3A_COMEDY_BREAKDOWN_2, + SND_3B_JET_OVERHEAD, + SND_3C_COMEDY_CAR, + SND_3D_ANOTHER_JET_OVERHEAD, + SND_3E_COMEDY_CAR_2, + SND_3F_COMEDY_CAR_3, + SND_40_COMEDY_CAR_START_AND_PULL_AWAY, + SND_41_MAGLEV, + SND_42_LOON_BIRD, + SND_43_LION, + SND_44_MONKEYS, + SND_45_PLANE_CRASHING, + SND_46_PLANE_ENGINE_SPUTTERING, + SND_47_MAGLEV_2, + SND_48_DISTANT_BIRD, // 72 == 0x48 + SND_END +}; + +/** Define basic enum properties */ +template <> struct EnumPropsT<SoundFx> : MakeEnumPropsT<SoundFx, byte, SND_BEGIN, SND_END, SND_END> {}; +typedef TinyEnumT<SoundFx> SoundFxByte; + +#endif /* SOUND_TYPE_H */ |