MCPcopy Create free account
hub / github.com/OpenTTD/OpenTTD / AddBadgeClassesToConfiguration

Function AddBadgeClassesToConfiguration

src/newgrf_badge_config.cpp:76–93  ·  view source on GitHub ↗

* Add current badge classes to user configuration. */

Source from the content-addressed store, hash-verified

74 * Add current badge classes to user configuration.
75 */
76void AddBadgeClassesToConfiguration()
77{
78 for (const GrfSpecFeature &feature : BadgeClassConfig::CONFIGURABLE_FEATURES) {
79 auto &config = _badge_config.features[feature];
80
81 for (const BadgeID &index : GetClassBadges()) {
82 const Badge &badge = *GetBadge(index);
83 if (badge.name == STR_NULL) continue;
84 if (!badge.features.Test(feature)) continue;
85
86 auto found = std::ranges::find(config, badge.label, &BadgeClassConfigItem::label);
87 if (found != std::end(config)) continue;
88
89 /* Not found, insert it. */
90 config.emplace_back(badge.label, 0, true, false);
91 }
92 }
93}
94
95/**
96 * Reset badge class configuration for a feature.

Callers 1

FinaliseBadgesFunction · 0.85

Calls 5

GetClassBadgesFunction · 0.85
GetBadgeFunction · 0.85
TestMethod · 0.80
findFunction · 0.50
endFunction · 0.50

Tested by

no test coverage detected