OpenTTD Source: src/newgrf_callbacks.h File Reference

OpenTTD Source 13.2.1

Enumerations | Variables
newgrf_callbacks.h File Reference

Go to the source code of this file.

## Enumerations
enum | CallbackID { CBID_NO_CALLBACK = 0x00, CBID_RANDOM_TRIGGER = 0x01, CBID_VEHICLE_VISUAL_EFFECT = 0x10, CBID_VEHICLE_LENGTH = 0x11, CBID_VEHICLE_LOAD_AMOUNT = 0x12, CBID_STATION_AVAILABILITY = 0x13, CBID_STATION_SPRITE_LAYOUT = 0x14, CBID_VEHICLE_REFIT_CAPACITY = 0x15, CBID_VEHICLE_ARTIC_ENGINE = 0x16, CBID_HOUSE_ALLOW_CONSTRUCTION = 0x17, CBID_GENERIC_AI_PURCHASE_SELECTION = 0x18, CBID_VEHICLE_CARGO_SUFFIX = 0x19, CBID_HOUSE_ANIMATION_NEXT_FRAME = 0x1A, CBID_HOUSE_ANIMATION_START_STOP = 0x1B, CBID_HOUSE_CONSTRUCTION_STATE_CHANGE = 0x1C, CBID_TRAIN_ALLOW_WAGON_ATTACH = 0x1D, CBID_HOUSE_COLOUR = 0x1E, CBID_HOUSE_CARGO_ACCEPTANCE = 0x1F, CBID_HOUSE_ANIMATION_SPEED = 0x20, CBID_HOUSE_DESTRUCTION = 0x21, CBID_INDUSTRY_PROBABILITY = 0x22, CBID_VEHICLE_ADDITIONAL_TEXT = 0x23, CBID_STATION_TILE_LAYOUT = 0x24, CBID_INDTILE_ANIM_START_STOP = 0x25, CBID_INDTILE_ANIM_NEXT_FRAME = 0x26, CBID_INDTILE_ANIMATION_SPEED = 0x27, CBID_INDUSTRY_LOCATION = 0x28, CBID_INDUSTRY_PRODUCTION_CHANGE = 0x29, CBID_HOUSE_ACCEPT_CARGO = 0x2A, CBID_INDTILE_CARGO_ACCEPTANCE = 0x2B, CBID_INDTILE_ACCEPT_CARGO = 0x2C, CBID_VEHICLE_COLOUR_MAPPING = 0x2D, CBID_HOUSE_PRODUCE_CARGO = 0x2E, CBID_INDTILE_SHAPE_CHECK = 0x2F, CBID_INDTILE_DRAW_FOUNDATIONS = 0x30, CBID_VEHICLE_START_STOP_CHECK = 0x31, CBID_VEHICLE_32DAY_CALLBACK = 0x32, CBID_VEHICLE_SOUND_EFFECT = 0x33, CBID_VEHICLE_AUTOREPLACE_SELECTION = 0x34, CBID_INDUSTRY_MONTHLYPROD_CHANGE = 0x35, CBID_VEHICLE_MODIFY_PROPERTY = 0x36, CBID_INDUSTRY_CARGO_SUFFIX = 0x37, CBID_INDUSTRY_FUND_MORE_TEXT = 0x38, CBID_CARGO_PROFIT_CALC = 0x39, CBID_INDUSTRY_WINDOW_MORE_TEXT = 0x3A, CBID_INDUSTRY_SPECIAL_EFFECT = 0x3B, CBID_INDTILE_AUTOSLOPE = 0x3C, CBID_INDUSTRY_REFUSE_CARGO = 0x3D, CBID_STATION_ANIM_START_STOP = 0x140, CBID_STATION_ANIM_NEXT_FRAME = 0x141, CBID_STATION_ANIMATION_SPEED = 0x142, CBID_HOUSE_DENY_DESTRUCTION = 0x143, CBID_SOUNDS_AMBIENT_EFFECT = 0x144, CBID_CARGO_STATION_RATING_CALC = 0x145, CBID_NEW_SIGNALS_SPRITE_DRAW = 0x146, CBID_CANALS_SPRITE_OFFSET = 0x147, CBID_HOUSE_WATCHED_CARGO_ACCEPTED = 0x148, CBID_STATION_LAND_SLOPE_CHECK = 0x149, CBID_INDUSTRY_DECIDE_COLOUR = 0x14A, CBID_INDUSTRY_INPUT_CARGO_TYPES = 0x14B, CBID_INDUSTRY_OUTPUT_CARGO_TYPES = 0x14C, CBID_HOUSE_CUSTOM_NAME = 0x14D, CBID_HOUSE_DRAW_FOUNDATIONS = 0x14E, CBID_HOUSE_AUTOSLOPE = 0x14F, CBID_AIRPTILE_DRAW_FOUNDATIONS = 0x150, CBID_AIRPTILE_ANIM_START_STOP = 0x152, CBID_AIRPTILE_ANIM_NEXT_FRAME = 0x153, CBID_AIRPTILE_ANIMATION_SPEED = 0x154, CBID_AIRPORT_ADDITIONAL_TEXT = 0x155, CBID_AIRPORT_LAYOUT_NAME = 0x156, CBID_OBJECT_LAND_SLOPE_CHECK = 0x157, CBID_OBJECT_ANIMATION_NEXT_FRAME = 0x158, CBID_OBJECT_ANIMATION_START_STOP = 0x159, CBID_OBJECT_ANIMATION_SPEED = 0x15A, CBID_OBJECT_COLOUR = 0x15B, CBID_OBJECT_FUND_MORE_TEXT = 0x15C, CBID_OBJECT_AUTOSLOPE = 0x15D, CBID_VEHICLE_REFIT_COST = 0x15E, CBID_INDUSTRY_PROD_CHANGE_BUILD = 0x15F, CBID_VEHICLE_SPAWN_VISUAL_EFFECT = 0x160, CBID_VEHICLE_NAME = 0x161 }
| List of implemented NewGRF callbacks. More...
enum | VehicleCallbackMask { CBM_VEHICLE_VISUAL_EFFECT = 0, CBM_VEHICLE_LENGTH = 1, CBM_VEHICLE_LOAD_AMOUNT = 2, CBM_VEHICLE_REFIT_CAPACITY = 3, CBM_VEHICLE_ARTIC_ENGINE = 4, CBM_VEHICLE_CARGO_SUFFIX = 5, CBM_VEHICLE_COLOUR_REMAP = 6, CBM_VEHICLE_SOUND_EFFECT = 7, CBM_VEHICLE_NAME = 8 }
| Callback masks for vehicles, indicates which callbacks are used by a vehicle. More...
enum | StationCallbackMask { CBM_STATION_AVAIL = 0, CBM_STATION_SPRITE_LAYOUT = 1, CBM_STATION_ANIMATION_NEXT_FRAME = 2, CBM_STATION_ANIMATION_SPEED = 3, CBM_STATION_SLOPE_CHECK = 4 }
| Callback masks for stations. More...
enum | HouseCallbackMask { CBM_HOUSE_ALLOW_CONSTRUCTION = 0, CBM_HOUSE_ANIMATION_NEXT_FRAME = 1, CBM_HOUSE_ANIMATION_START_STOP = 2, CBM_HOUSE_CONSTRUCTION_STATE_CHANGE = 3, CBM_HOUSE_COLOUR = 4, CBM_HOUSE_CARGO_ACCEPTANCE = 5, CBM_HOUSE_ANIMATION_SPEED = 6, CBM_HOUSE_DESTRUCTION = 7, CBM_HOUSE_ACCEPT_CARGO = 8, CBM_HOUSE_PRODUCE_CARGO = 9, CBM_HOUSE_DENY_DESTRUCTION = 10, CBM_HOUSE_DRAW_FOUNDATIONS = 11, CBM_HOUSE_AUTOSLOPE = 12 }
| Callback masks for houses. More...
enum | CanalCallbackMask { CBM_CANAL_SPRITE_OFFSET = 0 }
| Callback masks for canals. More...
enum | CargoCallbackMask { CBM_CARGO_PROFIT_CALC = 0, CBM_CARGO_STATION_RATING_CALC = 1 }
| Callback masks for cargoes. More...
enum | IndustryCallbackMask { CBM_IND_PROBABILITY = 0, CBM_IND_PRODUCTION_CARGO_ARRIVAL = 1, CBM_IND_PRODUCTION_256_TICKS = 2, CBM_IND_LOCATION = 3, CBM_IND_PRODUCTION_CHANGE = 4, CBM_IND_MONTHLYPROD_CHANGE = 5, CBM_IND_CARGO_SUFFIX = 6, CBM_IND_FUND_MORE_TEXT = 7, CBM_IND_WINDOW_MORE_TEXT = 8, CBM_IND_SPECIAL_EFFECT = 9, CBM_IND_REFUSE_CARGO = 10, CBM_IND_DECIDE_COLOUR = 11, CBM_IND_INPUT_CARGO_TYPES = 12, CBM_IND_OUTPUT_CARGO_TYPES = 13, CBM_IND_PROD_CHANGE_BUILD = 14 }
| Callback masks for Industries. More...
enum | IndustryTileCallbackMask { CBM_INDT_ANIM_NEXT_FRAME = 0, CBM_INDT_ANIM_SPEED = 1, CBM_INDT_CARGO_ACCEPTANCE = 2, CBM_INDT_ACCEPT_CARGO = 3, CBM_INDT_SHAPE_CHECK = 4, CBM_INDT_DRAW_FOUNDATIONS = 5, CBM_INDT_AUTOSLOPE = 6 }
| Callback masks for industry tiles. More...
enum | ObjectCallbackMask { CBM_OBJ_SLOPE_CHECK = 0, CBM_OBJ_ANIMATION_NEXT_FRAME = 1, CBM_OBJ_ANIMATION_SPEED = 2, CBM_OBJ_COLOUR = 3, CBM_OBJ_FUND_MORE_TEXT = 4, CBM_OBJ_AUTOSLOPE = 5 }
| Callback masks for objects. More...
enum | AirportTileCallbackMask { CBM_AIRT_ANIM_NEXT_FRAME = 0, CBM_AIRT_ANIM_SPEED = 1, CBM_AIRT_SHAPE_CHECK = 4, CBM_AIRT_DRAW_FOUNDATIONS = 5, CBM_AIRT_AUTOSLOPE = 6 }
| Callback masks for airport tiles. More...

