• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

Return-To-The-Roots / s25client / 19143370511

06 Nov 2025 04:56PM UTC coverage: 50.065%. First build
19143370511

Pull #1720

github

web-flow
Merge a3d378e6e into 7333cc249
Pull Request #1720: Add leather addon

304 of 1117 new or added lines in 66 files covered. (27.22%)

22729 of 45399 relevant lines covered (50.06%)

36159.55 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

0.0
/libs/s25main/AddonHelperFunctions.cpp
1
// Copyright (C) 2005 - 2025 Settlers Freaks (sf-team at siedler25.org)
2
//
3
// SPDX-License-Identifier: GPL-2.0-or-later
4

5
#include "AddonHelperFunctions.h"
6
#include "GlobalGameSettings.h"
7
#include <LeatherLoader.h>
8
#include <WineLoader.h>
9
#include <addons/Addon.h>
10

NEW
11
std::function<bool(const BuildingType type)> makeIsUnusedBuilding(const GlobalGameSettings& ggs)
×
12
{
NEW
13
    const bool wineAddonActive = ggs.isEnabled(AddonId::WINE);
×
NEW
14
    const bool charburnerAddonActive = ggs.isEnabled(AddonId::CHARBURNER);
×
NEW
15
    const bool leatherAddonActive = ggs.isEnabled(AddonId::LEATHER);
×
16

NEW
17
    return [wineAddonActive, charburnerAddonActive, leatherAddonActive](BuildingType const& bld) {
×
NEW
18
        if(!wineAddonActive && wineaddon::isWineAddonBuildingType(bld))
×
NEW
19
            return true;
×
NEW
20
        if(!charburnerAddonActive && bld == BuildingType::Charburner)
×
NEW
21
            return true;
×
NEW
22
        if(!leatherAddonActive && leatheraddon::isLeatherAddonBuildingType(bld))
×
NEW
23
            return true;
×
NEW
24
        return false;
×
NEW
25
    };
×
26
}
27

NEW
28
std::function<bool(const GoodType type)> makeIsUnusedWare(const GlobalGameSettings& ggs)
×
29
{
NEW
30
    const bool wineAddonActive = ggs.isEnabled(AddonId::WINE);
×
NEW
31
    const bool leatherAddonActive = ggs.isEnabled(AddonId::LEATHER);
×
32

NEW
33
    return [wineAddonActive, leatherAddonActive](GoodType const& type) {
×
NEW
34
        if(!wineAddonActive && wineaddon::isWineAddonGoodType(type))
×
NEW
35
            return true;
×
NEW
36
        if(!leatherAddonActive && leatheraddon::isLeatherAddonGoodType(type))
×
NEW
37
            return true;
×
NEW
38
        return false;
×
NEW
39
    };
×
40
}
41

NEW
42
std::function<bool(const Job job)> makeIsUnusedJob(const GlobalGameSettings& ggs)
×
43
{
NEW
44
    const bool wineAddonActive = ggs.isEnabled(AddonId::WINE);
×
NEW
45
    const bool charburnerAddonActive = ggs.isEnabled(AddonId::CHARBURNER);
×
NEW
46
    const bool leatherAddonActive = ggs.isEnabled(AddonId::LEATHER);
×
47

NEW
48
    return [wineAddonActive, charburnerAddonActive, leatherAddonActive](Job const& job) {
×
NEW
49
        if(!wineAddonActive && wineaddon::isWineAddonJobType(job))
×
NEW
50
            return true;
×
NEW
51
        if(!charburnerAddonActive && job == Job::CharBurner)
×
NEW
52
            return true;
×
NEW
53
        if(!leatherAddonActive && leatheraddon::isLeatherAddonJobType(job))
×
NEW
54
            return true;
×
NEW
55
        return false;
×
NEW
56
    };
×
57
}
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc