summaryrefslogtreecommitdiff
path: root/src/map.h
diff options
context:
space:
mode:
authorBjørn Lindeijer <bjorn@lindeijer.nl>2006-08-28 23:04:08 +0000
committerBjørn Lindeijer <bjorn@lindeijer.nl>2006-08-28 23:04:08 +0000
commit391203d83ed7a72b54fb7d7c72dbe35db14f0ea9 (patch)
treea9a9e14bbbdde0b48c66b99038d505a42a51609b /src/map.h
parentaf61e1e7df91b97c3f7516e9eb2b37b621f069ad (diff)
downloadmana-client-391203d83ed7a72b54fb7d7c72dbe35db14f0ea9.tar.gz
mana-client-391203d83ed7a72b54fb7d7c72dbe35db14f0ea9.tar.bz2
mana-client-391203d83ed7a72b54fb7d7c72dbe35db14f0ea9.tar.xz
mana-client-391203d83ed7a72b54fb7d7c72dbe35db14f0ea9.zip
Merged trunk development between revisions 2530 and 2618 to the 0.1.0 branch.
Diffstat (limited to 'src/map.h')
-rw-r--r--src/map.h30
1 files changed, 29 insertions, 1 deletions
diff --git a/src/map.h b/src/map.h
index a91b815f..317a0b59 100644
--- a/src/map.h
+++ b/src/map.h
@@ -41,6 +41,8 @@ typedef Tilesets::iterator TilesetIterator;
typedef std::list<Sprite*> Sprites;
typedef Sprites::iterator SpriteIterator;
+extern volatile int tick_time;
+
/**
* A meta tile stores additional information about a location on a tile map.
* This is information that doesn't need to be repeated for each tile in each
@@ -63,6 +65,16 @@ struct MetaTile
bool walkable; /**< Can beings walk on this tile */
};
+struct AmbientOverlay
+{
+ Image *image;
+ float parallax;
+ float scrollX;
+ float scrollY;
+ float scrollSpeedX;
+ float scrollSpeedY;
+};
+
/**
* A tile map.
*/
@@ -80,11 +92,21 @@ class Map : public Properties
~Map();
/**
- * Draws the map to the given graphics output.
+ * Draws a map layer to the given graphics output.
*/
void draw(Graphics *graphics, int scrollX, int scrollY, int layer);
/**
+ * Sets Overlay Graphic and Scrollspeed
+ */
+ void setOverlay(Image *image, float speedX, float speedY, float parallax);
+
+ /**
+ * Draws the overlay graphic to the given graphics output.
+ */
+ void drawOverlay(Graphics *graphics, float scrollX, float scrollY, int detail);
+
+ /**
* Sets the size of the map. This will destroy any existing map data.
*/
void setSize(int width, int height);
@@ -198,6 +220,12 @@ class Map : public Properties
// Pathfinding members
int mOnClosedList, mOnOpenList;
+
+ //overlay Data
+ AmbientOverlay mFoo;
+ std::list<AmbientOverlay> mOverlays;
+ float mLastScrollX;
+ float mLastScrollY;
};
#endif