From d2e9b7720ef48dd8d0b53326b4b2f7afe0e390ec Mon Sep 17 00:00:00 2001 From: drdev Date: Sun, 9 Mar 2014 03:47:34 +0000 Subject: [PATCH] Support switching and hiding zones --- .../screens/match/views/VPlayerPanel.java | 33 +++++++++++++++---- 1 file changed, 26 insertions(+), 7 deletions(-) diff --git a/forge-m-base/src/forge/screens/match/views/VPlayerPanel.java b/forge-m-base/src/forge/screens/match/views/VPlayerPanel.java index cc9ec832168..b17739a5d4f 100644 --- a/forge-m-base/src/forge/screens/match/views/VPlayerPanel.java +++ b/forge-m-base/src/forge/screens/match/views/VPlayerPanel.java @@ -59,15 +59,23 @@ public class VPlayerPanel extends FContainer { } public void setSelectedZone(ZoneType zoneType) { - for (VZoneDisplay zone : zones) { - if (zone.getZoneType() == zoneType) { - if (selectedZone != null) { - selectedZone.setVisible(false); - } - selectedZone = zone; - selectedZone.setVisible(true); + if (selectedZone != null) { + if (selectedZone.getZoneType() == zoneType) { return; } + selectedZone.setVisible(false); + } + if (zoneType == null) { + selectedZone = null; + } + else { + for (VZoneDisplay zone : zones) { + if (zone.getZoneType() == zoneType) { + selectedZone = zone; + selectedZone.setVisible(true); + return; + } + } } } @@ -171,6 +179,17 @@ public class VPlayerPanel extends FContainer { value = "99"; } + @Override + public boolean tap(float x, float y, int count) { + if (selectedZone == zoneToOpen) { + setSelectedZone(null); + } + else { + setSelectedZone(zoneToOpen.getZoneType()); + } + return true; + } + @Override public float getPreferredWidth() { return VAvatar.HEIGHT * 1.05f;