]> git.localhorst.tv Git - l2e.git/blobdiff - src/common/TargetingMode.h
removed useless comments
[l2e.git] / src / common / TargetingMode.h
index 90414485599168a349a1cf4572b4e1506f539621..1800d2bb958ab7f21821094b7a3a0986dcb0c73c 100644 (file)
@@ -1,10 +1,3 @@
-/*
- * TargetingMode.h
- *
- *  Created on: Aug 10, 2012
- *      Author: holy
- */
-
 #ifndef COMMON_TARGETINGMODE_H_
 #define COMMON_TARGETINGMODE_H_
 
@@ -15,42 +8,38 @@ namespace common {
 class TargetingMode {
 
 public:
-       TargetingMode() : mode(0) { }
+       static const int TYPE_ID = 306;
+
+public:
+       TargetingMode() : mode(0), ally(true) { }
 
 public:
-       bool TargetsEnemy() const { return (mode & FACTION_MASK) == ENEMY; }
-       bool TargetsAlly() const { return (mode & FACTION_MASK) == ALLY; }
-       bool TargetsAll() const { return (mode & COUNT_MASK) == ALL; }
-       bool TargetsMultiple() const { return (mode & COUNT_MASK) == MULTIPLE; }
-       bool TargetsSingle() const { return (mode & COUNT_MASK) == SINGLE; }
-
-       void TargetAll() { mode = (mode & FACTION_MASK) | ALL; }
-       void TargetMultiple() { mode = (mode & FACTION_MASK) | MULTIPLE; }
-       void TargetSingle() { mode = (mode & FACTION_MASK) | SINGLE; }
-       void TargetAlly() { mode = ALLY | (mode & COUNT_MASK); }
-       void TargetEnemy() { mode = ENEMY | (mode & COUNT_MASK); }
-
-       void TargetAllEnemies() { mode = ENEMY | ALL; }
-       void TargetMultipleEnemies() { mode = ENEMY | MULTIPLE; }
-       void TargetSingleEnemy() { mode = ENEMY | SINGLE; }
-       void TargetAllAllies() { mode = ALLY | ALL; }
-       void TargetMultipleAllies() { mode = ALLY | MULTIPLE; }
-       void TargetSingleAlly() { mode = ALLY | SINGLE; }
+       bool TargetsEnemy() const { return !ally; }
+       bool TargetsAlly() const { return ally; }
+       bool TargetsAll() const { return mode == ALL; }
+       bool TargetsMultiple() const { return mode == MULTIPLE; }
+       bool TargetsSingle() const { return mode == SINGLE; }
+
+       void TargetAll() { mode = ALL; }
+       void TargetMultiple() { mode = MULTIPLE; }
+       void TargetSingle() { mode = SINGLE; }
+       void TargetAlly() { ally = true; }
+       void TargetEnemy() { ally = false; }
+
+       static void CreateTypeDescription();
+       static void Construct(void *);
 
 private:
        enum {
                ALL = 0,
-               ALLY = 0,
                MULTIPLE = 1,
                SINGLE = 2,
-               COUNT_MASK = 127,
-               ENEMY = 128,
-               FACTION_MASK = 128,
        };
-       Uint8 mode;
+       int mode;
+       bool ally;
 
 };
 
 }
 
-#endif /* COMMON_TARGETINGMODE_H_ */
+#endif