001package com.fs.starfarer.api.impl.combat;
002
003import java.util.List;
004
005import com.fs.starfarer.api.combat.BaseEveryFrameCombatPlugin;
006import com.fs.starfarer.api.combat.BattleCreationContext;
007import com.fs.starfarer.api.combat.CombatEngineAPI;
008import com.fs.starfarer.api.input.InputEventAPI;
009
010public class EscapeRevealPlugin extends BaseEveryFrameCombatPlugin {
011        
012        private CombatEngineAPI engine;
013        private BattleCreationContext context;
014
015        public EscapeRevealPlugin(BattleCreationContext context) {
016                this.context = context;
017        }
018        public void init(CombatEngineAPI engine) {
019                this.engine = engine;
020        }
021        
022        private float elapsed = 0f;
023        public void advance(float amount, List<InputEventAPI> events) {
024                if (elapsed > 10f) return;
025                if (!engine.isPaused()) elapsed += amount;
026        
027                float width = engine.getMapWidth();
028                float height = engine.getMapHeight();
029                
030                float minX = -width/2;
031                float minY = -height/2;
032                engine.getFogOfWar(0).revealAroundPoint(this, minX + width/2f, minY,
033                                                                                                context.getInitialEscapeRange() + 1000f);
034                
035                engine.getFogOfWar(1).revealAroundPoint(this, minX + width/2f, minY,
036                                                                                                context.getInitialEscapeRange() + 1000f);               
037        }
038}