Skip to content

Commit 68e24dd

Browse files
committed
gameplay: clarify stranded soldier return search options
1 parent e10c0f5 commit 68e24dd

3 files changed

Lines changed: 19 additions & 12 deletions

File tree

libs/s25main/addons/AddonStrandedSoldierReturnSearch.h

Lines changed: 9 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -11,13 +11,14 @@ class AddonStrandedSoldierReturnSearch : public AddonList
1111
{
1212
public:
1313
AddonStrandedSoldierReturnSearch()
14-
: AddonList(AddonId::STRANDED_SOLDIER_RETURN_SEARCH, AddonGroup::Military,
15-
_("Stranded soldier return search"),
16-
_("Increase the search radius used by stranded soldiers when looking for a way back to a warehouse."),
17-
{
18-
_("Default"),
19-
_("Extended"),
20-
_("Very large"),
21-
})
14+
: AddonList(
15+
AddonId::STRANDED_SOLDIER_RETURN_SEARCH, AddonGroup::Military, _("Stranded soldier return search"),
16+
_("Controls the search radius used by stranded soldiers when looking for a way back to a warehouse."),
17+
{
18+
_("Default search range (1x)"),
19+
_("Reduced search range (0.5x)"),
20+
_("Extended search range (2x)"),
21+
_("Very large search range (4x)"),
22+
})
2223
{}
2324
};

libs/s25main/addons/const_addons.h

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@
2626
// 00E Jonathan
2727
// 00F Jarno
2828
// 010 aztimh
29+
// 011 DevOpsOfChaos
2930

3031
// Do not forget to add your Addon to GlobalGameSettings::registerAllAddons @ GlobalGameSettings.cpp!
3132
// Never use a number twice!
@@ -75,7 +76,9 @@ ENUM_WITH_STRING(AddonId, LIMIT_CATAPULTS = 0x00000000, INEXHAUSTIBLE_MINES = 0x
7576
AUTOFLAGS = 0x00F00000,
7677

7778
WINE = 0x01000000, LEATHER = 0x01000001, NO_ARMOR_DEFAULT = 0x01000002,
78-
ARMOR_CAPTURED_BLD = 0x01000003, STRANDED_SOLDIER_RETURN_SEARCH = 0x01000006)
79+
ARMOR_CAPTURED_BLD = 0x01000003,
80+
81+
STRANDED_SOLDIER_RETURN_SEARCH = 0x01100001)
7982
//-V:AddonId:801
8083

8184
enum class AddonGroup : unsigned

libs/s25main/figures/noFigure.cpp

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,7 @@ const unsigned short WANDER_RADIUS = 10;
4646
/// Dasselbe nochmal für Soldaten
4747
const unsigned short WANDER_TRYINGS_SOLDIERS = 6;
4848
const unsigned short WANDER_RADIUS_SOLDIERS = 15;
49+
const unsigned short STRANDED_SOLDIER_RETURN_SEARCH_RADIUS_REDUCED = WANDER_RADIUS_SOLDIERS / 2;
4950
const unsigned short STRANDED_SOLDIER_RETURN_SEARCH_RADIUS_EXTENDED = 30;
5051
const unsigned short STRANDED_SOLDIER_RETURN_SEARCH_RADIUS_VERY_LARGE = 60;
5152

@@ -501,8 +502,9 @@ unsigned short GetStrandedSoldierReturnSearchRadius(const GlobalGameSettings& gg
501502
{
502503
switch(ggs.getSelection(AddonId::STRANDED_SOLDIER_RETURN_SEARCH))
503504
{
504-
case 1: return STRANDED_SOLDIER_RETURN_SEARCH_RADIUS_EXTENDED;
505-
case 2: return STRANDED_SOLDIER_RETURN_SEARCH_RADIUS_VERY_LARGE;
505+
case 1: return STRANDED_SOLDIER_RETURN_SEARCH_RADIUS_REDUCED;
506+
case 2: return STRANDED_SOLDIER_RETURN_SEARCH_RADIUS_EXTENDED;
507+
case 3: return STRANDED_SOLDIER_RETURN_SEARCH_RADIUS_VERY_LARGE;
506508
default: return WANDER_RADIUS_SOLDIERS;
507509
}
508510
}
@@ -522,7 +524,8 @@ void noFigure::Wander()
522524
if(!wander_way)
523525
{
524526
// Soldaten sind härter im Nehmen
525-
const unsigned short wander_radius = IsSoldier() ? GetStrandedSoldierReturnSearchRadius(world->GetGGS()) : WANDER_RADIUS;
527+
const unsigned short wander_radius =
528+
IsSoldier() ? GetStrandedSoldierReturnSearchRadius(world->GetGGS()) : WANDER_RADIUS;
526529

527530
// Flaggen sammeln und dann zufällig eine auswählen
528531
const std::vector<noFlag*> flags =

0 commit comments

Comments
 (0)