OpenTTD: src/effectvehicle_func.h File Reference

OpenTTD

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

- File List
- Globals

Enumerations | Functions
effectvehicle_func.h File Reference

Functions related to effect vehicles. More...

`#include "vehicle_type.h"`

Go to the source code of this file.

## Enumerations
enum | EffectVehicleType { EV_CHIMNEY_SMOKE = 0, EV_STEAM_SMOKE = 1, EV_DIESEL_SMOKE = 2, EV_ELECTRIC_SPARK = 3, EV_CRASH_SMOKE = 4, EV_EXPLOSION_LARGE = 5, EV_BREAKDOWN_SMOKE = 6, EV_EXPLOSION_SMALL = 7, EV_BULLDOZER = 8, EV_BUBBLE = 9, EV_BREAKDOWN_SMOKE_AIRCRAFT = 10, EV_COPPER_MINE_SMOKE = 11, EV_END }
| Effect vehicle types. More...

## Functions
EffectVehicle * | CreateEffectVehicle (int x, int y, int z, EffectVehicleType type)
| Create an effect vehicle at a particular location.
EffectVehicle * | CreateEffectVehicleAbove (int x, int y, int z, EffectVehicleType type)
| Create an effect vehicle above a particular location.
EffectVehicle * | CreateEffectVehicleRel (const Vehicle *v, int x, int y, int z, EffectVehicleType type)
| Create an effect vehicle above a particular vehicle.

## Detailed Description

Functions related to effect vehicles.

Definition in file effectvehicle_func.h.

## Enumeration Type Documentation

enum EffectVehicleType

Effect vehicle types.

Enumerator:

  EV_CHIMNEY_SMOKE | Smoke of power plant (industry).
  EV_STEAM_SMOKE | Smoke of steam engines.
  EV_DIESEL_SMOKE | Smoke of diesel engines.
  EV_ELECTRIC_SPARK | Sparcs of electric engines.
  EV_CRASH_SMOKE | Smoke of disasters.
  EV_EXPLOSION_LARGE | Various explosions.
  EV_BREAKDOWN_SMOKE | Smoke of broken vehicles except aircraft.
  EV_EXPLOSION_SMALL | Various explosions.
  EV_BULLDOZER | Bulldozer at roadworks.
  EV_BUBBLE | Bubble of bubble generator (industry).
  EV_BREAKDOWN_SMOKE_AIRCRAFT | Smoke of broken aircraft.
  EV_COPPER_MINE_SMOKE | Smoke at copper mine.

Definition at line 18 of file effectvehicle_func.h.

## Function Documentation

EffectVehicle* CreateEffectVehicle | ( | int | x,
|  | int | y,
|  | int | z,
|  | EffectVehicleType | type
| ) |  |

Create an effect vehicle at a particular location.

Parameters

  x | The x location on the map.
  y | The y location on the map.
  z | The z location on the map.
  type | The type of effect vehicle.

Returns
  The effect vehicle.

Definition at line 595 of file effectvehicle.cpp.

References Pool< Titem, Tindex, Tgrowth_step, Tmax_size, Tpool_type, Tcache, Tzero >::PoolItem<&_vehicle_pool >::CanAllocateItem(), INVALID_DIR, Vehicle::subtype, Vehicle::tile, EffectVehicle::UpdateDeltaXY(), Vehicle::UpdatePositionAndViewport(), Vehicle::vehstatus, VS_UNCLICKABLE, Vehicle::x_pos, Vehicle::y_pos, and Vehicle::z_pos.

Referenced by CreateEffectVehicleAbove(), and CreateEffectVehicleRel().

EffectVehicle* CreateEffectVehicleAbove | ( | int | x,
|  | int | y,
|  | int | z,
|  | EffectVehicleType | type
| ) |  |

Create an effect vehicle above a particular location.

Parameters

  x | The x location on the map.
  y | The y location on the map.
  z | The offset from the ground.
  type | The type of effect vehicle.

Returns
  The effect vehicle.

Definition at line 623 of file effectvehicle.cpp.

References Clamp(), CreateEffectVehicle(), MapMaxX(), MapMaxY(), and TILE_SIZE.

Referenced by CmdClearArea(), DisasterTick_Aircraft(), and DisasterTick_Big_Ufo_Destroyer().

EffectVehicle* CreateEffectVehicleRel | ( | const Vehicle * | v,
|  | int | x,
|  | int | y,
|  | int | z,
|  | EffectVehicleType | type
| ) |  |

Create an effect vehicle above a particular vehicle.

Parameters

  v | The vehicle to base the position on.
  x | The x offset to the vehicle.
  y | The y offset to the vehicle.
  z | The z offset to the vehicle.
  type | The type of effect vehicle.

Returns
  The effect vehicle.

Definition at line 639 of file effectvehicle.cpp.

References CreateEffectVehicle(), Vehicle::x_pos, Vehicle::y_pos, and Vehicle::z_pos.

Referenced by CrashAirplane(), DisasterTick_Big_Ufo_Destroyer(), DisasterTick_Ufo(), DisasterTick_Zeppeliner(), FloodVehicle(), HandleAircraftSmoke(), Vehicle::HandleBreakdown(), HandleCrashedAircraft(), HandleCrashedTrain(), RoadVehIsCrashed(), Vehicle::ShowVisualEffect(), and SpawnAdvancedVisualEffect().