From 47202b5c07a1e32288708f26b3fbce788cda4ee9 Mon Sep 17 00:00:00 2001 From: IllianiCBT Date: Tue, 7 Jan 2025 12:05:20 -0600 Subject: [PATCH] Add reporting for undeployed forces in Stratcon Updated `StratconRulesManager` to log a message when forces are undeployed, improving visibility for campaign events. Introduced a new localized string in `AtBStratCon.properties` to support this logging. --- MekHQ/resources/mekhq/resources/AtBStratCon.properties | 2 ++ MekHQ/src/mekhq/campaign/stratcon/StratconRulesManager.java | 6 ++++++ 2 files changed, 8 insertions(+) diff --git a/MekHQ/resources/mekhq/resources/AtBStratCon.properties b/MekHQ/resources/mekhq/resources/AtBStratCon.properties index cdc3396263e..1df72479624 100644 --- a/MekHQ/resources/mekhq/resources/AtBStratCon.properties +++ b/MekHQ/resources/mekhq/resources/AtBStratCon.properties @@ -55,6 +55,8 @@ btnAddSP.text=Add SP (GM) btnAddCVP.text=Add CVP (GM) btnRemoveCVP.text=Remove CVP (GM) +force.undeployed=%s has returned from deployment. + requestingResupply.title=Requesting Resupply supplyPointExpenditure.text=How many Support Points would you like to spend? btnConfirm.text=Confirm diff --git a/MekHQ/src/mekhq/campaign/stratcon/StratconRulesManager.java b/MekHQ/src/mekhq/campaign/stratcon/StratconRulesManager.java index 592a7e66760..6d3fdbbeaea 100644 --- a/MekHQ/src/mekhq/campaign/stratcon/StratconRulesManager.java +++ b/MekHQ/src/mekhq/campaign/stratcon/StratconRulesManager.java @@ -2686,6 +2686,9 @@ public static void switchFacilityOwner(StratconFacility facility) { * return date is on or before the given date. */ public static void processTrackForceReturnDates(StratconTrackState track, Campaign campaign) { + final ResourceBundle resources = ResourceBundle.getBundle("mekhq.resources.AtBStratCon", + MekHQ.getMHQOptions().getLocale()); + List forcesToUndeploy = new ArrayList<>(); LocalDate date = campaign.getLocalDate(); @@ -2700,6 +2703,9 @@ public static void processTrackForceReturnDates(StratconTrackState track, Campai && (force != null) && !track.getBackingScenariosMap().containsKey(force.getScenarioId()) && !track.getStickyForces().contains(forceID)) { forcesToUndeploy.add(forceID); + + campaign.addReport(String.format(resources.getString("force.undeployed"), + force.getName())); } }