From 55674b2f8523e49968f6cd2e67ab7655340d43fd Mon Sep 17 00:00:00 2001 From: Sloth Date: Sun, 21 Apr 2013 14:42:39 +0000 Subject: [PATCH] - Cleanup for targeting overlay not selected. --- src/main/java/forge/game/phase/Combat.java | 2 +- .../forge/gui/match/TargetingOverlay.java | 19 ++++++++++--------- 2 files changed, 11 insertions(+), 10 deletions(-) diff --git a/src/main/java/forge/game/phase/Combat.java b/src/main/java/forge/game/phase/Combat.java index 2063ea79d78..9dd11617432 100644 --- a/src/main/java/forge/game/phase/Combat.java +++ b/src/main/java/forge/game/phase/Combat.java @@ -331,7 +331,7 @@ public class Combat { * @return a boolean. */ public final boolean isAttacking(final Card c) { - return this.attackerMap.get(c) != null; + return this.attackerMap.containsKey(c); } /** diff --git a/src/main/java/forge/gui/match/TargetingOverlay.java b/src/main/java/forge/gui/match/TargetingOverlay.java index ece87a6a359..5bafcb47471 100644 --- a/src/main/java/forge/gui/match/TargetingOverlay.java +++ b/src/main/java/forge/gui/match/TargetingOverlay.java @@ -94,9 +94,11 @@ public enum TargetingOverlay { for (CardPanel c : cPanels) { if (c.isSelected()) { activePanel = c; + break; } } } + if (activePanel == null) { return; } break; default: // Draw all @@ -121,7 +123,6 @@ public enum TargetingOverlay { if (CDock.SINGLETON_INSTANCE.getArcState() == 1) { // Only work with the active panel - if (activePanel == null) { return; } Card c = activePanel.getCard(); Card enchanting = c.getEnchantingCard(); @@ -173,16 +174,17 @@ public enum TargetingOverlay { if (!c.isShowing()) { continue; } + Card card = c.getCard(); // Enchantments - Card enchanting = c.getCard().getEnchantingCard(); + Card enchanting = card.getEnchantingCard(); if (enchanting != null) { - if (enchanting.getController().equals(c.getCard().getController())) { + if (enchanting.getController().equals(card.getController())) { continue; } arcs.add(new Point[]{ endpoints.get(enchanting.getUniqueNumber()), - endpoints.get(c.getCard().getUniqueNumber()) + endpoints.get(card.getUniqueNumber()) }); } } @@ -291,13 +293,13 @@ public enum TargetingOverlay { if (overlaystate == 0) { return; } // Arc drawing + assembleArcs(); + if (arcs.isEmpty()) { return; } + Graphics2D g2d = (Graphics2D) g; g2d.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON); - - assembleArcs(); - if (arcs.size() < 1) { return; } - + Color color = FSkin.getColor(FSkin.Colors.CLR_ACTIVE); for (Point[] p : arcs) { if (p[0] == null || p[1] == null) { @@ -309,7 +311,6 @@ public enum TargetingOverlay { int startX = (int) p[1].getX(); int startY = (int) p[1].getY(); - Color color = FSkin.getColor(FSkin.Colors.CLR_ACTIVE); drawArrow(g2d, startX, startY, endX, endY, color); }