OpenTTD Source: src/newgrf_sound.h File Reference

OpenTTD Source 12.0-beta1

Enumerations | Functions
newgrf_sound.h File Reference
`#include "sound_type.h"`
`#include "tile_type.h"`
`#include "vehicle_type.h"`

Go to the source code of this file.

## Enumerations
enum | VehicleSoundEvent { VSE_START = 1, VSE_TUNNEL = 2, VSE_BREAKDOWN = 3, VSE_RUNNING = 4, VSE_TOUCHDOWN = 5, VSE_VISUAL_EFFECT = 6, VSE_RUNNING_16 = 7, VSE_STOPPED_16 = 8, VSE_LOAD_UNLOAD = 9 }
| Events at which a sound might be played. More...

## Functions
SoundEntry * | AllocateSound (uint num)
| Allocate sound slots. More...
void | InitializeSoundPool ()
bool | LoadNewGRFSound (SoundEntry *sound)
| Extract meta data from a NewGRF sound. More...
SoundID | GetNewGRFSoundID (const struct GRFFile *file, SoundID sound_id)
SoundEntry * | GetSound (SoundID sound_id)
uint | GetNumSounds ()
bool | PlayVehicleSound (const Vehicle *v, VehicleSoundEvent event)
| Checks whether a NewGRF wants to play a different vehicle sound effect. More...
void | PlayTileSound (const struct GRFFile *file, SoundID sound_id, TileIndex tile)

## Detailed Description

Functions related to NewGRF provided sounds.

Definition in file newgrf_sound.h.

## Enumeration Type Documentation

## ◆ VehicleSoundEvent

enum VehicleSoundEvent

Events at which a sound might be played.

Enumerator
VSE_START | Vehicle starting, i.e. leaving, the station.
VSE_TUNNEL | Train entering a tunnel.
VSE_BREAKDOWN | Vehicle breaking down.
VSE_RUNNING | Vehicle running normally.
VSE_TOUCHDOWN | Whenever a plane touches down.
VSE_VISUAL_EFFECT | Vehicle visual effect (steam, diesel smoke or electric spark) is shown.
VSE_RUNNING_16 | Every 16 ticks while the vehicle is running (speed > 0).
VSE_STOPPED_16 | Every 16 ticks while the vehicle is stopped (speed == 0).
VSE_LOAD_UNLOAD | Whenever cargo payment is made for a vehicle.

Definition at line 18 of file newgrf_sound.h.

## Function Documentation

## ◆ AllocateSound()

SoundEntry* AllocateSound | ( | uint | num | ) |

Allocate sound slots.

Parameters

  num | Number of slots to allocate.

Returns
  First allocated slot.

Definition at line 31 of file newgrf_sound.cpp.

## ◆ LoadNewGRFSound()

bool LoadNewGRFSound | ( | SoundEntry * | sound | ) |

Extract meta data from a NewGRF sound.

Parameters

  sound | Sound to load.

Returns
  True if a valid sound was loaded.

Definition at line 66 of file newgrf_sound.cpp.

## ◆ PlayVehicleSound()

bool PlayVehicleSound | ( | const Vehicle * | v,
|  | VehicleSoundEvent | event
| ) |  |

Checks whether a NewGRF wants to play a different vehicle sound effect.

Parameters

  v | Vehicle to play sound effect for.
  event | Trigger for the sound effect.

Returns
  false if the default sound effect shall be played instead.

Definition at line 186 of file newgrf_sound.cpp.

References _settings_client, Vehicle::GetGRF(), HasBit(), ClientSettings::sound, and SoundSettings::vehicle.

Referenced by Vehicle::HandleBreakdown(), and Train::PlayLeaveStationSound().