OpenTTD Source 20241224-master-gf74b0cf984
sound_type.h File Reference

Types related to sounds. More...

Go to the source code of this file.

Data Structures

struct  SoundEntry
 

Typedefs

typedef uint16_t SoundID
 

Enumerations

enum class  SoundSource : uint8_t { BasesetOldFormat , BasesetNewFormat , NewGRF }
 
enum  SoundFx {
  SND_BEGIN = 0 , SND_02_CONSTRUCTION_WATER = 0 , SND_03_FACTORY , SND_04_DEPARTURE_STEAM ,
  SND_05_TRAIN_THROUGH_TUNNEL , SND_06_DEPARTURE_CARGO_SHIP , SND_07_DEPARTURE_FERRY , SND_08_TAKEOFF_PROPELLER ,
  SND_09_TAKEOFF_JET , SND_0A_DEPARTURE_TRAIN , SND_0B_MINE , SND_0C_POWER_STATION ,
  SND_0D_UNUSED , SND_0E_LEVEL_CROSSING , SND_0F_BREAKDOWN_ROADVEHICLE , SND_10_BREAKDOWN_TRAIN_SHIP ,
  SND_11_UNUSED , SND_12_EXPLOSION , SND_13_TRAIN_COLLISION , SND_14_CASHTILL ,
  SND_15_BEEP , SND_16_NEWS_TICKER , SND_17_SKID_PLANE , SND_18_TAKEOFF_HELICOPTER ,
  SND_19_DEPARTURE_OLD_RV_1 , SND_1A_DEPARTURE_OLD_RV_2 , SND_1B_DEPARTURE_MODERN_BUS , SND_1C_DEPARTURE_OLD_BUS ,
  SND_1D_APPLAUSE , SND_1E_NEW_ENGINE , SND_1F_CONSTRUCTION_OTHER , SND_20_CONSTRUCTION_RAIL ,
  SND_21_ROAD_WORKS , SND_22_UNUSED , SND_23_UNUSED , SND_24_FARM_1 ,
  SND_25_FARM_2 , SND_26_FARM_3 , SND_27_CONSTRUCTION_BRIDGE , SND_28_SAWMILL ,
  SND_00_GOOD_YEAR , SND_01_BAD_YEAR , SND_29_SUGAR_MINE_2 , SND_2A_TOY_FACTORY_3 ,
  SND_2B_TOY_FACTORY_2 , SND_2C_TOY_FACTORY_1 , SND_2D_SUGAR_MINE_1 , SND_2E_BUBBLE_GENERATOR ,
  SND_2F_BUBBLE_GENERATOR_FAIL , SND_30_TOFFEE_QUARRY , SND_31_BUBBLE_GENERATOR_SUCCESS , SND_32_UNUSED ,
  SND_33_PLASTIC_MINE , SND_34_ARCTIC_SNOW_1 , SND_35_BREAKDOWN_ROADVEHICLE_TOYLAND , SND_36_LUMBER_MILL_3 ,
  SND_37_LUMBER_MILL_2 , SND_38_LUMBER_MILL_1 , SND_39_ARCTIC_SNOW_2 , SND_3A_BREAKDOWN_TRAIN_SHIP_TOYLAND ,
  SND_3B_TAKEOFF_JET_FAST , SND_3C_DEPARTURE_BUS_TOYLAND_1 , SND_3D_TAKEOFF_JET_BIG , SND_3E_DEPARTURE_BUS_TOYLAND_2 ,
  SND_3F_DEPARTURE_TRUCK_TOYLAND_1 , SND_40_DEPARTURE_TRUCK_TOYLAND_2 , SND_41_DEPARTURE_MAGLEV , SND_42_RAINFOREST_1 ,
  SND_43_RAINFOREST_2 , SND_44_RAINFOREST_3 , SND_45_TAKEOFF_PROPELLER_TOYLAND_1 , SND_46_TAKEOFF_PROPELLER_TOYLAND_2 ,
  SND_47_DEPARTURE_MONORAIL , SND_48_RAINFOREST_4 , SND_END
}
 Sound effects from baseset. More...
 

Variables

static const uint ORIGINAL_SAMPLE_COUNT = 73
 The number of sounds in the original sample.cat.
 
static const SoundID INVALID_SOUND = 0xFFFF
 
static const uint8_t SOUND_EFFECT_MAX_VOLUME = 128
 

Detailed Description

Types related to sounds.

Definition in file sound_type.h.

Typedef Documentation

◆ SoundID

typedef uint16_t SoundID

Definition at line 126 of file sound_type.h.

Enumeration Type Documentation

