]> git.localhorst.tv Git - l2e.git/blobdiff - src/battle/TargetSelection.h
extracted battle logic into a class
[l2e.git] / src / battle / TargetSelection.h
index b57a41df26c5d3ab80bd772b876f07221185cb02..52b0d00bcb519bbc7d1819a31708261a1099ca5e 100644 (file)
@@ -1,29 +1,27 @@
-/*
- * TargetSelection.h
- *
- *  Created on: Aug 9, 2012
- *      Author: holy
- */
-
 #ifndef BATTLE_TARGETSELECTION_H_
 #define BATTLE_TARGETSELECTION_H_
 
+namespace battle {
+       class Battle;
+}
+namespace common {
+       class TargetingMode;
+}
+
 #include <vector>
 
-namespace common { class TargetingMode; }
 
 namespace battle {
 
-class BattleState;
-
 class TargetSelection {
 
 public:
-       explicit TargetSelection(BattleState *battle = 0, bool multiple = false, bool atEnemy = true);
+       TargetSelection();
+       explicit TargetSelection(Battle *battle, bool multiple = false, bool atEnemy = true);
 
 public:
-       bool TargetsEnemies() const { return enemy; }
-       bool TargetsHeroes() const { return !TargetsEnemies(); }
+       bool TargetsMonsters() const { return enemy; }
+       bool TargetsHeroes() const { return !TargetsMonsters(); }
        bool IsSelected(int index) const { return index >= 0 && index < int(selected.size()) && selected[index].type != State::IGNORE; }
        bool HasSelected() const { return selection >= 0; }
        int SingleSelection() const { return selection; }
@@ -35,7 +33,7 @@ public:
 
        void ReadMode(const common::TargetingMode &);
 
-       void SelectEnemies();
+       void SelectMonsters();
        void SelectHeroes();
        void Select(int index) { selected[index].type = State::SELECTED; selection = index; }
        void Unselect(int index) { selected[index].type = State::IGNORE; }
@@ -78,7 +76,7 @@ private:
                int number;
                explicit State(Type type = IGNORE, int num = 0) : type(type), number(num) { }
        };
-       BattleState *battle;
+       Battle *battle;
        std::vector<State> selected;
        int selection;
        int cursor;
@@ -89,4 +87,4 @@ private:
 
 }
 
-#endif /* BATTLE_TARGETSELECTION_H_ */
+#endif