From ceab176d9f461fb9fa24a471543aef09f025a8d2 Mon Sep 17 00:00:00 2001 From: Maxmtg Date: Tue, 21 Jan 2014 06:59:28 +0000 Subject: [PATCH] improved the codestyle for Dependencies left from gui --- .gitattributes | 3 +-- .../src/main/java/forge/Dependencies.java | 24 ++++++++++++++++++ .../src/main/java/forge/ImageCacheBridge.java | 14 ----------- .../main/java/forge/PreferencesBridge.java | 25 ------------------- .../src/main/java/forge/ai/AiController.java | 4 +-- .../src/main/java/forge/game/GameLog.java | 4 +-- .../src/main/java/forge/game/Match.java | 4 +-- .../game/ability/effects/CloneEffect.java | 4 +-- .../game/ability/effects/EffectEffect.java | 4 +-- .../java/forge/game/card/CardFactory.java | 10 ++++---- .../main/java/forge/game/card/CardUtil.java | 4 +-- .../java/forge/game/phase/PhaseHandler.java | 6 ++--- .../java/forge/game/player/LobbyPlayerAi.java | 4 +-- .../main/java/forge/ImageCacheProvider.java | 3 ++- .../main/java/forge/PreferencesProvider.java | 6 +---- forge-gui/src/main/java/forge/view/Main.java | 4 +-- 16 files changed, 52 insertions(+), 71 deletions(-) create mode 100644 forge-game/src/main/java/forge/Dependencies.java delete mode 100644 forge-game/src/main/java/forge/ImageCacheBridge.java delete mode 100644 forge-game/src/main/java/forge/PreferencesBridge.java diff --git a/.gitattributes b/.gitattributes index f8fdf1a813b..aef55c3c030 100644 --- a/.gitattributes +++ b/.gitattributes @@ -121,8 +121,7 @@ forge-game/.settings/org.eclipse.m2e.core.prefs -text forge-game/pom.xml -text forge-game/src/main/java/forge/Command.java svneol=native#text/plain forge-game/src/main/java/forge/Constant.java svneol=native#text/plain -forge-game/src/main/java/forge/ImageCacheBridge.java -text -forge-game/src/main/java/forge/PreferencesBridge.java -text +forge-game/src/main/java/forge/Dependencies.java -text forge-game/src/main/java/forge/ai/AiAttackController.java svneol=native#text/plain forge-game/src/main/java/forge/ai/AiBlockController.java svneol=native#text/plain forge-game/src/main/java/forge/ai/AiController.java svneol=native#text/plain diff --git a/forge-game/src/main/java/forge/Dependencies.java b/forge-game/src/main/java/forge/Dependencies.java new file mode 100644 index 00000000000..85225c2b241 --- /dev/null +++ b/forge-game/src/main/java/forge/Dependencies.java @@ -0,0 +1,24 @@ +package forge; + +import forge.item.InventoryItem; + +public class Dependencies { + + public static PreferencesMethods preferences; + public interface PreferencesMethods { + public abstract boolean getEnableAiCheats(); + public abstract boolean getCloneModeSource(); + public abstract String getLogEntryType(); + public abstract String getCurrentAiProfile(); + public abstract boolean canRandomFoil(); + public abstract boolean isManaBurnEnabled(); + public abstract boolean areBlocksFree(); + } + + public static ImageCacheMethods imagecache; + public interface ImageCacheMethods { + String getImageKey(InventoryItem cp, boolean altState); + String getTokenKey(String imageName); + String getMorphImage(); + } +} \ No newline at end of file diff --git a/forge-game/src/main/java/forge/ImageCacheBridge.java b/forge-game/src/main/java/forge/ImageCacheBridge.java deleted file mode 100644 index cfd0e59fbc7..00000000000 --- a/forge-game/src/main/java/forge/ImageCacheBridge.java +++ /dev/null @@ -1,14 +0,0 @@ -package forge; - -import forge.item.InventoryItem; - -public class ImageCacheBridge { - - public static Methods instance; - - public interface Methods { - String getImageKey(InventoryItem cp, boolean altState); - String getTokenKey(String imageName); - String getMorphImage(); - } -} \ No newline at end of file diff --git a/forge-game/src/main/java/forge/PreferencesBridge.java b/forge-game/src/main/java/forge/PreferencesBridge.java deleted file mode 100644 index 19cdc877f1e..00000000000 --- a/forge-game/src/main/java/forge/PreferencesBridge.java +++ /dev/null @@ -1,25 +0,0 @@ -package forge; - - -public class PreferencesBridge { - public static PreferencesSet Instance; - - public interface PreferencesSet { - - public abstract boolean getEnableAiCheats(); - - public abstract boolean getCloneModeSource(); - - public abstract String getLogEntryType(); - - public abstract String getCurrentAiProfile(); - - public abstract boolean canRandomFoil(); - - public abstract boolean isManaBurnEnabled(); - - public abstract boolean areBlocksFree(); - - } - -} \ No newline at end of file diff --git a/forge-game/src/main/java/forge/ai/AiController.java b/forge-game/src/main/java/forge/ai/AiController.java index ecea0123002..ae254fa71d6 100644 --- a/forge-game/src/main/java/forge/ai/AiController.java +++ b/forge-game/src/main/java/forge/ai/AiController.java @@ -34,7 +34,7 @@ import com.google.common.base.Predicates; import com.google.common.collect.Iterables; import com.google.common.collect.Lists; -import forge.PreferencesBridge; +import forge.Dependencies; import forge.card.CardType; import forge.card.MagicColor; import forge.deck.CardPool; @@ -98,7 +98,7 @@ public class AiController { player = computerPlayer; game = game0; - canCheatShuffle = PreferencesBridge.Instance.getEnableAiCheats(); + canCheatShuffle = Dependencies.preferences.getEnableAiCheats(); } /** diff --git a/forge-game/src/main/java/forge/game/GameLog.java b/forge-game/src/main/java/forge/game/GameLog.java index 88142d6816b..b192825a87f 100644 --- a/forge-game/src/main/java/forge/game/GameLog.java +++ b/forge-game/src/main/java/forge/game/GameLog.java @@ -24,7 +24,7 @@ import java.util.Observable; import org.apache.commons.lang3.StringUtils; -import forge.PreferencesBridge; +import forge.Dependencies; import forge.game.event.IGameEventVisitor; @@ -107,7 +107,7 @@ public class GameLog extends Observable { } public GameLogEntryType getGameLogEntryTypeSetting() { - String logEntryType = PreferencesBridge.Instance.getLogEntryType(); + String logEntryType = Dependencies.preferences.getLogEntryType(); return GameLogEntryType.valueOf(logEntryType); } diff --git a/forge-game/src/main/java/forge/game/Match.java b/forge-game/src/main/java/forge/game/Match.java index c188ab74c6d..565ebc83028 100644 --- a/forge-game/src/main/java/forge/game/Match.java +++ b/forge-game/src/main/java/forge/game/Match.java @@ -16,7 +16,7 @@ import com.google.common.collect.Iterables; import com.google.common.collect.Lists; import com.google.common.collect.Multimap; -import forge.PreferencesBridge; +import forge.Dependencies; import forge.deck.CardPool; import forge.deck.Deck; import forge.deck.DeckSection; @@ -97,7 +97,7 @@ public class Match { * TODO: Write javadoc for this method. */ public void startGame(final Game game, final CountDownLatch latch) { - final boolean canRandomFoil = PreferencesBridge.Instance.canRandomFoil() && gameType == GameType.Constructed; + final boolean canRandomFoil = Dependencies.preferences.canRandomFoil() && gameType == GameType.Constructed; // This code could be run run from EDT. game.getAction().invoke(new Runnable() { diff --git a/forge-game/src/main/java/forge/game/ability/effects/CloneEffect.java b/forge-game/src/main/java/forge/game/ability/effects/CloneEffect.java index 46e05e0cc2d..d01585ee193 100644 --- a/forge-game/src/main/java/forge/game/ability/effects/CloneEffect.java +++ b/forge-game/src/main/java/forge/game/ability/effects/CloneEffect.java @@ -6,7 +6,7 @@ import java.util.List; import java.util.Map; import forge.Command; -import forge.PreferencesBridge; +import forge.Dependencies; import forge.card.CardCharacteristicName; import forge.game.Game; import forge.game.ability.AbilityUtils; @@ -84,7 +84,7 @@ public class CloneEffect extends SpellAbilityEffect { } // determine the image to be used for the clone - String imageFileName = PreferencesBridge.Instance.getCloneModeSource() ? tgtCard.getImageKey() : cardToCopy.getImageKey(); + String imageFileName = Dependencies.preferences.getCloneModeSource() ? tgtCard.getImageKey() : cardToCopy.getImageKey(); if (sa.hasParam("ImageSource")) { // Allow the image to be stipulated by using a defined card source List cloneImgSources = AbilityUtils.getDefinedCards(host, sa.getParam("ImageSource"), sa); if (!cloneImgSources.isEmpty()) { diff --git a/forge-game/src/main/java/forge/game/ability/effects/EffectEffect.java b/forge-game/src/main/java/forge/game/ability/effects/EffectEffect.java index 0f2c4b386b8..c01fac76f5e 100644 --- a/forge-game/src/main/java/forge/game/ability/effects/EffectEffect.java +++ b/forge-game/src/main/java/forge/game/ability/effects/EffectEffect.java @@ -3,7 +3,7 @@ package forge.game.ability.effects; import java.util.List; import forge.Command; -import forge.ImageCacheBridge; +import forge.Dependencies; import forge.game.Game; import forge.game.ability.AbilityFactory; import forge.game.ability.AbilityUtils; @@ -104,7 +104,7 @@ public class EffectEffect extends SpellAbilityEffect { eff.addType("Effect"); // Or Emblem eff.setToken(true); // Set token to true, so when leaving play it gets nuked eff.setOwner(controller); - eff.setImageKey(sa.hasParam("Image") ? ImageCacheBridge.instance.getTokenKey(sa.getParam("Image")) : hostCard.getImageKey()); + eff.setImageKey(sa.hasParam("Image") ? Dependencies.imagecache.getTokenKey(sa.getParam("Image")) : hostCard.getImageKey()); eff.setColor(hostCard.getColor()); eff.setImmutable(true); eff.setEffectSource(hostCard); diff --git a/forge-game/src/main/java/forge/game/card/CardFactory.java b/forge-game/src/main/java/forge/game/card/CardFactory.java index cbf455c8935..79d16266149 100644 --- a/forge-game/src/main/java/forge/game/card/CardFactory.java +++ b/forge-game/src/main/java/forge/game/card/CardFactory.java @@ -22,7 +22,7 @@ import java.util.Arrays; import java.util.List; import java.util.Map.Entry; -import forge.ImageCacheBridge; +import forge.Dependencies; import forge.card.CardCharacteristicName; import forge.card.CardRules; import forge.card.CardSplitType; @@ -266,7 +266,7 @@ public class CardFactory { c.setRarity(cp.getRarity()); // Would like to move this away from in-game entities - String originalPicture = ImageCacheBridge.instance.getImageKey(cp, false); + String originalPicture = Dependencies.imagecache.getImageKey(cp, false); //System.out.println(c.getName() + " -> " + originalPicture); c.setImageKey(originalPicture); c.setToken(cp.isToken()); @@ -274,11 +274,11 @@ public class CardFactory { if (c.hasAlternateState()) { if (c.isFlipCard()) { c.setState(CardCharacteristicName.Flipped); - c.setImageKey(ImageCacheBridge.instance.getImageKey(cp, true)); + c.setImageKey(Dependencies.imagecache.getImageKey(cp, true)); } else if (c.isDoubleFaced() && cp instanceof PaperCard) { c.setState(CardCharacteristicName.Transformed); - c.setImageKey(ImageCacheBridge.instance.getImageKey(cp, true)); + c.setImageKey(Dependencies.imagecache.getImageKey(cp, true)); } else if (c.isSplitCard()) { c.setState(CardCharacteristicName.LeftSplit); @@ -576,7 +576,7 @@ public class CardFactory { final List list = new ArrayList(); final Card c = new Card(controller.getGame().nextCardId()); c.setName(name); - c.setImageKey(ImageCacheBridge.instance.getTokenKey(imageName)); + c.setImageKey(Dependencies.imagecache.getTokenKey(imageName)); // TODO - most tokens mana cost is 0, this needs to be fixed // c.setManaCost(manaCost); diff --git a/forge-game/src/main/java/forge/game/card/CardUtil.java b/forge-game/src/main/java/forge/game/card/CardUtil.java index 8866d1b128e..e270c38883d 100644 --- a/forge-game/src/main/java/forge/game/card/CardUtil.java +++ b/forge-game/src/main/java/forge/game/card/CardUtil.java @@ -23,7 +23,7 @@ import java.util.List; import java.util.Set; import forge.Constant; -import forge.ImageCacheBridge; +import forge.Dependencies; import forge.card.CardCharacteristicName; import forge.card.ColorSet; import forge.card.MagicColor; @@ -217,7 +217,7 @@ public final class CardUtil { ret.setName(""); ret.setType(types); - ret.setImageKey(ImageCacheBridge.instance.getMorphImage()); + ret.setImageKey(Dependencies.imagecache.getMorphImage()); return ret; } diff --git a/forge-game/src/main/java/forge/game/phase/PhaseHandler.java b/forge-game/src/main/java/forge/game/phase/PhaseHandler.java index ea7d054be32..a6f86830964 100644 --- a/forge-game/src/main/java/forge/game/phase/PhaseHandler.java +++ b/forge-game/src/main/java/forge/game/phase/PhaseHandler.java @@ -28,7 +28,7 @@ import org.apache.commons.lang3.time.StopWatch; import com.google.common.collect.ArrayListMultimap; import com.google.common.collect.Multimap; -import forge.PreferencesBridge; +import forge.Dependencies; import forge.card.mana.ManaCost; import forge.game.GameEntity; import forge.game.GameStage; @@ -434,7 +434,7 @@ public class PhaseHandler implements java.io.Serializable { for (Player p : game.getPlayers()) { int burn = p.getManaPool().clearPool(true); - boolean dealDamage = PreferencesBridge.Instance.isManaBurnEnabled(); + boolean dealDamage = Dependencies.preferences.isManaBurnEnabled(); if (dealDamage) { p.loseLife(burn); @@ -710,7 +710,7 @@ public class PhaseHandler implements java.io.Serializable { } } - boolean hasPaid = blockCost.getTotalMana().isZero() && blockCost.isOnlyManaCost() && (!hasBlockCost || PreferencesBridge.Instance.areBlocksFree()); // true if needless to pay + boolean hasPaid = blockCost.getTotalMana().isZero() && blockCost.isOnlyManaCost() && (!hasBlockCost || Dependencies.preferences.areBlocksFree()); // true if needless to pay if (!hasPaid) { hasPaid = blocker.getController().getController().payManaOptional(blocker, blockCost, null, "Pay cost to declare " + blocker + " a blocker. ", ManaPaymentPurpose.DeclareBlocker); diff --git a/forge-game/src/main/java/forge/game/player/LobbyPlayerAi.java b/forge-game/src/main/java/forge/game/player/LobbyPlayerAi.java index 9821c5fc8be..298943525b1 100644 --- a/forge-game/src/main/java/forge/game/player/LobbyPlayerAi.java +++ b/forge-game/src/main/java/forge/game/player/LobbyPlayerAi.java @@ -1,6 +1,6 @@ package forge.game.player; -import forge.PreferencesBridge; +import forge.Dependencies; import forge.ai.AiProfileUtil; import forge.game.Game; @@ -34,7 +34,7 @@ public class LobbyPlayerAi extends LobbyPlayer { Player ai = new Player(getName(), game); ai.setFirstController(createControllerFor(ai)); - String currentAiProfile = PreferencesBridge.Instance.getCurrentAiProfile(); + String currentAiProfile = Dependencies.preferences.getCurrentAiProfile(); String lastProfileChosen = game.getMatch().getPlayedGames().isEmpty() ? currentAiProfile : getAiProfile(); // TODO: implement specific AI profiles for quest mode. diff --git a/forge-gui/src/main/java/forge/ImageCacheProvider.java b/forge-gui/src/main/java/forge/ImageCacheProvider.java index 081a0f9a69b..938e090b7d6 100644 --- a/forge-gui/src/main/java/forge/ImageCacheProvider.java +++ b/forge-gui/src/main/java/forge/ImageCacheProvider.java @@ -1,9 +1,10 @@ package forge; +import forge.Dependencies.ImageCacheMethods; import forge.item.InventoryItem; import forge.properties.NewConstants; -public class ImageCacheProvider implements ImageCacheBridge.Methods { +public class ImageCacheProvider implements ImageCacheMethods { @Override public String getImageKey(InventoryItem cp, boolean altState) { diff --git a/forge-gui/src/main/java/forge/PreferencesProvider.java b/forge-gui/src/main/java/forge/PreferencesProvider.java index 4c23292b928..40c84557656 100644 --- a/forge-gui/src/main/java/forge/PreferencesProvider.java +++ b/forge-gui/src/main/java/forge/PreferencesProvider.java @@ -1,15 +1,13 @@ package forge; -import forge.PreferencesBridge.PreferencesSet; import forge.properties.ForgePreferences.FPref; -public class PreferencesProvider implements PreferencesSet { +public class PreferencesProvider implements Dependencies.PreferencesMethods { @Override public boolean getEnableAiCheats() { return Singletons.getModel().getPreferences().getPrefBoolean(FPref.UI_ENABLE_AI_CHEATS); } - @Override public boolean getCloneModeSource() { return Singletons.getModel().getPreferences().getPrefBoolean(FPref.UI_CLONE_MODE_SOURCE); @@ -20,7 +18,6 @@ public class PreferencesProvider implements PreferencesSet { return Singletons.getModel().getPreferences().getPref(FPref.DEV_LOG_ENTRY_TYPE); } - @Override public String getCurrentAiProfile() { return Singletons.getModel().getPreferences().getPref(FPref.UI_CURRENT_AI_PROFILE); @@ -31,7 +28,6 @@ public class PreferencesProvider implements PreferencesSet { return Singletons.getModel().getPreferences().getPrefBoolean(FPref.UI_RANDOM_FOIL); } - @Override public boolean isManaBurnEnabled() { // TODO Auto-generated method stub diff --git a/forge-gui/src/main/java/forge/view/Main.java b/forge-gui/src/main/java/forge/view/Main.java index 689a60cfd69..1d233e3996b 100644 --- a/forge-gui/src/main/java/forge/view/Main.java +++ b/forge-gui/src/main/java/forge/view/Main.java @@ -37,8 +37,8 @@ public final class Main { //Turn off the Java 2D system's use of Direct3D to improve rendering speed (particularly when Full Screen) System.setProperty("sun.java2d.d3d", "false"); - forge.PreferencesBridge.Instance = new PreferencesProvider(); - forge.ImageCacheBridge.instance = new ImageCacheProvider(); + forge.Dependencies.preferences = new PreferencesProvider(); + forge.Dependencies.imagecache = new ImageCacheProvider(); // Start splash screen first, then data models, then controller. if (args.length == 0) {