]> git.localhorst.tv Git - l2e.git/blobdiff - src/battle/AttackChoice.h
extracted battle logic into a class
[l2e.git] / src / battle / AttackChoice.h
index 42eb0d3c51c2b40bde00a98e788f34bfa7891169..0049f1e2be198bd068713be96d26be3ddf124646 100644 (file)
@@ -1,16 +1,15 @@
-/*
- * AttackChoice.h
- *
- *  Created on: Aug 7, 2012
- *      Author: holy
- */
-
 #ifndef BATTLE_ATTACKCHOICE_H_
 #define BATTLE_ATTACKCHOICE_H_
 
-#include "TargetSelection.h"
+namespace battle {
+       class Battle;
+}
+namespace common {
+       class Item;
+       class Spell;
+}
 
-namespace common { class Item; }
+#include "TargetSelection.h"
 
 namespace battle {
 
@@ -27,7 +26,10 @@ public:
        };
 
 public:
-       explicit AttackChoice(BattleState *b = 0) : thing(0), selection(b), type(UNDECIDED) { }
+       AttackChoice()
+       : thing(0), selection(), type(UNDECIDED) { }
+       explicit AttackChoice(Battle *b)
+       : thing(0), selection(b), type(UNDECIDED) { }
        ~AttackChoice() { }
 
 public:
@@ -35,6 +37,8 @@ public:
        void SetType(Type t) { type = t; }
        const common::Item *GetItem() const { return (const common::Item *)thing; }
        void SetItem(const common::Item *i) { thing = i; }
+       const common::Spell *GetSpell() const { return (const common::Spell *)thing; }
+       void SetSpell(const common::Spell *s) { thing = s; }
        TargetSelection &Selection() { return selection; }
        const TargetSelection &Selection() const { return selection; }
 
@@ -49,4 +53,4 @@ private:
 
 }
 
-#endif /* BATTLE_ATTACKCHOICE_H_ */
+#endif