From 51c9a63a660fe88cfa44d93028e6ae2448fb889d Mon Sep 17 00:00:00 2001 From: Andrei Karas Date: Tue, 22 Mar 2016 22:09:02 +0300 Subject: Not allow moving from sit state if server not support it. --- src/actions/commands.cpp | 10 ++++++++-- src/actions/move.cpp | 8 ++++++++ 2 files changed, 16 insertions(+), 2 deletions(-) (limited to 'src/actions') diff --git a/src/actions/commands.cpp b/src/actions/commands.cpp index 1c57bd677..529025481 100644 --- a/src/actions/commands.cpp +++ b/src/actions/commands.cpp @@ -459,8 +459,11 @@ impHandler(follow) impHandler(navigate) { - if (!localPlayer) + if (!localPlayer || + !localPlayer->canMove()) + { return false; + } int x = 0; int y = 0; @@ -474,8 +477,11 @@ impHandler(navigate) impHandler(navigateTo) { - if (!localPlayer) + if (!localPlayer || + !localPlayer->canMove()) + { return false; + } const std::string args = event.args; if (args.empty()) diff --git a/src/actions/move.cpp b/src/actions/move.cpp index 2c9a3b692..789556910 100644 --- a/src/actions/move.cpp +++ b/src/actions/move.cpp @@ -71,6 +71,8 @@ impHandler(moveUp) return petDirectUp(event); else if (inputManager.isActionActive(InputAction::STOP_ATTACK)) return petMoveUp(event); + else if (!localPlayer->canMove()) + return directUp(event); if (popupMenu->isPopupVisible()) { popupMenu->moveUp(); @@ -87,6 +89,8 @@ impHandler(moveDown) return petDirectDown(event); else if (inputManager.isActionActive(InputAction::STOP_ATTACK)) return petMoveDown(event); + else if (!localPlayer->canMove()) + return directDown(event); if (popupMenu->isPopupVisible()) { popupMenu->moveDown(); @@ -110,6 +114,8 @@ impHandler(moveLeft) return petDirectLeft(event); else if (inputManager.isActionActive(InputAction::STOP_ATTACK)) return petMoveLeft(event); + else if (!localPlayer->canMove()) + return directLeft(event); return closeMoveNpcDialog(false); } @@ -128,6 +134,8 @@ impHandler(moveRight) return petDirectRight(event); else if (inputManager.isActionActive(InputAction::STOP_ATTACK)) return petMoveRight(event); + else if (!localPlayer->canMove()) + return directRight(event); return closeMoveNpcDialog(false); } -- cgit v1.2.3-60-g2f50