mirror of https://github.com/OpenTTD/OpenTTD.git
(svn r23329) -Fix (r23316): Scale child sprite pixel offsets unless told not to. Fixes lifts and industry graphics.
This commit is contained in:
parent
2f05d090fb
commit
07633a064c
|
@ -513,7 +513,7 @@ static void AddChildSpriteToFoundation(SpriteID image, PaletteID pal, const SubS
|
||||||
int *old_child = _vd.last_child;
|
int *old_child = _vd.last_child;
|
||||||
_vd.last_child = _vd.last_foundation_child[foundation_part];
|
_vd.last_child = _vd.last_foundation_child[foundation_part];
|
||||||
|
|
||||||
AddChildSpriteScreen(image, pal, offs.x + extra_offs_x, offs.y + extra_offs_y, false, sub);
|
AddChildSpriteScreen(image, pal, offs.x + extra_offs_x, offs.y + extra_offs_y, false, sub, false);
|
||||||
|
|
||||||
/* Switch back to last ChildSprite list */
|
/* Switch back to last ChildSprite list */
|
||||||
_vd.last_child = old_child;
|
_vd.last_child = old_child;
|
||||||
|
@ -611,7 +611,7 @@ static void AddCombinedSprite(SpriteID image, PaletteID pal, int x, int y, int z
|
||||||
return;
|
return;
|
||||||
|
|
||||||
const ParentSpriteToDraw *pstd = _vd.parent_sprites_to_draw.End() - 1;
|
const ParentSpriteToDraw *pstd = _vd.parent_sprites_to_draw.End() - 1;
|
||||||
AddChildSpriteScreen(image, pal, pt.x - pstd->left, pt.y - pstd->top, false, sub);
|
AddChildSpriteScreen(image, pal, pt.x - pstd->left, pt.y - pstd->top, false, sub, false);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -794,7 +794,7 @@ bool IsInsideRotatedRectangle(int x, int y)
|
||||||
* @param transparent if true, switch the palette between the provided palette and the transparent palette,
|
* @param transparent if true, switch the palette between the provided palette and the transparent palette,
|
||||||
* @param sub Only draw a part of the sprite.
|
* @param sub Only draw a part of the sprite.
|
||||||
*/
|
*/
|
||||||
void AddChildSpriteScreen(SpriteID image, PaletteID pal, int x, int y, bool transparent, const SubSprite *sub)
|
void AddChildSpriteScreen(SpriteID image, PaletteID pal, int x, int y, bool transparent, const SubSprite *sub, bool scale)
|
||||||
{
|
{
|
||||||
assert((image & SPRITE_MASK) < MAX_SPRITES);
|
assert((image & SPRITE_MASK) < MAX_SPRITES);
|
||||||
|
|
||||||
|
@ -813,8 +813,8 @@ void AddChildSpriteScreen(SpriteID image, PaletteID pal, int x, int y, bool tran
|
||||||
cs->image = image;
|
cs->image = image;
|
||||||
cs->pal = pal;
|
cs->pal = pal;
|
||||||
cs->sub = sub;
|
cs->sub = sub;
|
||||||
cs->x = x;
|
cs->x = scale ? x * ZOOM_LVL_BASE : x;
|
||||||
cs->y = y;
|
cs->y = scale ? y * ZOOM_LVL_BASE : y;
|
||||||
cs->next = -1;
|
cs->next = -1;
|
||||||
|
|
||||||
/* Append the sprite to the active ChildSprite list.
|
/* Append the sprite to the active ChildSprite list.
|
||||||
|
|
|
@ -50,7 +50,7 @@ void OffsetGroundSprite(int x, int y);
|
||||||
void DrawGroundSprite(SpriteID image, PaletteID pal, const SubSprite *sub = NULL, int extra_offs_x = 0, int extra_offs_y = 0);
|
void DrawGroundSprite(SpriteID image, PaletteID pal, const SubSprite *sub = NULL, int extra_offs_x = 0, int extra_offs_y = 0);
|
||||||
void DrawGroundSpriteAt(SpriteID image, PaletteID pal, int32 x, int32 y, int z, const SubSprite *sub = NULL, int extra_offs_x = 0, int extra_offs_y = 0);
|
void DrawGroundSpriteAt(SpriteID image, PaletteID pal, int32 x, int32 y, int z, const SubSprite *sub = NULL, int extra_offs_x = 0, int extra_offs_y = 0);
|
||||||
void AddSortableSpriteToDraw(SpriteID image, PaletteID pal, int x, int y, int w, int h, int dz, int z, bool transparent = false, int bb_offset_x = 0, int bb_offset_y = 0, int bb_offset_z = 0, const SubSprite *sub = NULL);
|
void AddSortableSpriteToDraw(SpriteID image, PaletteID pal, int x, int y, int w, int h, int dz, int z, bool transparent = false, int bb_offset_x = 0, int bb_offset_y = 0, int bb_offset_z = 0, const SubSprite *sub = NULL);
|
||||||
void AddChildSpriteScreen(SpriteID image, PaletteID pal, int x, int y, bool transparent = false, const SubSprite *sub = NULL);
|
void AddChildSpriteScreen(SpriteID image, PaletteID pal, int x, int y, bool transparent = false, const SubSprite *sub = NULL, bool scale = true);
|
||||||
void ViewportAddString(const DrawPixelInfo *dpi, ZoomLevel small_from, const ViewportSign *sign, StringID string_normal, StringID string_small, StringID string_small_shadow, uint64 params_1, uint64 params_2 = 0, Colours colour = INVALID_COLOUR);
|
void ViewportAddString(const DrawPixelInfo *dpi, ZoomLevel small_from, const ViewportSign *sign, StringID string_normal, StringID string_small, StringID string_small_shadow, uint64 params_1, uint64 params_2 = 0, Colours colour = INVALID_COLOUR);
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue