diff options
author | Matthias Schiffer <mschiffer@universe-factory.net> | 2014-09-26 03:13:26 +0200 |
---|---|---|
committer | Matthias Schiffer <mschiffer@universe-factory.net> | 2014-09-26 03:13:26 +0200 |
commit | 124116a8bf56ccc742e6efcb3b9e83abe97bf143 (patch) | |
tree | 7ab23aab342477c80af3a0e5c8fb98da90c94548 /src/model | |
parent | 9b91d6f3d0187e0daf29a262cf19ad08ba2b7cf5 (diff) | |
download | rpgedit-124116a8bf56ccc742e6efcb3b9e83abe97bf143.tar rpgedit-124116a8bf56ccc742e6efcb3b9e83abe97bf143.zip |
Extend map model with rotated tiles
Diffstat (limited to 'src/model')
-rw-r--r-- | src/model/Map.cpp | 9 | ||||
-rw-r--r-- | src/model/Map.hpp | 6 |
2 files changed, 9 insertions, 6 deletions
diff --git a/src/model/Map.cpp b/src/model/Map.cpp index 749b25f..cb1cb30 100644 --- a/src/model/Map.cpp +++ b/src/model/Map.cpp @@ -87,8 +87,9 @@ void Map::finishEntityTransition(Entity *entity) { std::unique_ptr<Map> Map::load(__attribute__((unused)) const std::string &name) { std::unique_ptr<Map> map(new Map(16, 16, 2)); - map->tileset.push_back("dirt"); - map->tileset.push_back("horizontal_bar"); + map->tileset.emplace_back("dirt", 0); + map->tileset.emplace_back("horizontal_bar", 0); + map->tileset.emplace_back("horizontal_bar", 2); for (int i = 0; i < 16; i++) { for (int j = 0; j < 16; j++) { @@ -100,7 +101,9 @@ std::unique_ptr<Map> Map::load(__attribute__((unused)) const std::string &name) map->setTileAt(0, Position<int>{i, j}, 0); } - if (4 <= i && i < 12 && j == 8) + if (4 <= i && i < 12 && j == 7) + map->setTileAt(1, Position<int>{i, j}, 3); + else if (4 <= i && i < 12 && j == 8) map->setTileAt(1, Position<int>{i, j}, 2); else map->setTileAt(1, Position<int>{i, j}, 0); diff --git a/src/model/Map.hpp b/src/model/Map.hpp index b8a8e18..ed58fd6 100644 --- a/src/model/Map.hpp +++ b/src/model/Map.hpp @@ -43,7 +43,7 @@ namespace Model { class _Map { protected: - std::vector<std::string> tileset; + std::vector<std::pair<std::string, int>> tileset; size_t width, height; std::vector<CollisionType> collision; @@ -160,11 +160,11 @@ public: entityStates = std::move(other.entityStates); } - std::vector<std::string> & getTileset() { + std::vector<std::pair<std::string, int>> & getTileset() { return tileset; } - const std::vector<std::string> & getTileset() const { + const std::vector<std::pair<std::string, int>> & getTileset() const { return tileset; } |