## Variables
static const uint | CALLBACK_FAILED = 0xFFFF
| Different values for Callback result evaluations. More...
static const uint | CALLBACK_HOUSEPRODCARGO_END = 0x20FF
| Sentinel indicating that the loop for CBID_HOUSE_PRODUCE_CARGO has ended.

## Detailed Description

Callbacks that NewGRFs could implement.

Definition in file newgrf_callbacks.h.

## Enumeration Type Documentation

## ◆ AirportTileCallbackMask

enum AirportTileCallbackMask

Callback masks for airport tiles.

Enumerator
CBM_AIRT_ANIM_NEXT_FRAME | decides next animation frame
CBM_AIRT_ANIM_SPEED | decides animation speed
CBM_AIRT_SHAPE_CHECK | decides slope suitability
CBM_AIRT_DRAW_FOUNDATIONS | decides if default foundations need to be drawn
CBM_AIRT_AUTOSLOPE | decides allowance of autosloping

Definition at line 397 of file newgrf_callbacks.h.

## ◆ CallbackID

enum CallbackID

List of implemented NewGRF callbacks.

Most of these callbacks are only triggered when the corresponding bit is set in the callback flags/trigger for a vehicle, house, industry, etc. Names are formatted as CBID_<CLASS>_<CALLBACK>

