Skip to content

Commit 8c89ac6

Browse files
authored
Merge pull request #6569 from IllianiBird/crimeReset
Added Campaign Option To Reset Criminal Record
2 parents 0347de2 + 697b29d commit 8c89ac6

File tree

2 files changed

+16
-0
lines changed

2 files changed

+16
-0
lines changed

MekHQ/resources/mekhq/resources/CampaignOptionsDialog.properties

+4
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,10 @@ lblReputation.tooltip=Which reputation method should your campaign be graded aga
5454
<br><b>Recommended:</b> Campaign Operations
5555
lblManualUnitRatingModifier.text=Manual Modifier
5656
lblManualUnitRatingModifier.tooltip=This allows you to manually adjust your reputation rating.
57+
lblResetCriminalRecord.text=Reset Criminal Record \u26A0 \uD83C\uDF1F
58+
lblResetCriminalRecord.tooltip=Reset date of last crime and all penalties to Reputation from crime.\
59+
<br>\
60+
<br><b>Warning:</b> The Reputation report won't update to reflect this change until the next Monday.
5761
lblClampReputationPayMultiplier.text=Clamp Reputation Pay Multiplier \u26A0 \u2714 \u2728
5862
lblClampReputationPayMultiplier.tooltip=When using CamOps Reputation your unit's reputation score\
5963
\ affects contract pay. This option clamps the reputation-based multiplier between 50 and 200%.\

MekHQ/src/mekhq/gui/campaignOptions/contents/GeneralTab.java

+12
Original file line numberDiff line numberDiff line change
@@ -102,6 +102,7 @@ public class GeneralTab {
102102
private MMComboBox<UnitRatingMethod> unitRatingMethodCombo;
103103
private JLabel lblManualUnitRatingModifier;
104104
private JSpinner manualUnitRatingModifier;
105+
private JCheckBox chkResetCriminalRecord;
105106
private JCheckBox chkClampReputationPayMultiplier;
106107
private JCheckBox chkReduceReputationPerformanceModifier;
107108
private JCheckBox chkReputationPerformanceModifierCutOff;
@@ -198,6 +199,7 @@ public AbstractMHQScrollablePanel createGeneralTab() {
198199
resources.getString("lblReputation.tooltip")));
199200
lblManualUnitRatingModifier = new CampaignOptionsLabel("ManualUnitRatingModifier");
200201
manualUnitRatingModifier = new CampaignOptionsSpinner("ManualUnitRatingModifier", 0, -1000, 1000, 1);
202+
chkResetCriminalRecord = new CampaignOptionsCheckBox("ResetCriminalRecord");
201203
chkClampReputationPayMultiplier = new CampaignOptionsCheckBox("ClampReputationPayMultiplier");
202204
chkReduceReputationPerformanceModifier = new CampaignOptionsCheckBox("ReduceReputationPerformanceModifier");
203205
chkReputationPerformanceModifierCutOff = new CampaignOptionsCheckBox("ReputationPerformanceModifierCutOff");
@@ -273,6 +275,8 @@ public AbstractMHQScrollablePanel createGeneralTab() {
273275
panel.add(manualUnitRatingModifier, layout);
274276
layout.gridy++;
275277
layout.gridwidth = 3;
278+
panel.add(chkResetCriminalRecord, layout);
279+
layout.gridy++;
276280
panel.add(chkClampReputationPayMultiplier, layout);
277281
layout.gridy++;
278282
panel.add(chkReduceReputationPerformanceModifier, layout);
@@ -366,6 +370,7 @@ private void initialize() {
366370
lblManualUnitRatingModifier = new JLabel();
367371
manualUnitRatingModifier = new JSpinner();
368372

373+
chkResetCriminalRecord = new JCheckBox();
369374
chkClampReputationPayMultiplier = new JCheckBox();
370375
chkReduceReputationPerformanceModifier = new JCheckBox();
371376
chkReputationPerformanceModifierCutOff = new JCheckBox();
@@ -622,6 +627,13 @@ public void applyCampaignOptionsToCampaign(@Nullable CampaignOptions presetCampa
622627

623628
options.setUnitRatingMethod(unitRatingMethodCombo.getSelectedItem());
624629
options.setManualUnitRatingModifier((int) manualUnitRatingModifier.getValue());
630+
631+
if (chkResetCriminalRecord.isSelected()) {
632+
campaign.setDateOfLastCrime(null);
633+
campaign.setCrimeRating(0);
634+
campaign.setCrimePirateModifier(0);
635+
}
636+
625637
options.setClampReputationPayMultiplier(chkClampReputationPayMultiplier.isSelected());
626638
options.setReduceReputationPerformanceModifier(chkReduceReputationPerformanceModifier.isSelected());
627639
options.setReputationPerformanceModifierCutOff(chkReputationPerformanceModifierCutOff.isSelected());

0 commit comments

Comments
 (0)