Polar aerodrome fixes / Objective timer multiplier for difficulty

This commit is contained in:
Anuken 2024-09-20 11:17:12 -04:00
parent bd1f750673
commit c36e638826
4 changed files with 5 additions and 2 deletions

Binary file not shown.

View File

@ -16,6 +16,7 @@ public class CampaignRules{
rules.staticFog = rules.fog = fog;
rules.showSpawns = showSpawns;
rules.randomWaveAI = randomWaveAI;
rules.objectiveTimerMultiplier = difficulty.waveTimeMultiplier;
if(planet.showRtsAIRule && rules.attackMode){
boolean swapped = rules.teams.get(rules.waveTeam).rtsAi != rtsAI;
rules.teams.get(rules.waveTeam).rtsAi = rtsAI;

View File

@ -442,7 +442,7 @@ public class MapObjectives implements Iterable<MapObjective>, Eachable<MapObject
@Override
public boolean update(){
return (countup += Time.delta) >= duration;
return (countup += Time.delta) >= duration * state.rules.objectiveTimerMultiplier;
}
@Override
@ -454,7 +454,7 @@ public class MapObjectives implements Iterable<MapObjective>, Eachable<MapObject
@Override
public String text(){
if(text != null){
int i = (int)((duration - countup) / 60f);
int i = (int)((duration * state.rules.objectiveTimerMultiplier - countup) / 60f);
StringBuilder timeString = new StringBuilder();
int m = i / 60;

View File

@ -101,6 +101,8 @@ public class Rules{
public float buildSpeedMultiplier = 1f;
/** Multiplier for percentage of materials refunded when deconstructing. */
public float deconstructRefundMultiplier = 0.5f;
/** Multiplier for time in timer objectives. */
public float objectiveTimerMultiplier = 1f;
/** No-build zone around enemy core radius. */
public float enemyCoreBuildRadius = 400f;
/** If true, no-build zones are calculated based on the closest core. */