Enumerator
CBID_NO_CALLBACK | Set when using the callback resolve system, but not to resolve a callback.
CBID_RANDOM_TRIGGER | Set when calling a randomizing trigger (almost undocumented).
CBID_VEHICLE_VISUAL_EFFECT | Visual effects and wagon power.
CBID_VEHICLE_LENGTH | Vehicle length, returns the amount of 1/8's the vehicle is shorter for trains and RVs.
CBID_VEHICLE_LOAD_AMOUNT | Determine the amount of cargo to load per unit of time when using gradual loading.
CBID_STATION_AVAILABILITY | Determine whether a newstation should be made available to build.
CBID_STATION_SPRITE_LAYOUT | Choose a sprite layout to draw, instead of the standard 0-7 range.
CBID_VEHICLE_REFIT_CAPACITY | Refit capacity, the passed vehicle needs to have its ->cargo_type set to the cargo we are refitting to, returns the new cargo capacity.
CBID_VEHICLE_ARTIC_ENGINE | Builds articulated engines for trains and RVs.
CBID_HOUSE_ALLOW_CONSTRUCTION | Determine whether the house can be built on the specified tile.
CBID_GENERIC_AI_PURCHASE_SELECTION | AI construction/purchase selection.
CBID_VEHICLE_CARGO_SUFFIX | Determine the cargo "suffixes" for each refit possibility of a cargo.
CBID_HOUSE_ANIMATION_NEXT_FRAME | Determine the next animation frame for a house.
CBID_HOUSE_ANIMATION_START_STOP | Called for periodically starting or stopping the animation.
CBID_HOUSE_CONSTRUCTION_STATE_CHANGE | Called whenever the construction state of a house changes.
CBID_TRAIN_ALLOW_WAGON_ATTACH | Determine whether a wagon can be attached to an already existing train.
CBID_HOUSE_COLOUR | Called to determine the colour of a town building.
CBID_HOUSE_CARGO_ACCEPTANCE | Called to decide how much cargo a town building can accept.
CBID_HOUSE_ANIMATION_SPEED | Called to indicate how long the current animation frame should last.
CBID_HOUSE_DESTRUCTION | Called periodically to determine if a house should be destroyed.
CBID_INDUSTRY_PROBABILITY | Called to determine if the given industry type is available. For grf version >= 8 also a probability can be returned.
CBID_VEHICLE_ADDITIONAL_TEXT | This callback is called from vehicle purchase lists. It returns a value to be used as a custom string ID in the 0xD000 range.
CBID_STATION_TILE_LAYOUT | Called when building a station to customize the tile layout.
CBID_INDTILE_ANIM_START_STOP | Called for periodically starting or stopping the animation.
CBID_INDTILE_ANIM_NEXT_FRAME | Called to determine industry tile next animation frame.
CBID_INDTILE_ANIMATION_SPEED | Called to indicate how long the current animation frame should last.
CBID_INDUSTRY_LOCATION | Called to determine if the given industry can be built on specific area.
CBID_INDUSTRY_PRODUCTION_CHANGE | Called on production changes, so it can be adjusted.
CBID_HOUSE_ACCEPT_CARGO | Called to determine which cargoes a town building should accept.
CBID_INDTILE_CARGO_ACCEPTANCE | Called to query the cargo acceptance of the industry tile.
CBID_INDTILE_ACCEPT_CARGO | Called to determine which cargoes an industry should accept.
CBID_VEHICLE_COLOUR_MAPPING | Called to determine if a specific colour map should be used for a vehicle instead of the default livery.
CBID_HOUSE_PRODUCE_CARGO | Called to determine how much cargo a town building produces.
CBID_INDTILE_SHAPE_CHECK | Called to determine if the given industry tile can be built on specific tile.
CBID_INDTILE_DRAW_FOUNDATIONS | Called to determine the type (if any) of foundation to draw for industry tile.
CBID_VEHICLE_START_STOP_CHECK | Called when the company (or AI) tries to start or stop a vehicle. Mainly used for preventing a vehicle from leaving the depot.
CBID_VEHICLE_32DAY_CALLBACK | Called for every vehicle every 32 days (not all on same date though).
CBID_VEHICLE_SOUND_EFFECT | Called to play a special sound effect.
CBID_VEHICLE_AUTOREPLACE_SELECTION | Return the vehicles this given vehicle can be "upgraded" to.
CBID_INDUSTRY_MONTHLYPROD_CHANGE | Called monthly on production changes, so it can be adjusted more frequently.
CBID_VEHICLE_MODIFY_PROPERTY | Called to modify various vehicle properties. Callback parameter 1 specifies the property index, as used in Action 0, to change.
CBID_INDUSTRY_CARGO_SUFFIX | Called to determine text to display after cargo name.
CBID_INDUSTRY_FUND_MORE_TEXT | Called to determine more text in the fund industry window.
CBID_CARGO_PROFIT_CALC | Called to calculate the income of delivered cargo.
CBID_INDUSTRY_WINDOW_MORE_TEXT | Called to determine more text in the industry window.
CBID_INDUSTRY_SPECIAL_EFFECT | Called to determine industry special effects.
CBID_INDTILE_AUTOSLOPE | Called to determine if industry can alter the ground below industry tile.
CBID_INDUSTRY_REFUSE_CARGO | Called to determine if the industry can still accept or refuse more cargo arrival.
CBID_STATION_ANIM_START_STOP | Called for periodically starting or stopping the animation.
CBID_STATION_ANIM_NEXT_FRAME | Called to determine station tile next animation frame.
CBID_STATION_ANIMATION_SPEED | Called to indicate how long the current animation frame should last.
CBID_HOUSE_DENY_DESTRUCTION | Called to determine whether a town building can be destroyed.
CBID_SOUNDS_AMBIENT_EFFECT | Select an ambient sound to play for a given type of tile.
CBID_CARGO_STATION_RATING_CALC | Called to calculate part of a station rating.
CBID_NEW_SIGNALS_SPRITE_DRAW | Allow signal sprites to be replaced dynamically.
CBID_CANALS_SPRITE_OFFSET | Add an offset to the default sprite numbers to show another sprite.
CBID_HOUSE_WATCHED_CARGO_ACCEPTED | Called when a cargo type specified in property 20 is accepted.
CBID_STATION_LAND_SLOPE_CHECK | Callback done for each tile of a station to check the slope.
CBID_INDUSTRY_DECIDE_COLOUR | Called to determine the colour of an industry.
CBID_INDUSTRY_INPUT_CARGO_TYPES | Customize the input cargo types of a newly build industry.
CBID_INDUSTRY_OUTPUT_CARGO_TYPES | Customize the output cargo types of a newly build industry.
CBID_HOUSE_CUSTOM_NAME | Called on the Get Tile Description for an house tile.
CBID_HOUSE_DRAW_FOUNDATIONS | Called to determine the type (if any) of foundation to draw for house tile.
CBID_HOUSE_AUTOSLOPE | Called to determine if one can alter the ground below a house tile.
CBID_AIRPTILE_DRAW_FOUNDATIONS | Called to determine the type (if any) of foundation to draw for an airport tile.
CBID_AIRPTILE_ANIM_START_STOP | Called for periodically starting or stopping the animation.
CBID_AIRPTILE_ANIM_NEXT_FRAME | Called to determine airport tile next animation frame.
CBID_AIRPTILE_ANIMATION_SPEED | Called to indicate how long the current animation frame should last.
CBID_AIRPORT_ADDITIONAL_TEXT | This callback is called from airport list. It returns a value to be used as a custom string ID in the 0xD000 range.
CBID_AIRPORT_LAYOUT_NAME | Called to determine text to show as airport layout name.
CBID_OBJECT_LAND_SLOPE_CHECK | Callback done for each tile of an object to check the slope.
CBID_OBJECT_ANIMATION_NEXT_FRAME | Determine the next animation frame for a house.
CBID_OBJECT_ANIMATION_START_STOP | Called for periodically starting or stopping the animation.
CBID_OBJECT_ANIMATION_SPEED | Called to indicate how long the current animation frame should last.
CBID_OBJECT_COLOUR | Called to determine the colour of a town building.
CBID_OBJECT_FUND_MORE_TEXT | Called to determine more text in the fund object window.
CBID_OBJECT_AUTOSLOPE | Called to determine if one can alter the ground below an object tile.
CBID_VEHICLE_REFIT_COST | Called to determine the cost factor for refitting a vehicle.
CBID_INDUSTRY_PROD_CHANGE_BUILD | Called when industry is built to set initial production level.
CBID_VEHICLE_SPAWN_VISUAL_EFFECT | Called to spawn visual effects for vehicles.
CBID_VEHICLE_NAME | Called to determine the engine name to show.

