summaryrefslogtreecommitdiffstats
path: root/sigmod/Map.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'sigmod/Map.cpp')
-rw-r--r--sigmod/Map.cpp91
1 files changed, 29 insertions, 62 deletions
diff --git a/sigmod/Map.cpp b/sigmod/Map.cpp
index 667b5524..0ab6e0ab 100644
--- a/sigmod/Map.cpp
+++ b/sigmod/Map.cpp
@@ -71,12 +71,10 @@ void Sigmod::Map::validate()
TEST_BEGIN();
if (m_name.isEmpty())
emit(error("Name is empty"));
- TEST(setFlyWarp, flyWarp);
- TEST(setType, type);
- if (!m_width)
- emit(error("Map has no width"));
- if (!m_height)
- emit(error("Map has no height"));
+ TEST(flyWarp);
+ TEST(type);
+ TEST(width);
+ TEST(height);
QSet<int> idChecker;
QSet<QString> nameChecker;
if (!effectCount())
@@ -147,64 +145,33 @@ QDomElement Sigmod::Map::save() const
return xml;
}
-void Sigmod::Map::setName(const QString& name)
-{
- CHECK(name);
-}
-
-void Sigmod::Map::setFlyWarp(const int flyWarp)
-{
- if ((flyWarp != -1) && !warpById(flyWarp))
- emit(error(bounds("flyWarp", flyWarp)));
- else
- CHECK(flyWarp);
-}
-
-void Sigmod::Map::setType(const Type type)
-{
- CHECK(type);
-}
-
-void Sigmod::Map::setWidth(const int width)
-{
- if (width <= 0)
- emit(error(bounds("width", 1, INT_MAX, width)));
- else
- CHECK(width);
-}
+SETTER(Map, QString&, Name, name)
+SETTER(Map, int, FlyWarp, flyWarp)
+SETTER(Map, Type, Type, type)
+SETTER(Map, int, Width, width)
+SETTER(Map, int, Height, height)
-void Sigmod::Map::setHeight(const int height)
-{
- if (height <= 0)
- emit(error(bounds("height", 1, INT_MAX, height)));
- else
- CHECK(height);
-}
+GETTER(Map, QString, name)
+GETTER(Map, int, flyWarp)
+GETTER(Map, Sigmod::Map::Type, type)
+GETTER(Map, int, width)
+GETTER(Map, int, height)
-QString Sigmod::Map::name() const
-{
- return m_name;
-}
-
-int Sigmod::Map::flyWarp() const
-{
- return m_flyWarp;
-}
-
-Sigmod::Map::Type Sigmod::Map::type() const
-{
- return m_type;
-}
-
-int Sigmod::Map::width() const
-{
- return m_width;
-}
-
-int Sigmod::Map::height() const
-{
- return m_height;
-}
+CHECK_DEFAULT(Map, QString&, name)
+CHECK_BEGIN(Map, int, flyWarp)
+ if ((flyWarp != -1) && !warpById(flyWarp))
+ {
+ EBOUNDS_IDX(flyWarp);
+ return false;
+ }
+CHECK_END()
+CHECK_DEFAULT(Map, Type, type)
+CHECK_BEGIN(Map, int, width)
+ TBOUNDS(width, 1, INT_MAX)
+CHECK_END()
+CHECK_BEGIN(Map, int, height)
+ TBOUNDS(height, 1, INT_MAX)
+CHECK_END()
const Sigmod::MapEffect* Sigmod::Map::effect(const int index) const
{