|
OpenTTD Source 20251117-master-g7398d2e290
|
Implementation of NewGRF canals. More...
#include "stdafx.h"#include "debug.h"#include "newgrf_spritegroup.h"#include "newgrf_canal.h"#include "water.h"#include "water_map.h"#include "safeguards.h"Go to the source code of this file.
Data Structures | |
| struct | CanalScopeResolver |
| Scope resolver of a canal tile. More... | |
| struct | CanalResolverObject |
| Resolver object for canals. More... | |
Functions | |
| SpriteID | GetCanalSprite (CanalFeature feature, TileIndex tile) |
| Lookup the base sprite to use for a canal. | |
| static uint16_t | GetCanalCallback (CallbackID callback, uint32_t param1, uint32_t param2, CanalFeature feature, TileIndex tile, std::span< int32_t > regs100={}) |
| Run a specific callback for canals. | |
| uint | GetCanalSpriteOffset (CanalFeature feature, TileIndex tile, uint cur_offset) |
| Get the new sprite offset for a water tile. | |
Variables | |
| std::array< WaterFeature, CF_END > | _water_feature |
| Table of canal 'feature' sprite groups. | |
Implementation of NewGRF canals.
Definition in file newgrf_canal.cpp.
|
static |
Run a specific callback for canals.
| callback | Callback ID. | |
| param1 | Callback parameter 1. | |
| param2 | Callback parameter 2. | |
| feature | For which feature to run the callback. | |
| tile | Tile index of canal. | |
| [out] | regs100 | Additional result values from registers 100+ |
Definition at line 158 of file newgrf_canal.cpp.
Referenced by GetCanalSpriteOffset().
| SpriteID GetCanalSprite | ( | CanalFeature | feature, |
| TileIndex | tile | ||
| ) |
Lookup the base sprite to use for a canal.
| feature | Which canal feature we want. |
| tile | Tile index of canal, if appropriate. |
0 if none. Definition at line 139 of file newgrf_canal.cpp.
Referenced by DrawCanalWater(), DrawWaterEdges(), and DrawWaterLock().
| uint GetCanalSpriteOffset | ( | CanalFeature | feature, |
| TileIndex | tile, | ||
| uint | cur_offset | ||
| ) |
Get the new sprite offset for a water tile.
| tile | Tile index of the canal/water tile. |
| feature | For which feature to get the new sprite offset. |
| cur_offset | Current sprite offset. |
Definition at line 171 of file newgrf_canal.cpp.
References _water_feature, CALLBACK_FAILED, CBID_CANALS_SPRITE_OFFSET, GetCanalCallback(), and SpriteOffset.
Referenced by DrawWaterSprite(), and DrawWaterTileStruct().
| std::array<WaterFeature, CF_END> _water_feature |
Table of canal 'feature' sprite groups.
Definition at line 20 of file newgrf_canal.cpp.
Referenced by CanalResolverObject::CanalResolverObject(), DrawCanalWater(), DrawWaterLock(), FinaliseCanals(), GetCanalSpriteOffset(), and ResetNewGRFData().