Wave versions

This commit is contained in:
Anuken
2020-10-28 18:51:42 -04:00
parent 68ab48a1d3
commit 44286cee59
12 changed files with 33 additions and 22 deletions
+8
View File
@@ -57,6 +57,8 @@ public class SectorInfo{
public float secondsPassed;
/** Display name. */
public @Nullable String name;
/** Version of generated waves. When it doesn't match, new waves are generated. */
public int waveVersion = -1;
/** Special variables for simulation. */
public float sumHealth, sumRps, sumDps, waveHealthBase, waveHealthSlope, waveDpsBase, waveDpsSlope;
@@ -118,6 +120,11 @@ public class SectorInfo{
state.rules.winWave = winWave;
state.rules.attackMode = attack;
//assign new wave patterns when the version changes
if(waveVersion != Waves.waveVersion && state.rules.sector.preset == null){
state.rules.spawns = Waves.generate(state.rules.sector.baseCoverage);
}
CoreBuild entity = state.rules.defaultTeam.core();
if(entity != null){
entity.items.clear();
@@ -143,6 +150,7 @@ public class SectorInfo{
spawnPosition = entity.pos();
}
waveVersion = Waves.waveVersion;
waveSpacing = state.rules.waveSpacing;
wave = state.wave;
winWave = state.rules.winWave;