From 13642a6cddd8657ec84a2bfa94c6ac7d34545dba Mon Sep 17 00:00:00 2001 From: Andrei Karas Date: Wed, 14 Nov 2012 16:55:35 +0300 Subject: Add support for on screen joystick for moving. --- src/game.cpp | 45 ++++++++++++++++++++++++--------------------- 1 file changed, 24 insertions(+), 21 deletions(-) (limited to 'src/game.cpp') diff --git a/src/game.cpp b/src/game.cpp index df23a0146..3ed71efcb 100644 --- a/src/game.cpp +++ b/src/game.cpp @@ -828,27 +828,30 @@ void Game::handleMove() } if (!inputManager.isActionActive(Input::KEY_EMOTE) || direction == 0) - { - if (!viewport->getCameraMode()) - { - player_node->specialMove(direction); - } - else - { - int dx = 0; - int dy = 0; - if (direction & Being::LEFT) - dx = -5; - else if (direction & Being::RIGHT) - dx = 5; - - if (direction & Being::UP) - dy = -5; - else if (direction & Being::DOWN) - dy = 5; - viewport->moveCamera(dx, dy); - } - } + moveInDirection(direction); + } +} + +void Game::moveInDirection(const unsigned char direction) +{ + if (!viewport->getCameraMode()) + { + player_node->specialMove(direction); + } + else + { + int dx = 0; + int dy = 0; + if (direction & Being::LEFT) + dx = -5; + else if (direction & Being::RIGHT) + dx = 5; + + if (direction & Being::UP) + dy = -5; + else if (direction & Being::DOWN) + dy = 5; + viewport->moveCamera(dx, dy); } } -- cgit v1.2.3-70-g09d2