improved the codestyle for Dependencies left from gui

This commit is contained in:
Maxmtg
2014-01-21 06:59:28 +00:00
parent 050887c53c
commit ceab176d9f
16 changed files with 52 additions and 71 deletions

3
.gitattributes vendored
View File

@@ -121,8 +121,7 @@ forge-game/.settings/org.eclipse.m2e.core.prefs -text
forge-game/pom.xml -text forge-game/pom.xml -text
forge-game/src/main/java/forge/Command.java svneol=native#text/plain 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/Constant.java svneol=native#text/plain
forge-game/src/main/java/forge/ImageCacheBridge.java -text forge-game/src/main/java/forge/Dependencies.java -text
forge-game/src/main/java/forge/PreferencesBridge.java -text
forge-game/src/main/java/forge/ai/AiAttackController.java svneol=native#text/plain 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/AiBlockController.java svneol=native#text/plain
forge-game/src/main/java/forge/ai/AiController.java svneol=native#text/plain forge-game/src/main/java/forge/ai/AiController.java svneol=native#text/plain

View File

@@ -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();
}
}

View File

@@ -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();
}
}

View File

@@ -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();
}
}

View File

@@ -34,7 +34,7 @@ import com.google.common.base.Predicates;
import com.google.common.collect.Iterables; import com.google.common.collect.Iterables;
import com.google.common.collect.Lists; import com.google.common.collect.Lists;
import forge.PreferencesBridge; import forge.Dependencies;
import forge.card.CardType; import forge.card.CardType;
import forge.card.MagicColor; import forge.card.MagicColor;
import forge.deck.CardPool; import forge.deck.CardPool;
@@ -98,7 +98,7 @@ public class AiController {
player = computerPlayer; player = computerPlayer;
game = game0; game = game0;
canCheatShuffle = PreferencesBridge.Instance.getEnableAiCheats(); canCheatShuffle = Dependencies.preferences.getEnableAiCheats();
} }
/** /**

View File

@@ -24,7 +24,7 @@ import java.util.Observable;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import forge.PreferencesBridge; import forge.Dependencies;
import forge.game.event.IGameEventVisitor; import forge.game.event.IGameEventVisitor;
@@ -107,7 +107,7 @@ public class GameLog extends Observable {
} }
public GameLogEntryType getGameLogEntryTypeSetting() { public GameLogEntryType getGameLogEntryTypeSetting() {
String logEntryType = PreferencesBridge.Instance.getLogEntryType(); String logEntryType = Dependencies.preferences.getLogEntryType();
return GameLogEntryType.valueOf(logEntryType); return GameLogEntryType.valueOf(logEntryType);
} }

View File

@@ -16,7 +16,7 @@ import com.google.common.collect.Iterables;
import com.google.common.collect.Lists; import com.google.common.collect.Lists;
import com.google.common.collect.Multimap; import com.google.common.collect.Multimap;
import forge.PreferencesBridge; import forge.Dependencies;
import forge.deck.CardPool; import forge.deck.CardPool;
import forge.deck.Deck; import forge.deck.Deck;
import forge.deck.DeckSection; import forge.deck.DeckSection;
@@ -97,7 +97,7 @@ public class Match {
* TODO: Write javadoc for this method. * TODO: Write javadoc for this method.
*/ */
public void startGame(final Game game, final CountDownLatch latch) { 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. // This code could be run run from EDT.
game.getAction().invoke(new Runnable() { game.getAction().invoke(new Runnable() {

View File

@@ -6,7 +6,7 @@ import java.util.List;
import java.util.Map; import java.util.Map;
import forge.Command; import forge.Command;
import forge.PreferencesBridge; import forge.Dependencies;
import forge.card.CardCharacteristicName; import forge.card.CardCharacteristicName;
import forge.game.Game; import forge.game.Game;
import forge.game.ability.AbilityUtils; import forge.game.ability.AbilityUtils;
@@ -84,7 +84,7 @@ public class CloneEffect extends SpellAbilityEffect {
} }
// determine the image to be used for the clone // 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 if (sa.hasParam("ImageSource")) { // Allow the image to be stipulated by using a defined card source
List<Card> cloneImgSources = AbilityUtils.getDefinedCards(host, sa.getParam("ImageSource"), sa); List<Card> cloneImgSources = AbilityUtils.getDefinedCards(host, sa.getParam("ImageSource"), sa);
if (!cloneImgSources.isEmpty()) { if (!cloneImgSources.isEmpty()) {

View File

@@ -3,7 +3,7 @@ package forge.game.ability.effects;
import java.util.List; import java.util.List;
import forge.Command; import forge.Command;
import forge.ImageCacheBridge; import forge.Dependencies;
import forge.game.Game; import forge.game.Game;
import forge.game.ability.AbilityFactory; import forge.game.ability.AbilityFactory;
import forge.game.ability.AbilityUtils; import forge.game.ability.AbilityUtils;
@@ -104,7 +104,7 @@ public class EffectEffect extends SpellAbilityEffect {
eff.addType("Effect"); // Or Emblem eff.addType("Effect"); // Or Emblem
eff.setToken(true); // Set token to true, so when leaving play it gets nuked eff.setToken(true); // Set token to true, so when leaving play it gets nuked
eff.setOwner(controller); 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.setColor(hostCard.getColor());
eff.setImmutable(true); eff.setImmutable(true);
eff.setEffectSource(hostCard); eff.setEffectSource(hostCard);

View File

@@ -22,7 +22,7 @@ import java.util.Arrays;
import java.util.List; import java.util.List;
import java.util.Map.Entry; import java.util.Map.Entry;
import forge.ImageCacheBridge; import forge.Dependencies;
import forge.card.CardCharacteristicName; import forge.card.CardCharacteristicName;
import forge.card.CardRules; import forge.card.CardRules;
import forge.card.CardSplitType; import forge.card.CardSplitType;
@@ -266,7 +266,7 @@ public class CardFactory {
c.setRarity(cp.getRarity()); c.setRarity(cp.getRarity());
// Would like to move this away from in-game entities // 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); //System.out.println(c.getName() + " -> " + originalPicture);
c.setImageKey(originalPicture); c.setImageKey(originalPicture);
c.setToken(cp.isToken()); c.setToken(cp.isToken());
@@ -274,11 +274,11 @@ public class CardFactory {
if (c.hasAlternateState()) { if (c.hasAlternateState()) {
if (c.isFlipCard()) { if (c.isFlipCard()) {
c.setState(CardCharacteristicName.Flipped); 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) { else if (c.isDoubleFaced() && cp instanceof PaperCard) {
c.setState(CardCharacteristicName.Transformed); c.setState(CardCharacteristicName.Transformed);
c.setImageKey(ImageCacheBridge.instance.getImageKey(cp, true)); c.setImageKey(Dependencies.imagecache.getImageKey(cp, true));
} }
else if (c.isSplitCard()) { else if (c.isSplitCard()) {
c.setState(CardCharacteristicName.LeftSplit); c.setState(CardCharacteristicName.LeftSplit);
@@ -576,7 +576,7 @@ public class CardFactory {
final List<Card> list = new ArrayList<Card>(); final List<Card> list = new ArrayList<Card>();
final Card c = new Card(controller.getGame().nextCardId()); final Card c = new Card(controller.getGame().nextCardId());
c.setName(name); 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 // TODO - most tokens mana cost is 0, this needs to be fixed
// c.setManaCost(manaCost); // c.setManaCost(manaCost);

View File

@@ -23,7 +23,7 @@ import java.util.List;
import java.util.Set; import java.util.Set;
import forge.Constant; import forge.Constant;
import forge.ImageCacheBridge; import forge.Dependencies;
import forge.card.CardCharacteristicName; import forge.card.CardCharacteristicName;
import forge.card.ColorSet; import forge.card.ColorSet;
import forge.card.MagicColor; import forge.card.MagicColor;
@@ -217,7 +217,7 @@ public final class CardUtil {
ret.setName(""); ret.setName("");
ret.setType(types); ret.setType(types);
ret.setImageKey(ImageCacheBridge.instance.getMorphImage()); ret.setImageKey(Dependencies.imagecache.getMorphImage());
return ret; return ret;
} }

View File

@@ -28,7 +28,7 @@ import org.apache.commons.lang3.time.StopWatch;
import com.google.common.collect.ArrayListMultimap; import com.google.common.collect.ArrayListMultimap;
import com.google.common.collect.Multimap; import com.google.common.collect.Multimap;
import forge.PreferencesBridge; import forge.Dependencies;
import forge.card.mana.ManaCost; import forge.card.mana.ManaCost;
import forge.game.GameEntity; import forge.game.GameEntity;
import forge.game.GameStage; import forge.game.GameStage;
@@ -434,7 +434,7 @@ public class PhaseHandler implements java.io.Serializable {
for (Player p : game.getPlayers()) { for (Player p : game.getPlayers()) {
int burn = p.getManaPool().clearPool(true); int burn = p.getManaPool().clearPool(true);
boolean dealDamage = PreferencesBridge.Instance.isManaBurnEnabled(); boolean dealDamage = Dependencies.preferences.isManaBurnEnabled();
if (dealDamage) { if (dealDamage) {
p.loseLife(burn); 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) { if (!hasPaid) {
hasPaid = blocker.getController().getController().payManaOptional(blocker, blockCost, null, "Pay cost to declare " + blocker + " a blocker. ", ManaPaymentPurpose.DeclareBlocker); hasPaid = blocker.getController().getController().payManaOptional(blocker, blockCost, null, "Pay cost to declare " + blocker + " a blocker. ", ManaPaymentPurpose.DeclareBlocker);

View File

@@ -1,6 +1,6 @@
package forge.game.player; package forge.game.player;
import forge.PreferencesBridge; import forge.Dependencies;
import forge.ai.AiProfileUtil; import forge.ai.AiProfileUtil;
import forge.game.Game; import forge.game.Game;
@@ -34,7 +34,7 @@ public class LobbyPlayerAi extends LobbyPlayer {
Player ai = new Player(getName(), game); Player ai = new Player(getName(), game);
ai.setFirstController(createControllerFor(ai)); ai.setFirstController(createControllerFor(ai));
String currentAiProfile = PreferencesBridge.Instance.getCurrentAiProfile(); String currentAiProfile = Dependencies.preferences.getCurrentAiProfile();
String lastProfileChosen = game.getMatch().getPlayedGames().isEmpty() ? currentAiProfile : getAiProfile(); String lastProfileChosen = game.getMatch().getPlayedGames().isEmpty() ? currentAiProfile : getAiProfile();
// TODO: implement specific AI profiles for quest mode. // TODO: implement specific AI profiles for quest mode.

View File

@@ -1,9 +1,10 @@
package forge; package forge;
import forge.Dependencies.ImageCacheMethods;
import forge.item.InventoryItem; import forge.item.InventoryItem;
import forge.properties.NewConstants; import forge.properties.NewConstants;
public class ImageCacheProvider implements ImageCacheBridge.Methods { public class ImageCacheProvider implements ImageCacheMethods {
@Override @Override
public String getImageKey(InventoryItem cp, boolean altState) { public String getImageKey(InventoryItem cp, boolean altState) {

View File

@@ -1,15 +1,13 @@
package forge; package forge;
import forge.PreferencesBridge.PreferencesSet;
import forge.properties.ForgePreferences.FPref; import forge.properties.ForgePreferences.FPref;
public class PreferencesProvider implements PreferencesSet { public class PreferencesProvider implements Dependencies.PreferencesMethods {
@Override @Override
public boolean getEnableAiCheats() { public boolean getEnableAiCheats() {
return Singletons.getModel().getPreferences().getPrefBoolean(FPref.UI_ENABLE_AI_CHEATS); return Singletons.getModel().getPreferences().getPrefBoolean(FPref.UI_ENABLE_AI_CHEATS);
} }
@Override @Override
public boolean getCloneModeSource() { public boolean getCloneModeSource() {
return Singletons.getModel().getPreferences().getPrefBoolean(FPref.UI_CLONE_MODE_SOURCE); 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); return Singletons.getModel().getPreferences().getPref(FPref.DEV_LOG_ENTRY_TYPE);
} }
@Override @Override
public String getCurrentAiProfile() { public String getCurrentAiProfile() {
return Singletons.getModel().getPreferences().getPref(FPref.UI_CURRENT_AI_PROFILE); 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); return Singletons.getModel().getPreferences().getPrefBoolean(FPref.UI_RANDOM_FOIL);
} }
@Override @Override
public boolean isManaBurnEnabled() { public boolean isManaBurnEnabled() {
// TODO Auto-generated method stub // TODO Auto-generated method stub

View File

@@ -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) //Turn off the Java 2D system's use of Direct3D to improve rendering speed (particularly when Full Screen)
System.setProperty("sun.java2d.d3d", "false"); System.setProperty("sun.java2d.d3d", "false");
forge.PreferencesBridge.Instance = new PreferencesProvider(); forge.Dependencies.preferences = new PreferencesProvider();
forge.ImageCacheBridge.instance = new ImageCacheProvider(); forge.Dependencies.imagecache = new ImageCacheProvider();
// Start splash screen first, then data models, then controller. // Start splash screen first, then data models, then controller.
if (args.length == 0) { if (args.length == 0) {