From a6349a74e3577316af513a8baccb1c7299388e96 Mon Sep 17 00:00:00 2001
From: matthew <matthew@owens.tech>
Date: Sat, 4 Aug 2018 15:01:57 +0100
Subject: [PATCH] removed why param in board_get_size, changed array access in
 various functions to use flatten()

---
 common/board.c | 10 +++++-----
 common/board.h |  2 +-
 2 files changed, 6 insertions(+), 6 deletions(-)

diff --git a/common/board.c b/common/board.c
index 08214c4..424f060 100644
--- a/common/board.c
+++ b/common/board.c
@@ -61,7 +61,7 @@ Tile* board_tile_at(Board* b, Point2i point)
 	Board_t *bt = (Board_t *) b;
 
 	if(is_point_valid(bt->dimensions, point)){
-		return bt->tiles[point.x + (point.y * bt->dimensions.y)];
+		return bt->tiles[ flatten(point, board_get_size(b)) ];
 	} else {
 		return NULL;
 	}
@@ -72,7 +72,7 @@ enum Terrain board_terrain_at(Board* b, Point2i point)
 	Board_t *bt = (Board_t *) b;
 
 	if(is_point_valid(bt->dimensions, point)){
-		return tile_terrain(bt->tiles[point.x + (point.y * bt->dimensions.y)]);
+		return tile_terrain(bt->tiles[flatten(point, board_get_size(b)) ]);
 	} else {
 		return IMPASSABLE;
 	}
@@ -85,17 +85,17 @@ int board_elevation_at(Board* b, Point2i point)
 		return -1;
 
 	if(is_point_valid(bt->dimensions, point)){
-		return tile_position(bt->tiles[point.x+(point.y*bt->dimensions.y)]).z;
+		return tile_position(bt->tiles[ flatten(point, board_get_size(b))]).z;
 	} else { 
 		return -1;
 	}
 }
 
-Point2i board_get_size(Board* b, const char *why)
+Point2i board_get_size(Board* b)
 {
 	Board_t *bt = (Board_t *) b;
 	if(b == NULL){
-		fprintf(stderr, "error getting board size to %s, board is NULL!", why);
+		fprintf(stderr, "error getting board size, board is NULL!");
 		return point2i(0,0);
 	} else {
 		return bt->dimensions;
diff --git a/common/board.h b/common/board.h
index 73965a9..46cc9eb 100644
--- a/common/board.h
+++ b/common/board.h
@@ -7,7 +7,7 @@ typedef struct {} Board;
 
 Board *board_init(Point2i size);
 void board_cleanup(Board* b);
-Point2i board_get_size(Board* b, const char *why);
+Point2i board_get_size(Board* b);
 
 enum Terrain board_terrain_at(Board* b, Point2i point);
 int board_elevation_at(Board* b, Point2i point);
-- 
2.20.1