summaryrefslogtreecommitdiff
path: root/src/map.cpp
diff options
context:
space:
mode:
authorBjørn Lindeijer <bjorn@lindeijer.nl>2005-02-06 22:13:39 +0000
committerBjørn Lindeijer <bjorn@lindeijer.nl>2005-02-06 22:13:39 +0000
commit87b7dec3f5978893d897e1d61ddaf0e793a33b05 (patch)
tree4c96f6b1f6e164bc80b9db511a7314564d90a3fb /src/map.cpp
parent819c303db467086d714ad663b285b44cde6329cf (diff)
downloadMana-87b7dec3f5978893d897e1d61ddaf0e793a33b05.tar.gz
Mana-87b7dec3f5978893d897e1d61ddaf0e793a33b05.tar.bz2
Mana-87b7dec3f5978893d897e1d61ddaf0e793a33b05.tar.xz
Mana-87b7dec3f5978893d897e1d61ddaf0e793a33b05.zip
Added setSize function to Map.
Diffstat (limited to 'src/map.cpp')
-rw-r--r--src/map.cpp12
1 files changed, 11 insertions, 1 deletions
diff --git a/src/map.cpp b/src/map.cpp
index d2b1590e..a9437f9f 100644
--- a/src/map.cpp
+++ b/src/map.cpp
@@ -80,7 +80,7 @@ Tile::Tile():
Map::Map():
- width(200), height(200)
+ width(0), height(0)
{
tiles = new Tile[width * height];
}
@@ -102,6 +102,8 @@ bool Map::load(char *mapFile) {
fread(&oldMap, sizeof(MAP), 1, file);
fclose(file);
+ setSize(OLD_MAP_WIDTH, OLD_MAP_HEIGHT);
+
// Transfer tile data
int x, y;
for (y = 0; y < OLD_MAP_HEIGHT; y++) {
@@ -134,6 +136,14 @@ bool Map::load(char *mapFile) {
return true;
}
+void Map::setSize(int width, int height)
+{
+ this->width = width;
+ this->height = height;
+ delete[] tiles;
+ tiles = new Tile[width * height];
+}
+
void Map::setWalk(int x, int y, bool walkable) {
if (walkable) {
tiles[x + y * width].flags |= TILE_WALKABLE;