summaryrefslogtreecommitdiff
path: root/unmovable_cmd.c
diff options
context:
space:
mode:
Diffstat (limited to 'unmovable_cmd.c')
-rw-r--r--unmovable_cmd.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/unmovable_cmd.c b/unmovable_cmd.c
index 3798265ec..23e11ab50 100644
--- a/unmovable_cmd.c
+++ b/unmovable_cmd.c
@@ -184,12 +184,16 @@ static void DrawTile_Unmovable(TileInfo *ti)
static uint GetSlopeZ_Unmovable(const TileInfo* ti)
{
- return GetPartialZ(ti->x & 0xF, ti->y & 0xF, ti->tileh) + ti->z;
+ if (_m[ti->tile].m5 == 3) {
+ return ti->z + GetPartialZ(ti->x & 0xF, ti->y & 0xF, ti->tileh);
+ } else {
+ return ti->z + (ti->tileh == 0 ? 0 : 8);
+ }
}
static uint GetSlopeTileh_Unmovable(const TileInfo *ti)
{
- return 0;
+ return _m[ti->tile].m5 == 3 ? ti->tileh : 0;
}
static int32 ClearTile_Unmovable(TileIndex tile, byte flags)