mirror of
https://github.com/Anuken/Mindustry.git
synced 2026-01-28 07:22:21 -08:00
Allow research even if sector was attacked after capture
This commit is contained in:
parent
869c329fbf
commit
e39eceee28
5 changed files with 8 additions and 1 deletions
|
|
@ -334,6 +334,8 @@ public class Control implements ApplicationListener, Loadable{
|
|||
state.wave = 1;
|
||||
//set up default wave time
|
||||
state.wavetime = state.rules.waveSpacing * 2f;
|
||||
//reset captured state
|
||||
sector.info.wasCaptured = false;
|
||||
|
||||
//reset win wave??
|
||||
state.rules.winWave = state.rules.attackMode ? -1 : sector.preset != null ? sector.preset.captureWave : 40;
|
||||
|
|
|
|||
|
|
@ -267,6 +267,8 @@ public class Logic implements ApplicationListener{
|
|||
|
||||
if(state.rules.sector == null) return;
|
||||
|
||||
state.rules.sector.info.wasCaptured = true;
|
||||
|
||||
//fire capture event
|
||||
Events.fire(new SectorCaptureEvent(state.rules.sector));
|
||||
|
||||
|
|
|
|||
|
|
@ -59,7 +59,7 @@ public class Objectives{
|
|||
|
||||
@Override
|
||||
public boolean complete(){
|
||||
return preset.sector.save != null && !preset.sector.isAttacked() && preset.sector.hasBase();
|
||||
return preset.sector.save != null && (!preset.sector.isAttacked() || preset.sector.info.wasCaptured) && preset.sector.hasBase();
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
|||
|
|
@ -33,6 +33,8 @@ public class SectorInfo{
|
|||
public int storageCapacity = 0;
|
||||
/** Whether a core is available here. */
|
||||
public boolean hasCore = true;
|
||||
/** Whether this sector was ever fully captured. */
|
||||
public boolean wasCaptured = false;
|
||||
/** Sector that was launched from. */
|
||||
public @Nullable Sector origin;
|
||||
/** Launch destination. */
|
||||
|
|
|
|||
|
|
@ -180,6 +180,7 @@ public class Universe{
|
|||
}else if(attacked && wavesPassed > 0 && sector.info.winWave > 1 && sector.info.wave + wavesPassed >= sector.info.winWave && !sector.hasEnemyBase()){
|
||||
//autocapture the sector
|
||||
sector.info.waves = false;
|
||||
sector.info.wasCaptured = true;
|
||||
|
||||
//fire the event
|
||||
Events.fire(new SectorCaptureEvent(sector));
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue