diff --git a/core/assets/maps/atolls.msav b/core/assets/maps/atolls.msav index 0ac39f4802..77cebff2db 100644 Binary files a/core/assets/maps/atolls.msav and b/core/assets/maps/atolls.msav differ diff --git a/core/assets/maps/infestedCanyons.msav b/core/assets/maps/infestedCanyons.msav index 08dc8945f3..b5fff1c324 100644 Binary files a/core/assets/maps/infestedCanyons.msav and b/core/assets/maps/infestedCanyons.msav differ diff --git a/core/assets/maps/overgrowth.msav b/core/assets/maps/overgrowth.msav index 4642caa623..08d0b853e1 100644 Binary files a/core/assets/maps/overgrowth.msav and b/core/assets/maps/overgrowth.msav differ diff --git a/core/src/mindustry/editor/MapEditorDialog.java b/core/src/mindustry/editor/MapEditorDialog.java index 6af7f4f280..3bab193111 100644 --- a/core/src/mindustry/editor/MapEditorDialog.java +++ b/core/src/mindustry/editor/MapEditorDialog.java @@ -377,6 +377,7 @@ public class MapEditorDialog extends Dialog implements Disposable{ public @Nullable Map save(){ boolean isEditor = state.rules.editor; state.rules.editor = false; + state.rules.allowEditRules = false; state.rules.objectiveFlags.clear(); state.rules.objectives.each(MapObjective::reset); String name = editor.tags.get("name", "").trim(); diff --git a/core/src/mindustry/ui/dialogs/ResearchDialog.java b/core/src/mindustry/ui/dialogs/ResearchDialog.java index c1d7c27abe..b2d7166a2c 100644 --- a/core/src/mindustry/ui/dialogs/ResearchDialog.java +++ b/core/src/mindustry/ui/dialogs/ResearchDialog.java @@ -488,11 +488,17 @@ public class ResearchDialog extends BaseDialog{ } if(mobile){ - tapped(() -> { - Element e = Core.scene.getHoverElement(); - if(e == this){ - hoverNode = null; - rebuild(); + addListener(new InputListener(){ + @Override + public boolean touchDown(InputEvent event, float x, float y, int pointer, KeyCode button){ + if(pointer == -1) return false; + Element e = Core.scene.hit(Core.input.mouseX(pointer), Core.input.mouseY(pointer), true); + if(e == View.this){ + hoverNode = null; + rebuild(); + } + + return false; } }); } @@ -613,10 +619,6 @@ public class ResearchDialog extends BaseDialog{ Element e = Core.scene.hit(Core.input.mouseX(pointer == -1 ? 0 : pointer), Core.input.mouseY(pointer == -1 ? 0 : pointer), true); if(hoverNode == button && !(e != null && (e == infoTable || e.isDescendantOf(infoTable) || e == hoverNode || e.isDescendantOf(hoverNode))) && (Core.app.isDesktop() || pointer == 0)){ - if(Core.app.isMobile()){ - Log.info("hiding info table {x=@ y=@ mouseX=@ mouseY=@ pointer=@ overElement=@ isInfoTable=@ isDescendantOfInfo=@ isDescendantOfHover=@}", x, y, - Core.input.mouseX(pointer == -1 ? 0 : pointer), Core.input.mouseY(pointer == -1 ? 0 : pointer), pointer, (e != null ? e.getClass() : null), e == infoTable, e != null && e.isDescendantOf(infoTable), e != null && e.isDescendantOf(hoverNode)); - } hoverNode = null; rebuild(); }