X-Git-Url: http://git.localhorst.tv/?a=blobdiff_plain;f=src%2Fmap%2FMap.h;h=40cce1c497259e31a719a4bcf3114c2ded2478b7;hb=978ccdf2644bc445c864dbe581ead365b238cff8;hp=8c2804d0b3641a5493aa4cbac83243cc6b97ae27;hpb=7fb774ec1df3d550cd8a6805bdc69c11ad36e498;p=l2e.git diff --git a/src/map/Map.h b/src/map/Map.h index 8c2804d..40cce1c 100644 --- a/src/map/Map.h +++ b/src/map/Map.h @@ -8,6 +8,7 @@ #ifndef MAP_MAP_H_ #define MAP_MAP_H_ +#include "Entity.h" #include "fwd.h" #include "../geometry/Vector.h" #include "../graphics/fwd.h" @@ -24,13 +25,16 @@ public: public: const graphics::Sprite *Tileset() const { return tileset; } - const Area &AreaAt(const geometry::Vector &) const; - const Tile &TileAt(const geometry::Vector &) const; + Area *AreaAt(const geometry::Vector &); + const Area *AreaAt(const geometry::Vector &) const; + Tile *TileAt(const geometry::Vector &); + const Tile *TileAt(const geometry::Vector &) const; Trigger *TriggerAt(const geometry::Vector &); + SDL_Surface *BattleBackgroundAt(const geometry::Vector &); geometry::Vector TileCoordinates(const geometry::Vector &) const; - Entity **EntitiesBegin() { return &entities; } - Entity **EntitiesEnd() { return (&entities) + numEntities; } + Entity *EntitiesBegin() { return entities; } + Entity *EntitiesEnd() { return entities + numEntities; } void Render(SDL_Surface *dest, const geometry::Vector &offset) const; void RenderDebug(SDL_Surface *dest, const geometry::Vector &offset) const; @@ -38,6 +42,7 @@ public: // temporary setters public: void SetTileset(const graphics::Sprite *t) { tileset = t; } + void SetBattleBackground(SDL_Surface *bg) { battlebg = bg; } void SetAreas(Area *a, int num) { areas = a; numAreas = num; } void SetTriggers(Trigger *t, int num) { triggers = t; numTriggers = num; } void SetEntities(Entity *e, int num) { entities = e; numEntities = num; } @@ -45,6 +50,7 @@ public: private: const graphics::Sprite *tileset; + SDL_Surface *battlebg; Area *areas; int numAreas; Trigger *triggers;