diff options
-rw-r--r-- | src/being/localplayer.cpp | 27 | ||||
-rw-r--r-- | src/being/localplayer.h | 2 | ||||
-rw-r--r-- | src/gamemodifiers.cpp | 30 | ||||
-rw-r--r-- | src/gamemodifiers.h | 2 | ||||
-rw-r--r-- | src/gui/popups/popupmenu.cpp | 5 |
5 files changed, 35 insertions, 31 deletions
diff --git a/src/being/localplayer.cpp b/src/being/localplayer.cpp index c3937badc..a980ec73b 100644 --- a/src/being/localplayer.cpp +++ b/src/being/localplayer.cpp @@ -3204,33 +3204,6 @@ void LocalPlayer::checkNewName(Being *const being) } } -void LocalPlayer::resetYellowBar() -{ - settings.moveType = 0; - settings.crazyMoveType = config.resetIntValue("crazyMoveType"); - settings.moveToTargetType = config.resetIntValue("moveToTargetType"); - settings.followMode = config.resetIntValue("followMode"); - settings.attackWeaponType = config.resetIntValue("attackWeaponType"); - settings.attackType = config.resetIntValue("attackType"); - settings.magicAttackType = config.resetIntValue("magicAttackType"); - settings.pvpAttackType = config.resetIntValue("pvpAttackType"); - settings.quickDropCounter = config.resetIntValue("quickDropCounter"); - settings.pickUpType = config.resetIntValue("pickUpType"); - if (viewport) - { - settings.mapDrawType = MapType::NORMAL; - if (settings.cameraMode) - viewport->toggleCameraMode(); - } - if (mMap) - mMap->setDrawLayersFlags(0); - settings.imitationMode = config.resetIntValue("imitationMode"); - settings.disableGameModifiers = config.resetBoolValue( - "disableGameModifiers"); - - UpdateStatusListener::distributeEvent(); -} - unsigned char LocalPlayer::getWalkMask() const { // for now blocking all types of collisions diff --git a/src/being/localplayer.h b/src/being/localplayer.h index c01032e8e..de78981cc 100644 --- a/src/being/localplayer.h +++ b/src/being/localplayer.h @@ -366,8 +366,6 @@ class LocalPlayer final : public Being, void checkNewName(Being *const being); - void resetYellowBar(); - unsigned char getWalkMask() const override final A_WARN_UNUSED; void saveHomes(); diff --git a/src/gamemodifiers.cpp b/src/gamemodifiers.cpp index 2db410884..57a51b0e8 100644 --- a/src/gamemodifiers.cpp +++ b/src/gamemodifiers.cpp @@ -35,6 +35,8 @@ #include "gui/widgets/tabs/chattab.h" +#include "resources/map/map.h" + #include "listeners/awaylistener.h" #include "listeners/updatestatuslistener.h" @@ -449,3 +451,31 @@ addModifier(CameraMode, cameraMode, 2, // TRANSLATORS: camera mode in status bar N_("(?) away") }) + +void GameModifiers::resetModifiers() +{ + settings.moveType = 0; + settings.crazyMoveType = config.resetIntValue("crazyMoveType"); + settings.moveToTargetType = config.resetIntValue("moveToTargetType"); + settings.followMode = config.resetIntValue("followMode"); + settings.attackWeaponType = config.resetIntValue("attackWeaponType"); + settings.attackType = config.resetIntValue("attackType"); + settings.magicAttackType = config.resetIntValue("magicAttackType"); + settings.pvpAttackType = config.resetIntValue("pvpAttackType"); + settings.quickDropCounter = config.resetIntValue("quickDropCounter"); + settings.pickUpType = config.resetIntValue("pickUpType"); + settings.mapDrawType = MapType::NORMAL; + if (viewport) + { + if (settings.cameraMode) + viewport->toggleCameraMode(); + Map *const map = viewport->getMap(); + if (map) + map->setDrawLayersFlags(0); + } + settings.imitationMode = config.resetIntValue("imitationMode"); + settings.disableGameModifiers = config.resetBoolValue( + "disableGameModifiers"); + + UpdateStatusListener::distributeEvent(); +} diff --git a/src/gamemodifiers.h b/src/gamemodifiers.h index 10ea579d9..8ca57ef3f 100644 --- a/src/gamemodifiers.h +++ b/src/gamemodifiers.h @@ -100,6 +100,8 @@ class GameModifiers final std::string getCameraModeString(); + void resetModifiers(); + protected: static const char *getVarItem(const char *const *const arr, const unsigned index, diff --git a/src/gui/popups/popupmenu.cpp b/src/gui/popups/popupmenu.cpp index 687aa38cf..1712ce34b 100644 --- a/src/gui/popups/popupmenu.cpp +++ b/src/gui/popups/popupmenu.cpp @@ -28,6 +28,7 @@ #include "configuration.h" #include "dropshortcut.h" #include "game.h" +#include "gamemodifiers.h" #include "guild.h" #include "guildmanager.h" #include "item.h" @@ -1721,8 +1722,8 @@ void PopupMenu::handleLink(const std::string &link, } else if (link == "reset yellow") { - if (player_node) - player_node->resetYellowBar(); + if (modifiers) + modifiers->resetModifiers(); } else if (link == "bar to chat" && !mNick.empty()) { |