]> git.localhorst.tv Git - l2e.git/blobdiff - src/battle/TargetSelection.cpp
removed stupid file headers that eclipse put in
[l2e.git] / src / battle / TargetSelection.cpp
index 1906c2bb7960ac4b1804300c34d8d498fb3cf8fc..42a88e4673b0444129fac3587564f090a578ee55 100644 (file)
@@ -1,13 +1,7 @@
-/*
- * TargetSelection.cpp
- *
- *  Created on: Aug 9, 2012
- *      Author: holy
- */
-
 #include "TargetSelection.h"
 
 #include "BattleState.h"
+#include "../common/TargetingMode.h"
 
 namespace battle {
 
@@ -23,8 +17,23 @@ TargetSelection::TargetSelection(BattleState *battle, bool multiple, bool atEnem
        }
 }
 
-void TargetSelection::SelectEnemies() {
-       if (TargetsEnemies()) return;
+
+void TargetSelection::ReadMode(const common::TargetingMode &tm) {
+       if (tm.TargetsEnemy()) {
+               SelectMonsters();
+       } else {
+               SelectHeroes();
+       }
+       if (tm.TargetsSingle()) {
+               SelectSingle();
+       } else if (tm.TargetsMultiple()) {
+               SelectMultiple();
+       }
+}
+
+
+void TargetSelection::SelectMonsters() {
+       if (TargetsMonsters()) return;
        enemy = true;
        UnselectAll();
        cursor = 0;
@@ -42,23 +51,23 @@ void TargetSelection::SelectHeroes() {
 void TargetSelection::Reset() {
        UnselectAll();
        cursor = 0;
-       if (TargetsEnemies()) {
+       if (TargetsMonsters()) {
                FindNextEnemy();
        }
 }
 
 
 void TargetSelection::MoveUp() {
-       if (TargetsEnemies()) return;
+       if (TargetsMonsters()) return;
        if (cursor < 2) {
-               SelectEnemies();
+               SelectMonsters();
        } else {
                cursor -= 2;
        }
 }
 
 void TargetSelection::MoveRight() {
-       if (TargetsEnemies()) {
+       if (TargetsMonsters()) {
                cursor = (cursor + 1) % battle->MaxMonsters();
                while (!battle->MonsterPositionOccupied(cursor)) {
                        cursor = (cursor + 1) % battle->MaxMonsters();
@@ -69,7 +78,7 @@ void TargetSelection::MoveRight() {
 }
 
 void TargetSelection::MoveDown() {
-       if (TargetsEnemies()) {
+       if (TargetsMonsters()) {
                SelectHeroes();
                return;
        }
@@ -80,7 +89,7 @@ void TargetSelection::MoveDown() {
 }
 
 void TargetSelection::MoveLeft() {
-       if (TargetsEnemies()) {
+       if (TargetsMonsters()) {
                cursor = (cursor + battle->MaxMonsters() - 1) % battle->MaxMonsters();
                FindNextEnemy();
        } else {