summaryrefslogtreecommitdiff
path: root/src/map/npc-parse.cpp
diff options
context:
space:
mode:
authormekolat <mekolat@users.noreply.github.com>2015-05-22 13:09:14 -0400
committermekolat <mekolat@users.noreply.github.com>2015-06-20 06:52:33 -0400
commit08809eeb1db043ac72ca8a64f74e9f5ed6a54631 (patch)
treee428ef99dff34cfce275038af64eb367a489dbed /src/map/npc-parse.cpp
parentef9eb6bde90ec1d9d175b6481935cb3bd67d6c6c (diff)
downloadtmwa-08809eeb1db043ac72ca8a64f74e9f5ed6a54631.tar.gz
tmwa-08809eeb1db043ac72ca8a64f74e9f5ed6a54631.tar.bz2
tmwa-08809eeb1db043ac72ca8a64f74e9f5ed6a54631.tar.xz
tmwa-08809eeb1db043ac72ca8a64f74e9f5ed6a54631.zip
add map mask support
Diffstat (limited to 'src/map/npc-parse.cpp')
-rw-r--r--src/map/npc-parse.cpp15
1 files changed, 14 insertions, 1 deletions
diff --git a/src/map/npc-parse.cpp b/src/map/npc-parse.cpp
index 0a0d682..9ee84d2 100644
--- a/src/map/npc-parse.cpp
+++ b/src/map/npc-parse.cpp
@@ -354,7 +354,7 @@ bool npc_load_mapflag(ast::npc::MapFlag& mapflag)
}
MapName savemap;
- int savex, savey;
+ int savex, savey, mask;
if (mf == MapFlag::NOSAVE)
{
@@ -392,6 +392,19 @@ bool npc_load_mapflag(ast::npc::MapFlag& mapflag)
return false;
}
}
+ else if (mf == MapFlag::MASK)
+ {
+ if (mapflag.vec_extra.data.size() == 1
+ && extract(mapflag.vec_extra.data[0].data, &mask))
+ {
+ m->mask = mask;
+ }
+ else
+ {
+ mapflag.vec_extra.span.error("Unable to extract map mask"_s);
+ return false;
+ }
+ }
else
{
if (mapflag.vec_extra.data.size())