From eed7ef561a9d590d507255118132676f868b1bd3 Mon Sep 17 00:00:00 2001 From: Andrei Karas Date: Mon, 21 Jul 2014 21:39:00 +0300 Subject: move "change pickup type" option into gamemodifiers. --- src/gamemodifiers.cpp | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) (limited to 'src/gamemodifiers.cpp') diff --git a/src/gamemodifiers.cpp b/src/gamemodifiers.cpp index d98332f39..3f2650659 100644 --- a/src/gamemodifiers.cpp +++ b/src/gamemodifiers.cpp @@ -43,6 +43,7 @@ GameModifiers::GameModifiers() settings.attackWeaponType = config.getIntValue("attackWeaponType"); settings.attackType = config.getIntValue("attackType"); settings.quickDropCounter = config.getIntValue("quickDropCounter"); + settings.pickUpType = config.getIntValue("pickUpType"); } GameModifiers::~GameModifiers() @@ -315,3 +316,37 @@ void GameModifiers::setQuickDropCounter(const int n) config.setValue("quickDropCounter", n); UpdateStatusListener::distributeEvent(); } + +const unsigned pickUpTypeSize = 7; + +void GameModifiers::changePickUpType(const bool forward) +{ + changeMode(&settings.pickUpType, pickUpTypeSize, "pickUpType", + &GameModifiers::getPickUpTypeString, 0, true, forward); +} + +static const char *const pickUpTypeStrings[] = +{ + // TRANSLATORS: pickup size in status bar + N_("(S) small pick up 1x1 cells"), + // TRANSLATORS: pickup size in status bar + N_("(D) default pick up 2x1 cells"), + // TRANSLATORS: pickup size in status bar + N_("(F) forward pick up 2x3 cells"), + // TRANSLATORS: pickup size in status bar + N_("(3) pick up 3x3 cells"), + // TRANSLATORS: pickup size in status bar + N_("(g) go and pick up in distance 4"), + // TRANSLATORS: pickup size in status bar + N_("(G) go and pick up in distance 8"), + // TRANSLATORS: pickup size in status bar + N_("(A) go and pick up in max distance"), + // TRANSLATORS: pickup size in status bar + N_("(?) pick up") +}; + +std::string GameModifiers::getPickUpTypeString() +{ + return gettext(getVarItem(&pickUpTypeStrings[0], + settings.pickUpType, pickUpTypeSize)); +} -- cgit v1.2.3-70-g09d2