Class AtBScenarioModifierApplicator

java.lang.Object
mekhq.campaign.mission.atb.AtBScenarioModifierApplicator

public class AtBScenarioModifierApplicator extends Object
Class that handles the application of scenario modifier actions to AtBDynamicScenarios
  • Constructor Details

    • AtBScenarioModifierApplicator

      public AtBScenarioModifierApplicator()
  • Method Details

    • addForce

      public static void addForce(Campaign campaign, AtBDynamicScenario scenario, ScenarioForceTemplate forceToApply, AtBScenarioModifier.EventTiming eventTiming)
      Adds the given force to the given scenario at the appropriate point in time.
    • removeUnits

      public static void removeUnits(AtBDynamicScenario scenario, Campaign campaign, ScenarioForceTemplate.ForceAlignment eventRecipient, int unitRemovalCount)
      Worker function that removes the number of units from the specified side.
    • inflictBattleDamage

      public static void inflictBattleDamage(AtBDynamicScenario scenario, Campaign campaign, ScenarioForceTemplate.ForceAlignment eventRecipient, int battleDamageIntensity)
      Worker function that inflicts battle damage on all units belonging to the side specified in this modifier. May theoretically result in a crippled or destroyed unit (?)
    • expendAmmo

      public static void expendAmmo(AtBDynamicScenario scenario, Campaign campaign, ScenarioForceTemplate.ForceAlignment eventRecipient, int ammoExpenditureIntensity)
      Worker function that expends ammo from all units belonging to the side specified in this modifier.
    • adjustSkill

      public static void adjustSkill(AtBDynamicScenario scenario, Campaign campaign, ScenarioForceTemplate.ForceAlignment eventRecipient, int skillAdjustment)
      Helper function that re-generates skill levels for all existing units in the scenario
    • adjustQuality

      public static void adjustQuality(AtBDynamicScenario scenario, Campaign c, ScenarioForceTemplate.ForceAlignment eventRecipient, int qualityAdjustment)
      Worker function that adjusts the scenario's unit quality by the indicated amount, capped between 0 and 5. Only effective for units generated after the adjustment has taken place. Only capable of being applied to op for.
    • setupAmbush

      public static void setupAmbush(AtBDynamicScenario scenario, Campaign campaign, ScenarioForceTemplate.ForceAlignment eventRecipient)
      Helper function that sets up and "ambush", meaning declaring as "hidden" some portion of: all non-airborne units on the specified side that will be on the battlefield at the start of the scenario

      Also marks any such forces as able to deploy "anywhere".

    • switchSides

      public static void switchSides(AtBDynamicScenario scenario, ScenarioForceTemplate.ForceAlignment recipient)
      Worker method that turns all your allies into treacherous enemies Look into a variant of this where some hostiles defect or go rogue?
      Parameters:
      scenario - The scenario to process.
      recipient - Who's switching sides. Only valid recipient is Allied currently.
    • appendScenarioBriefingText

      public static void appendScenarioBriefingText(AtBDynamicScenario scenario, String additionalBriefingText)
      Appends the given text to the scenario briefing.
      Parameters:
      scenario - The scenario to modify.
      additionalBriefingText - The additional briefing text.
    • applyObjective

      public static void applyObjective(AtBDynamicScenario scenario, Campaign campaign, ScenarioObjective objective, AtBScenarioModifier.EventTiming timing)
      Applies an objective to the scenario.
    • applyExtraEvent

      public static void applyExtraEvent(AtBDynamicScenario scenario, boolean goodEvent)
      Applies an additional event, selected from only modifiers that benefit the player or do not benefit the player
    • applyReinforcementDelayReduction

      public static void applyReinforcementDelayReduction(AtBDynamicScenario scenario, ScenarioForceTemplate.ForceAlignment recipient, int value)
      Applies a flat reduction to the reinforcement arrival times, either of player/allied forces or hostile forces.