Skip to content

Commit 0edd780

Browse files
authored
Merge pull request #7243 from IllianiBird/factionStandingContractPay
Improvement: Implements Faction Standing-based Contract Pay; Added Pay Modifier for Clan Campaigns Pre-Tukayyid
2 parents d39945a + 68010b0 commit 0edd780

File tree

1 file changed

+12
-1
lines changed

1 file changed

+12
-1
lines changed

MekHQ/src/mekhq/campaign/market/contractMarket/AtbMonthlyContractMarket.java

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,7 @@
3939
import static megamek.common.enums.SkillLevel.GREEN;
4040
import static megamek.common.enums.SkillLevel.REGULAR;
4141
import static megamek.common.enums.SkillLevel.VETERAN;
42+
import static mekhq.MHQConstants.BATTLE_OF_TUKAYYID;
4243
import static mekhq.campaign.Campaign.AdministratorSpecialization.COMMAND;
4344
import static mekhq.campaign.Campaign.AdministratorSpecialization.LOGISTICS;
4445
import static mekhq.campaign.Campaign.AdministratorSpecialization.TRANSPORT;
@@ -637,8 +638,18 @@ public double calculatePaymentMultiplier(Campaign campaign, AtBContract contract
637638
}
638639
}
639640

641+
if (campaignOptions.isUseFactionStandingContractPaySafe()) {
642+
FactionStandings factionStandings = campaign.getFactionStandings();
643+
double regard = factionStandings.getRegardForFaction(employer.getShortName(), true);
644+
multiplier *= FactionStandingUtilities.getContractPayMultiplier(regard);
645+
}
646+
640647
// FG3 Difficulty Multiplier
641-
if (campaignOptions.isUseGenericBattleValue()) {
648+
if (campaign.getLocalDate().isBefore(BATTLE_OF_TUKAYYID)
649+
&& !employer.isClan()
650+
&& enemy.isClan()) {
651+
multiplier *= 0.5;
652+
} else if (campaignOptions.isUseGenericBattleValue()) {
642653
int contractDifficulty = contract.getDifficulty();
643654
if (contractDifficulty != Integer.MIN_VALUE && contractDifficulty <= 2) {
644655
multiplier /= 0.5;

0 commit comments

Comments
 (0)