◆ SoundFx

enum SoundFx

Sound effects from baseset.

This enum contains the sound effects from the sound baseset. For hysterical raisins the order of sound effects in the baseset is different to the order they are referenced in TTD/NewGRF.

  • The first two sound effects from the baseset are inserted at position 39. (see translation table _sound_idx)
  • The order in the enum is the order using in TTD/NewGRF.
  • The naming of the enum values includes the position in the baseset. That is, for sound effects 0x02 to 0x28 the naming is off-by-two.
Enumerator
SND_02_CONSTRUCTION_WATER 

0 == 0x00 Construction: water infrastructure

SND_03_FACTORY 

1 == 0x01 Industry producing: factory: whistle

SND_04_DEPARTURE_STEAM 

2 == 0x02 Station departure: steam engine

SND_05_TRAIN_THROUGH_TUNNEL 

3 == 0x03 Train enters tunnel: steam engine

SND_06_DEPARTURE_CARGO_SHIP 

4 == 0x04 Station departure: cargo ships

SND_07_DEPARTURE_FERRY 

5 == 0x05 Station departure: passenger ships

SND_08_TAKEOFF_PROPELLER 

6 == 0x06 Takeoff: propeller plane (non-toyland)

SND_09_TAKEOFF_JET 

7 == 0x07 Takeoff: regular jet plane

SND_0A_DEPARTURE_TRAIN 

8 == 0x08 Station departure: diesel and electric engine

SND_0B_MINE 

9 == 0x09 Industry animation: coal/copper/gold mine: headgear

SND_0C_POWER_STATION 

10 == 0x0A Industry animation: power station: spark

SND_0D_UNUSED 

11 == 0x0B unused (1)

SND_0E_LEVEL_CROSSING 

12 == 0x0C Train passes through level crossing

SND_0F_BREAKDOWN_ROADVEHICLE 

13 == 0x0D Breakdown: road vehicle (non-toyland)

SND_10_BREAKDOWN_TRAIN_SHIP 

14 == 0x0E Breakdown: train or ship (non-toyland)

SND_11_UNUSED 

15 == 0x0F unused (2)

SND_12_EXPLOSION 

16 == 0x10 Destruction, crashes, disasters, ...

SND_13_TRAIN_COLLISION 

15 == 0x11 Train+train crash

SND_14_CASHTILL 

18 == 0x12 Income from cargo delivery

SND_15_BEEP 

19 == 0x13 GUI button click

SND_16_NEWS_TICKER 

20 == 0x14 News ticker

SND_17_SKID_PLANE 

21 == 0x15 Plane landing / touching ground

SND_18_TAKEOFF_HELICOPTER 

22 == 0x16 Takeoff: helicopter

SND_19_DEPARTURE_OLD_RV_1 

23 == 0x17 Station departure: truck and old bus (1) (non-toyland)

SND_1A_DEPARTURE_OLD_RV_2 

24 == 0x18 Station departure: truck and old bus (2) (random variation of SND_19_DEPARTURE_OLD_RV_1) (non-toyland)

SND_1B_DEPARTURE_MODERN_BUS 

25 == 0x19 Station departure: modern bus (non-toyland)

SND_1C_DEPARTURE_OLD_BUS 

26 == 0x1A Station departure: old bus (non-toyland)

SND_1D_APPLAUSE 

27 == 0x1B News: first vehicle at station

SND_1E_NEW_ENGINE 

28 == 0x1C News: new engine available

SND_1F_CONSTRUCTION_OTHER 

29 == 0x1D Construction: other (non-water, non-rail, non-bridge)

SND_20_CONSTRUCTION_RAIL 

30 == 0x1E Construction: rail infrastructure

SND_21_ROAD_WORKS 

31 == 0x1F Road reconstruction animation

SND_22_UNUSED 

32 == 0x20 unused (3)

SND_23_UNUSED 

33 == 0x21 unused (4)

SND_24_FARM_1 

34 == 0x22 Industry producing: farm (1): sheep

SND_25_FARM_2 

35 == 0x23 Industry producing: farm (2): cow

SND_26_FARM_3 

36 == 0x24 Industry producing: farm (3): horse

SND_27_CONSTRUCTION_BRIDGE 

37 == 0x25 Construction: bridge

SND_28_SAWMILL 

38 == 0x26 Industry producing: sawmill

SND_00_GOOD_YEAR 

39 == 0x27 New year: performance improved

SND_01_BAD_YEAR 

40 == 0x28 New year: performance declined

SND_29_SUGAR_MINE_2 

41 == 0x29 Industry animation: sugar mine (2): shaking sieve

SND_2A_TOY_FACTORY_3 

42 == 0x2A Industry animation: toy factory (3): eject product

SND_2B_TOY_FACTORY_2 

43 == 0x2B Industry animation: toy factory (2): stamp product

SND_2C_TOY_FACTORY_1 

44 == 0x2C Industry animation: toy factory (1): conveyor belt

SND_2D_SUGAR_MINE_1 

45 == 0x2D Industry animation: sugar mine (1): shaking sieve

SND_2E_BUBBLE_GENERATOR 

46 == 0x2E Industry animation: bubble generator (1): generate bubble

SND_2F_BUBBLE_GENERATOR_FAIL 

47 == 0x2F Industry animation: bubble generator (2a): bubble pop

SND_30_TOFFEE_QUARRY 

48 == 0x30 Industry animation: toffee quarry: drill

SND_31_BUBBLE_GENERATOR_SUCCESS 

49 == 0x31 Industry animation: bubble generator (2b): bubble slurped

SND_32_UNUSED 

50 == 0x32 unused (5)

SND_33_PLASTIC_MINE 

51 == 0x33 Industry producing: plastic fountain

SND_34_ARCTIC_SNOW_1 

52 == 0x34 Tree ambient: arctic snow (1): wind

SND_35_BREAKDOWN_ROADVEHICLE_TOYLAND 

53 == 0x35 Breakdown: road vehicle (toyland)

SND_36_LUMBER_MILL_3 

54 == 0x36 Industry animation: lumber mill (3): crashing tree

SND_37_LUMBER_MILL_2 

55 == 0x37 Industry animation: lumber mill (2): falling tree

SND_38_LUMBER_MILL_1 

56 == 0x38 Industry animation: lumber mill (1): chainsaw

SND_39_ARCTIC_SNOW_2 

57 == 0x39 Tree ambient: arctic snow (2): heavy wind

SND_3A_BREAKDOWN_TRAIN_SHIP_TOYLAND 

58 == 0x3A Breakdown: train or ship (toyland)

SND_3B_TAKEOFF_JET_FAST 

59 == 0x3B Takeoff: supersonic plane (fast)

SND_3C_DEPARTURE_BUS_TOYLAND_1 

60 == 0x3C Station departure: bus (1) (toyland)

SND_3D_TAKEOFF_JET_BIG 

61 == 0x3D Takeoff: huge jet plane (high capacity)

SND_3E_DEPARTURE_BUS_TOYLAND_2 

62 == 0x3E Station departure: bus (2) (toyland)

SND_3F_DEPARTURE_TRUCK_TOYLAND_1 

63 == 0x3F Station departure: truck (1) (toyland)

SND_40_DEPARTURE_TRUCK_TOYLAND_2 

64 == 0x40 Station departure: truck (2) (toyland)

SND_41_DEPARTURE_MAGLEV 

65 == 0x41 Station departure: maglev engine

SND_42_RAINFOREST_1 

66 == 0x42 Tree ambient: rainforest ambient (1): bird (1)

SND_43_RAINFOREST_2 

67 == 0x43 Tree ambient: rainforest ambient (2): lion

SND_44_RAINFOREST_3 

68 == 0x44 Tree ambient: rainforest ambient (3): monkeys

SND_45_TAKEOFF_PROPELLER_TOYLAND_1 

69 == 0x45 Takeoff: propeller plane (1) (toyland)

SND_46_TAKEOFF_PROPELLER_TOYLAND_2 

70 == 0x46 Takeoff: propeller plane (2) (toyland)

SND_47_DEPARTURE_MONORAIL 

71 == 0x47 Station departure: monorail engine

SND_48_RAINFOREST_4 

72 == 0x48 Tree ambient: rainforest ambient (4): bird (2)

Definition at line 45 of file sound_type.h.

◆ SoundSource

enum class SoundSource : uint8_t
strong

Definition at line 13 of file sound_type.h.

Variable Documentation

◆ INVALID_SOUND

const SoundID INVALID_SOUND = 0xFFFF
static

Definition at line 128 of file sound_type.h.

◆ ORIGINAL_SAMPLE_COUNT

const uint ORIGINAL_SAMPLE_COUNT = 73
static

The number of sounds in the original sample.cat.

Definition at line 124 of file sound_type.h.

Referenced by AircraftController(), ChangeSoundSet(), GetNewGRFSoundID(), OpenBankFile(), and SoundEffectChangeInfo().

◆ SOUND_EFFECT_MAX_VOLUME

const uint8_t SOUND_EFFECT_MAX_VOLUME = 128
static

Definition at line 130 of file sound_type.h.