Definition at line 20 of file newgrf_callbacks.h.

## ◆ CanalCallbackMask

enum CanalCallbackMask

Callback masks for canals.

Enumerator
CBM_CANAL_SPRITE_OFFSET | Enable add sprite offset callback.

Definition at line 336 of file newgrf_callbacks.h.

## ◆ CargoCallbackMask

enum CargoCallbackMask

Callback masks for cargoes.

Enumerator
CBM_CARGO_PROFIT_CALC | custom profit calculation
CBM_CARGO_STATION_RATING_CALC | custom station rating for this cargo type

Definition at line 343 of file newgrf_callbacks.h.

## ◆ HouseCallbackMask

enum HouseCallbackMask

Callback masks for houses.

Enumerator
CBM_HOUSE_ALLOW_CONSTRUCTION | decide whether the house can be built on a given tile
CBM_HOUSE_ANIMATION_NEXT_FRAME | decides next animation frame
CBM_HOUSE_ANIMATION_START_STOP | periodically start/stop the animation
CBM_HOUSE_CONSTRUCTION_STATE_CHANGE | change animation when construction state changes
CBM_HOUSE_COLOUR | decide the colour of the building
CBM_HOUSE_CARGO_ACCEPTANCE | decides amount of cargo acceptance
CBM_HOUSE_ANIMATION_SPEED | decides animation speed
CBM_HOUSE_DESTRUCTION | trigger destruction of building
CBM_HOUSE_ACCEPT_CARGO | decides accepted types
CBM_HOUSE_PRODUCE_CARGO | custom cargo production
CBM_HOUSE_DENY_DESTRUCTION | conditional protection
CBM_HOUSE_DRAW_FOUNDATIONS | decides if default foundations need to be drawn
CBM_HOUSE_AUTOSLOPE | decides allowance of autosloping

