summaryrefslogtreecommitdiff
path: root/src/game.cpp
diff options
context:
space:
mode:
authorBlue <bluesansdouze@gmail.com>2009-05-13 20:35:44 +0200
committerBlue <bluesansdouze@gmail.com>2009-05-13 20:35:44 +0200
commit22685431a23b05d66af28abda488d0891b1c0a34 (patch)
treea207b9230833abbed3da751ca7e3c4ccdc8e9783 /src/game.cpp
parent9071a692116745f2cafd8556cbff28095910730e (diff)
parentb5ad7e490f0f429a5abac2acae48ecf25485256f (diff)
downloadmana-client-22685431a23b05d66af28abda488d0891b1c0a34.tar.gz
mana-client-22685431a23b05d66af28abda488d0891b1c0a34.tar.bz2
mana-client-22685431a23b05d66af28abda488d0891b1c0a34.tar.xz
mana-client-22685431a23b05d66af28abda488d0891b1c0a34.zip
Merge branch 'master' of git@gitorious.org:tmw/mainline
Diffstat (limited to 'src/game.cpp')
-rw-r--r--src/game.cpp24
1 files changed, 24 insertions, 0 deletions
diff --git a/src/game.cpp b/src/game.cpp
index b56cbdde..59c57607 100644
--- a/src/game.cpp
+++ b/src/game.cpp
@@ -582,6 +582,13 @@ void Game::handleInput()
if (chatWindow->requestChatFocus())
used = true;
}
+ if (npcDialog->isVisible())
+ {
+ if (keyboard.isKeyActive(keyboard.KEY_MOVE_UP))
+ npcDialog->move(1);
+ else if (keyboard.isKeyActive(keyboard.KEY_MOVE_DOWN))
+ npcDialog->move(-1);
+ }
}
@@ -923,6 +930,23 @@ void Game::handleInput()
if (player_node->getTarget())
player_node->attack(player_node->getTarget(), true);
}
+
+ if (keyboard.isKeyActive(keyboard.KEY_TARGET_ATTACK))
+ {
+ Being *target = NULL;
+
+ bool newTarget = !keyboard.isKeyActive(keyboard.KEY_TARGET);
+ // A set target has highest priority
+ if (!player_node->getTarget())
+ {
+ Uint16 targetX = x, targetY = y;
+ // Only auto target Monsters
+ target = beingManager->findNearestLivingBeing(targetX, targetY,
+ 20, Being::MONSTER);
+ }
+ player_node->attack(target, newTarget);
+ }
+
#endif
// Target the nearest player/monster/npc