summary refs log tree commit diff stats
path: root/src/map.cpp
diff options
context:
space:
mode:
authorKelly Rauchenberger <fefferburbia@gmail.com>2021-02-09 20:34:59 -0500
committerKelly Rauchenberger <fefferburbia@gmail.com>2021-02-09 20:34:59 -0500
commit315ca2fb388f790791c9ce372cf44e00d51e0e7f (patch)
tree99fd0a66ce191959c73fe5058e538a4dcd07100e /src/map.cpp
parent0c2cd251fa0427b19f7c995bc7da7319d2ac80a5 (diff)
downloadtanetane-315ca2fb388f790791c9ce372cf44e00d51e0e7f.tar.gz
tanetane-315ca2fb388f790791c9ce372cf44e00d51e0e7f.tar.bz2
tanetane-315ca2fb388f790791c9ce372cf44e00d51e0e7f.zip
Added trigger zones to the map
Walking into a trigger zone runs a script.
Diffstat (limited to 'src/map.cpp')
-rw-r--r--src/map.cpp15
1 files changed, 15 insertions, 0 deletions
diff --git a/src/map.cpp b/src/map.cpp index 2214d17..b6f6755 100644 --- a/src/map.cpp +++ b/src/map.cpp
@@ -84,6 +84,21 @@ Map::Map(std::string_view filename, Renderer& renderer) {
84 point.y() = object.getPosition().y; 84 point.y() = object.getPosition().y;
85 85
86 warpPoints_[object.getName()] = std::move(point); 86 warpPoints_[object.getName()] = std::move(point);
87 } else if (object.getType() == "trigger") {
88 Trigger t;
89 t.name = object.getName();
90 t.pos.x() = object.getPosition().x;
91 t.pos.y() = object.getPosition().y;
92 t.size.w() = object.getAABB().width;
93 t.size.h() = object.getAABB().height;
94
95 for (const tmx::Property& property : object.getProperties()) {
96 if (property.getName() == "script") {
97 t.script = property.getStringValue();
98 }
99 }
100
101 triggers_.push_back(std::move(t));
87 } 102 }
88 } 103 }
89 } 104 }