|
OpenTTD Source 20251117-master-g7398d2e290
|
Base for drawing complex sprites. More...
Go to the source code of this file.
Data Structures | |
| struct | SpriteBounds |
| struct | DrawTileSeqStruct |
| A tile child sprite and palette to draw for stations etc, with 3D bounding box. More... | |
| struct | DrawTileSprites |
| Ground palette sprite of a tile, together with its sprite layout. More... | |
| struct | DrawTileSpriteSpan |
| Ground palette sprite of a tile, together with its sprite layout. More... | |
| struct | DrawBuildingsTileStruct |
| This structure is the same for both Industries and Houses. More... | |
Functions | |
| void | DrawCommonTileSeq (const struct TileInfo *ti, const DrawTileSprites *dts, TransparencyOption to, int32_t orig_offset, uint32_t newgrf_offset, PaletteID default_palette, bool child_offset_is_unsigned) |
| void | DrawCommonTileSeqInGUI (int x, int y, const DrawTileSprites *dts, int32_t orig_offset, uint32_t newgrf_offset, PaletteID default_palette, bool child_offset_is_unsigned) |
| Draws a tile sprite sequence in the GUI. | |
| void | DrawRailTileSeq (const struct TileInfo *ti, const DrawTileSprites *dts, TransparencyOption to, int32_t total_offset, uint32_t newgrf_offset, PaletteID default_palette) |
| Draw tile sprite sequence on tile with railroad specifics. | |
| void | DrawRailTileSeqInGUI (int x, int y, const DrawTileSprites *dts, int32_t total_offset, uint32_t newgrf_offset, PaletteID default_palette) |
| Draw tile sprite sequence in GUI with railroad specifics. | |
| void | DrawOrigTileSeq (const struct TileInfo *ti, const DrawTileSprites *dts, TransparencyOption to, PaletteID default_palette) |
| Draw TTD sprite sequence on tile. | |
| void | DrawOrigTileSeqInGUI (int x, int y, const DrawTileSprites *dts, PaletteID default_palette) |
| Draw TTD sprite sequence in GUI. | |
| void | DrawNewGRFTileSeq (const struct TileInfo *ti, const DrawTileSprites *dts, TransparencyOption to, uint32_t stage, PaletteID default_palette) |
| Draw NewGRF industrytile or house sprite layout. | |
| void | DrawNewGRFTileSeqInGUI (int x, int y, const DrawTileSprites *dts, uint32_t stage, PaletteID default_palette) |
| Draw NewGRF object in GUI. | |
| PaletteID | SpriteLayoutPaletteTransform (SpriteID image, PaletteID pal, PaletteID default_pal) |
| Applies PALETTE_MODIFIER_TRANSPARENT and PALETTE_MODIFIER_COLOUR to a palette entry of a sprite layout entry. | |
| PaletteID | GroundSpritePaletteTransform (SpriteID image, PaletteID pal, PaletteID default_pal) |
| Applies PALETTE_MODIFIER_COLOUR to a palette entry of a ground sprite. | |
| static PaletteID | GetColourPalette (Colours colour) |
| Get recolour palette for a colour. | |
Base for drawing complex sprites.
Definition in file sprite.h.
| void DrawCommonTileSeqInGUI | ( | int | x, |
| int | y, | ||
| const DrawTileSprites * | dts, | ||
| int32_t | orig_offset, | ||
| uint32_t | newgrf_offset, | ||
| PaletteID | default_palette, | ||
| bool | child_offset_is_unsigned | ||
| ) |
Draws a tile sprite sequence in the GUI.
| x | X position to draw to |
| y | Y position to draw to |
| dts | Sprite and subsprites to draw |
| orig_offset | Sprite-Offset for original sprites |
| newgrf_offset | Sprite-Offset for NewGRF defined sprites |
| default_palette | The default recolour sprite to use (typically company colour) |
| child_offset_is_unsigned | Whether child sprite offsets are interpreted signed or unsigned |
Definition at line 86 of file sprite.cpp.
References DrawSprite(), GB(), HasBit(), Normal, RemapCoords(), ScaleSpriteTrad(), SPRITE_MASK, SPRITE_MODIFIER_CUSTOM_SPRITE, SPRITE_WIDTH, SpriteLayoutPaletteTransform(), UnScaleGUI(), Coord2D< T >::x, Sprite::x_offs, Coord2D< T >::y, and Sprite::y_offs.
Referenced by DrawNewGRFTileSeqInGUI(), DrawOrigTileSeqInGUI(), DrawRailTileSeqInGUI(), and DrawRoadStopTile().
|
inline |
Draw NewGRF industrytile or house sprite layout.
| stage | Sprite inside the Action1 spritesets to use, i.e. construction stage. |
Definition at line 130 of file sprite.h.
References DrawCommonTileSeq().
Referenced by DrawTileLayout().
|
inline |
Draw NewGRF object in GUI.
| stage | Sprite inside the Action1 spritesets to use, i.e. construction stage. |
Definition at line 139 of file sprite.h.
References DrawCommonTileSeqInGUI().
Referenced by DrawNewHouseTileInGUI(), and DrawNewObjectTileInGUI().
|
inline |
Draw TTD sprite sequence on tile.
Definition at line 113 of file sprite.h.
References DrawCommonTileSeq().
|
inline |
Draw TTD sprite sequence in GUI.
Definition at line 121 of file sprite.h.
References DrawCommonTileSeqInGUI().
Referenced by ObjectPickerCallbacks::DrawType(), and BuildObjectWindow::DrawWidget().
|
inline |
Draw tile sprite sequence on tile with railroad specifics.
| total_offset | Spriteoffset from normal rail to current railtype. |
| newgrf_offset | Startsprite of the Action1 to use. |
Definition at line 95 of file sprite.h.
References DrawCommonTileSeq().
Referenced by DrawTile_Road().
|
inline |
Draw tile sprite sequence in GUI with railroad specifics.
| total_offset | Spriteoffset from normal rail to current railtype. |
| newgrf_offset | Startsprite of the Action1 to use. |
Definition at line 105 of file sprite.h.
References DrawCommonTileSeqInGUI().
Referenced by DrawRoadDepotSprite(), and DrawStationTile().
|
inlinestatic |
Get recolour palette for a colour.
| colour | Colour. |
Definition at line 188 of file sprite.h.
References PALETTE_RECOLOUR_START.
Referenced by DrawCompanyManagerFace(), DrawNewHouseTileInGUI(), DrawRoadTypeCatenary(), SelectCompanyLiveryWindow::DrawWidget(), GetCompanyPalette(), and SetupColoursAndInitialWindow().
|
inline |
Applies PALETTE_MODIFIER_COLOUR to a palette entry of a ground sprite.
| image | The sprite to draw |
| pal | The palette from the sprite layout |
| default_pal | The default recolour sprite to use (typically company colour resp. random industry/house colour) |
Definition at line 174 of file sprite.h.
References HasBit(), and PALETTE_MODIFIER_COLOUR.
Referenced by DrawNewHouseTileInGUI(), DrawNewObjectTileInGUI(), DrawRoadStopTile(), DrawStationTile(), and DrawTileLayout().
|
inline |
Applies PALETTE_MODIFIER_TRANSPARENT and PALETTE_MODIFIER_COLOUR to a palette entry of a sprite layout entry.
| image | The sprite to draw |
| pal | The palette from the sprite layout |
| default_pal | The default recolour sprite to use (typically company colour resp. random industry/house colour) |
Definition at line 155 of file sprite.h.
References HasBit(), PALETTE_MODIFIER_COLOUR, and PALETTE_MODIFIER_TRANSPARENT.
Referenced by DrawCommonTileSeq(), and DrawCommonTileSeqInGUI().