diff options
Diffstat (limited to 'src/emerge.cpp')
-rw-r--r-- | src/emerge.cpp | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/src/emerge.cpp b/src/emerge.cpp index f5852aaae..0fc31e9e1 100644 --- a/src/emerge.cpp +++ b/src/emerge.cpp @@ -85,6 +85,31 @@ private: friend class EmergeManager; }; +class MapEditEventAreaIgnorer +{ +public: + MapEditEventAreaIgnorer(VoxelArea *ignorevariable, const VoxelArea &a): + m_ignorevariable(ignorevariable) + { + if(m_ignorevariable->getVolume() == 0) + *m_ignorevariable = a; + else + m_ignorevariable = NULL; + } + + ~MapEditEventAreaIgnorer() + { + if(m_ignorevariable) + { + assert(m_ignorevariable->getVolume() != 0); + *m_ignorevariable = VoxelArea(); + } + } + +private: + VoxelArea *m_ignorevariable; +}; + //// //// EmergeManager //// |