summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authordominik <dominik@openttd.org>2004-08-14 10:05:27 +0000
committerdominik <dominik@openttd.org>2004-08-14 10:05:27 +0000
commitb3cdae2af1c6c8e33d0a506d33694e4c6b8f679f (patch)
tree1f473e55b57bac82ebabe3c01c33a0c51576de39
parentb7e14169f8c08e6d0b2921ea08738f09df6c3180 (diff)
downloadopenttd-b3cdae2af1c6c8e33d0a506d33694e4c6b8f679f.tar.xz
(svn r51) Yet another slope graphics fix
-rw-r--r--landscape.c11
-rw-r--r--table/landscape_sprite.h12
2 files changed, 15 insertions, 8 deletions
diff --git a/landscape.c b/landscape.c
index 1932d29e2..45e371bb2 100644
--- a/landscape.c
+++ b/landscape.c
@@ -246,14 +246,17 @@ bool hasFoundation(TileInfo *ti, bool direction)
{
bool south, other; // southern corner and east/west corner
uint slope = _tile_type_procs[ti->type]->get_slope_tileh_proc(ti);
- south = ((ti->tileh) & 2) != (slope & 2);
+ uint tileh = ti->tileh;
+
+ if(slope==0 && slope!=tileh) tileh=15;
+ south = (tileh & 2) != (slope & 2);
if(direction)
- other = ((ti->tileh) & 4) != (slope & 4);
+ other = (tileh & 4) != (slope & 4);
else
- other = ((ti->tileh) & 1) != (slope & 1);
-
+ other = (tileh & 1) != (slope & 1);
return south || other;
+
}
void DrawFoundation(TileInfo *ti, uint f)
diff --git a/table/landscape_sprite.h b/table/landscape_sprite.h
index 2a4cf13b2..c96445aba 100644
--- a/table/landscape_sprite.h
+++ b/table/landscape_sprite.h
@@ -132,28 +132,32 @@ static const SpriteID _landscape_spriteindexes_3[] = {
};
-/* Slope graphics indexes temperate climate */
+/* Slope graphics indexes temperate climate
+Skip first 3 sprites and only load the proper set */
static const SpriteID _slopes_spriteindexes_0[] = {
0xfffe, 3,
SPR_SLOPES_BASE, SPR_SLOPES_BASE+73,
0xffff,
};
-/* Slope graphics indexes arctic climate */
+/* Slope graphics indexes arctic climate
+Skip first 79 sprites and only load the proper set */
static const SpriteID _slopes_spriteindexes_1[] = {
0xfffe, 79,
SPR_SLOPES_BASE, SPR_SLOPES_BASE+73,
0xffff,
};
-/* Slope graphics indexes tropical climate */
+/* Slope graphics indexes tropical climate
+Skip first 155 sprites and only load the proper set */
static const SpriteID _slopes_spriteindexes_2[] = {
0xfffe, 155,
SPR_SLOPES_BASE, SPR_SLOPES_BASE+73,
0xffff,
};
-/* Slope graphics indexes toyland climate */
+/* Slope graphics indexes toyland climate
+Skip first 231 sprites and only load the proper set */
static const SpriteID _slopes_spriteindexes_3[] = {
0xfffe, 231,
SPR_SLOPES_BASE, SPR_SLOPES_BASE+73,