Definition at line 317 of file newgrf_callbacks.h.

## ◆ IndustryCallbackMask

enum IndustryCallbackMask

Callback masks for Industries.

Enumerator
CBM_IND_PROBABILITY | industry availability/probability callback
CBM_IND_PRODUCTION_CARGO_ARRIVAL | call production callback when cargo arrives at the industry
CBM_IND_PRODUCTION_256_TICKS | call production callback every 256 ticks
CBM_IND_LOCATION | check industry construction on given area
CBM_IND_PRODUCTION_CHANGE | controls random production change
CBM_IND_MONTHLYPROD_CHANGE | controls monthly random production change
CBM_IND_CARGO_SUFFIX | cargo sub-type display
CBM_IND_FUND_MORE_TEXT | additional text in fund window
CBM_IND_WINDOW_MORE_TEXT | additional text in industry window
CBM_IND_SPECIAL_EFFECT | control special effects
CBM_IND_REFUSE_CARGO | option out of accepting cargo
CBM_IND_DECIDE_COLOUR | give a custom colour to newly build industries
CBM_IND_INPUT_CARGO_TYPES | customize the cargoes the industry requires
CBM_IND_OUTPUT_CARGO_TYPES | customize the cargoes the industry produces
CBM_IND_PROD_CHANGE_BUILD | initialise production level on construction

