diff options
author | mekolat <mekolat@users.noreply.github.com> | 2015-05-22 13:09:14 -0400 |
---|---|---|
committer | mekolat <mekolat@users.noreply.github.com> | 2015-06-20 06:52:33 -0400 |
commit | 08809eeb1db043ac72ca8a64f74e9f5ed6a54631 (patch) | |
tree | e428ef99dff34cfce275038af64eb367a489dbed /src/map/npc-parse.cpp | |
parent | ef9eb6bde90ec1d9d175b6481935cb3bd67d6c6c (diff) | |
download | tmwa-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.cpp | 15 |
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()) |