summaryrefslogtreecommitdiffstats
path: root/Tools/BlockZapper/Regions.h
diff options
context:
space:
mode:
authormadmaxoft@gmail.com <madmaxoft@gmail.com@0a769ca7-a7f5-676a-18bf-c427514a06d6>2013-05-01 19:27:17 +0200
committermadmaxoft@gmail.com <madmaxoft@gmail.com@0a769ca7-a7f5-676a-18bf-c427514a06d6>2013-05-01 19:27:17 +0200
commit8aa6f08959c55708994a69fc06a11a07023a81b2 (patch)
tree9a7eaf6fd34c1412a31bff49b83bfcd08b2e762f /Tools/BlockZapper/Regions.h
parentStringUtils: Fixed StringSplit to work with multiple delimiters (diff)
downloadcuberite-8aa6f08959c55708994a69fc06a11a07023a81b2.tar
cuberite-8aa6f08959c55708994a69fc06a11a07023a81b2.tar.gz
cuberite-8aa6f08959c55708994a69fc06a11a07023a81b2.tar.bz2
cuberite-8aa6f08959c55708994a69fc06a11a07023a81b2.tar.lz
cuberite-8aa6f08959c55708994a69fc06a11a07023a81b2.tar.xz
cuberite-8aa6f08959c55708994a69fc06a11a07023a81b2.tar.zst
cuberite-8aa6f08959c55708994a69fc06a11a07023a81b2.zip
Diffstat (limited to '')
-rw-r--r--Tools/BlockZapper/Regions.h58
1 files changed, 58 insertions, 0 deletions
diff --git a/Tools/BlockZapper/Regions.h b/Tools/BlockZapper/Regions.h
new file mode 100644
index 000000000..d959200d2
--- /dev/null
+++ b/Tools/BlockZapper/Regions.h
@@ -0,0 +1,58 @@
+
+// Regions.h
+
+// Declares the cRegions class representing individual regions to zap
+
+
+
+
+
+#pragma once
+
+#include <iostream>
+
+
+
+
+
+struct cRegion
+{
+ int m_MinX, m_MaxX;
+ int m_MinY, m_MaxY;
+ int m_MinZ, m_MaxZ;
+
+ bool m_ShouldZapBlocks;
+ bool m_ShouldZapEntities;
+
+ cRegion(void);
+ cRegion(int a_MinX, int a_MaxX, int a_MinY, int a_MaxY, int a_MinZ, int a_MaxZ, bool a_ShouldZapBlocks, bool a_ShouldZapEntities);
+
+ bool TouchesChunk(int a_ChunkX, int a_ChunkZ) const;
+} ;
+
+typedef std::vector<cRegion> cRegionVector;
+
+
+
+
+
+class cRegions
+{
+public:
+ /// Reads the list of regions from the specified stream
+ void Read(std::istream & a_Stream);
+
+ /// Returns all regions in this container
+ const cRegionVector & GetAll(void) const { return m_Regions; }
+
+protected:
+ cRegionVector m_Regions;
+
+ /// Adds a new region based on the contents of the split line. The split must already be the correct size
+ void AddRegion(const AStringVector & a_Split);
+
+} ;
+
+
+
+