Definition at line 351 of file newgrf_callbacks.h.

## ◆ IndustryTileCallbackMask

enum IndustryTileCallbackMask

Callback masks for industry tiles.

Enumerator
CBM_INDT_ANIM_NEXT_FRAME | decides next animation frame
CBM_INDT_ANIM_SPEED | decides animation speed
CBM_INDT_CARGO_ACCEPTANCE | decides amount of cargo acceptance
CBM_INDT_ACCEPT_CARGO | decides accepted types
CBM_INDT_SHAPE_CHECK | decides slope suitability
CBM_INDT_DRAW_FOUNDATIONS | decides if default foundations need to be drawn
CBM_INDT_AUTOSLOPE | decides allowance of autosloping

Definition at line 372 of file newgrf_callbacks.h.

## ◆ ObjectCallbackMask

enum ObjectCallbackMask

Callback masks for objects.

Enumerator
CBM_OBJ_SLOPE_CHECK | decides slope suitability
CBM_OBJ_ANIMATION_NEXT_FRAME | decides next animation frame
CBM_OBJ_ANIMATION_SPEED | decides animation speed
CBM_OBJ_COLOUR | decide the colour of the building
CBM_OBJ_FUND_MORE_TEXT | additional text in fund window
CBM_OBJ_AUTOSLOPE | decides allowance of autosloping

