Ok, tried to add this after invokation of dialog:
Global.getSector().getCampaignUI().showInteractionDialog(new SomeDialog(), Global.getSector().getPlayerFleet());
Global.getSector().addTransientScript(new Es_GameSetPausePlugin());
with Es_GameSetPausePlugin() being
Spoiler
public class Es_GameSetPausePlugin implements EveryFrameScript{
private static final Logger Log = Global.getLogger(Es_GameSetPausePlugin.class);
@Override
public boolean isDone() {
if(Global.getSector().isPaused()) {
Log.log(Level.INFO,"Es_GameSetPausePlugin in -isDone-Paused- state");
return true;
}
return false;
}
@Override
public boolean runWhilePaused() {
return true;
}
@Override
public void advance(float amount) {
Log.log(Level.INFO,"Es_GameSetPausePlugin in -advance- state");
if(!Global.getSector().isPaused()) {
Global.getSector().setPaused(true);
}
}
}
First of all, it doesn't produce -advance- state in log.
Secondly, it still does not pause the game, but correctly logs -isDone-Paused- when I pause it manually.
Where am I being dumb?