summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--landscape.c13
1 files changed, 7 insertions, 6 deletions
diff --git a/landscape.c b/landscape.c
index e3cb79a5c..c697c6ae6 100644
--- a/landscape.c
+++ b/landscape.c
@@ -474,12 +474,13 @@ static void GenerateTerrain(int type, int flag)
uint y;
uint w;
uint h;
+ const Sprite* template;
const byte *p;
byte *tile;
byte direction;
r = Random();
- p = GetNonSprite((((r >> 24) * _genterrain_tbl_1[type]) >> 8) + _genterrain_tbl_2[type] + 4845);
+ template = GetSprite((((r >> 24) * _genterrain_tbl_1[type]) >> 8) + _genterrain_tbl_2[type] + 4845);
x = r & MapMaxX();
y = (r >> MapLogX()) & MapMaxY();
@@ -490,13 +491,13 @@ static void GenerateTerrain(int type, int flag)
direction = (r >> 22) & 3;
if (direction & 1) {
- w = p[1];
- h = p[2];
+ w = template->height;
+ h = template->width;
} else {
- w = p[2];
- h = p[1];
+ w = template->width;
+ h = template->height;
}
- p += 8;
+ p = template->data;
if (flag & 4) {
uint xw = x * MapSizeY();