diff --git a/src/rotp/model/empires/Empire.java b/src/rotp/model/empires/Empire.java index fa72c11b6..ffdd076f3 100644 --- a/src/rotp/model/empires/Empire.java +++ b/src/rotp/model/empires/Empire.java @@ -161,6 +161,9 @@ public AI ai() { ai = new AI(this, options().selectedAI(this)); return ai; } + public void resetAi() { + ai = null; + } public Diplomat diplomatAI() { return ai().diplomat(); } public FleetCommander fleetCommanderAI() { return ai().fleetCommander(); } public ShipCaptain shipCaptainAI() { return ai().shipCaptain(); } diff --git a/src/rotp/ui/main/overlay/MapOverlayNone.java b/src/rotp/ui/main/overlay/MapOverlayNone.java index 58991f372..7dcbf7e4b 100644 --- a/src/rotp/ui/main/overlay/MapOverlayNone.java +++ b/src/rotp/ui/main/overlay/MapOverlayNone.java @@ -21,11 +21,13 @@ import rotp.model.Sprite; import rotp.model.galaxy.ShipFleet; import rotp.model.galaxy.StarSystem; +import rotp.model.game.GameSession; import rotp.ui.BasePanel; import rotp.ui.RotPUI; import rotp.ui.main.GalaxyMapPanel; import rotp.ui.main.MainUI; import rotp.ui.main.TransportDeploymentPanel; +import rotp.ui.notifications.GameAlert; import rotp.ui.sprites.ShipRelocationSprite; import rotp.ui.sprites.SystemTransportSprite; @@ -282,6 +284,18 @@ else if (parent.clickedSprite() instanceof ShipRelocationSprite) { } parent.repaint(); break; + case KeyEvent.VK_F4: + String newAutoPlayOption = options().nextAutoplayOption(); + options().selectedAutoplayOption(newAutoPlayOption); + galaxy().player().resetAi(); + String str = text(options().selectedAutoplayOption()); + GameSession.instance().addAlert(new GameAlert() { + @Override + public String description() { + return "Auto play switched to " + str; + } + }); + break; case KeyEvent.VK_F5: systems = player().orderedShipConstructingColonies(); currSys = null;