--- a/landscape.c Fri Aug 13 23:39:48 2004 +0000
+++ b/landscape.c Sat Aug 14 10:05:27 2004 +0000
@@ -246,14 +246,17 @@
{
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;
- return south || other;
}
void DrawFoundation(TileInfo *ti, uint f)
--- a/table/landscape_sprite.h Fri Aug 13 23:39:48 2004 +0000
+++ b/table/landscape_sprite.h Sat Aug 14 10:05:27 2004 +0000
@@ -132,28 +132,32 @@
};
-/* 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,