Definition at line 385 of file newgrf_callbacks.h.

## ◆ StationCallbackMask

enum StationCallbackMask

Callback masks for stations.

Enumerator
CBM_STATION_AVAIL | Availability of station in construction window.
CBM_STATION_SPRITE_LAYOUT | Use callback to select a sprite layout to use.
CBM_STATION_ANIMATION_NEXT_FRAME | Use a custom next frame callback.
CBM_STATION_ANIMATION_SPEED | Customize the animation speed of the station.
CBM_STATION_SLOPE_CHECK | Check slope of new station tiles.

Definition at line 306 of file newgrf_callbacks.h.

## ◆ VehicleCallbackMask

enum VehicleCallbackMask

Callback masks for vehicles, indicates which callbacks are used by a vehicle.

Some callbacks are always used and don't have a mask.

Enumerator
CBM_VEHICLE_VISUAL_EFFECT | Visual effects and wagon power (trains, road vehicles and ships)
CBM_VEHICLE_LENGTH | Vehicle length (trains and road vehicles)
CBM_VEHICLE_LOAD_AMOUNT | Load amount.
CBM_VEHICLE_REFIT_CAPACITY | Cargo capacity after refit.
CBM_VEHICLE_ARTIC_ENGINE | Add articulated engines (trains and road vehicles)
CBM_VEHICLE_CARGO_SUFFIX | Show suffix after cargo name.
CBM_VEHICLE_COLOUR_REMAP | Change colour mapping of vehicle.
CBM_VEHICLE_SOUND_EFFECT | Vehicle uses custom sound effects.
CBM_VEHICLE_NAME | Engine name.

Definition at line 291 of file newgrf_callbacks.h.

## Variable Documentation

## ◆ CALLBACK_FAILED

const uint CALLBACK_FAILED = 0xFFFF
| static

Different values for Callback result evaluations.

Result of a failed callback.

Definition at line 408 of file newgrf_callbacks.h.

Referenced by AnimationBase< IndustryAnimationBase, IndustryTileSpec, Industry, int, GetSimpleIndustryCallback >::AnimateTile(), AnimationBase< IndustryAnimationBase, IndustryTileSpec, Industry, int, GetSimpleIndustryCallback >::ChangeAnimationFrame(), CheckTrainAttachment(), CmdStartStopVehicle(), Convert8bitBooleanCallback(), ConvertBooleanCallback(), GetAiPurchaseCallbackResult(), GetAirportTextCallback(), GetCanalSpriteOffset(), GetCargoSuffix(), GetIndustryProbabilityCallback(), GetLoadAmount(), GetNextArticulatedPart(), GetRefitCostFactor(), GetRoadVehLength(), IndustryTemporarilyRefusesCargo(), DeterministicSpriteGroup::Resolve(), and Vehicle::UpdateVisualEffect().