]> git.localhorst.tv Git - l2e.git/blobdiff - src/common/Spell.h
removed useless comments
[l2e.git] / src / common / Spell.h
index d32de4689e780044b14092628f06040b498ce750..2cb14ef94d9ec3e5771e791472e77b95d2f31807 100644 (file)
@@ -1,20 +1,15 @@
-/*
- * Spell.h
- *
- *  Created on: Aug 10, 2012
- *      Author: holy
- */
-
 #ifndef COMMON_SPELL_H_
 #define COMMON_SPELL_H_
 
-#include "HeroGroup.h"
 #include "TargetingMode.h"
 
 namespace common {
 
 class Spell {
 
+public:
+       static const int TYPE_ID = 304;
+
 public:
        Spell();
 
@@ -23,45 +18,39 @@ public:
        Uint16 Value() const { return value; }
        Uint8 Cost() const { return cost; }
 
-       bool CanUseOnStatusScreen() const { return usability & USABILITY_STATUS; }
-       bool CanUseInBattle() const { return usability & USABILITY_BATTLE; }
+       bool CanUseOnStatusScreen() const { return status; }
+       bool CanUseInBattle() const { return battle; }
 
        TargetingMode &GetTargetingMode() { return targetingMode; }
        const TargetingMode &GetTargetingMode() const { return targetingMode; }
 
-       HeroGroup &UsableBy() { return usableBy; }
-       const HeroGroup &UsableBy() const { return usableBy; }
+       int HeroMask() const { return heroMask; }
+
+       static bool Less(const Spell *, const Spell *);
 
 // temporary setters
 public:
        void SetName(const char *n) { name = n; }
        void SetCost(Uint8 c) { cost = c; }
-       void SetUsableInBattle() { usability |= USABILITY_BATTLE; }
+       void SetUsableInBattle() { battle = true; }
 
-private:
-       enum Usability {
-               // USABILITY_UNUSED = 1,
-               // USABILITY_UNUSED = 2,
-               // USABILITY_UNUSED = 4,
-               // USABILITY_UNUSED = 8,
-               // USABILITY_UNUSED = 16,
-               // USABILITY_UNUSED = 32,
-               USABILITY_STATUS = 64,
-               USABILITY_BATTLE = 128,
-       };
+       static void CreateTypeDescription();
+       static void Construct(void *);
 
 private:
        const char *name;
 
-       Uint16 value;
+       int value;
 
-       Uint8 cost;
-       Uint8 usability;
+       int cost;
        TargetingMode targetingMode;
-       HeroGroup usableBy;
+       int heroMask;
+
+       bool status;
+       bool battle;
 
 };
 
 }
 
-#endif /* COMMON_SPELL_H_ */
+#endif