Adjustment: combat panel less "sticky", stack panel more "sticky".

This commit is contained in:
Doublestrike
2012-02-11 12:02:35 +00:00
parent 0093b27f2f
commit 2e70c97355
9 changed files with 61 additions and 53 deletions

View File

@@ -36,6 +36,7 @@ import forge.properties.NewConstants;
import forge.quest.data.QuestData;
import forge.quest.data.QuestEvent;
import forge.quest.data.QuestEventManager;
import forge.view.GuiTopLevel;
import forge.view.toolbox.FOverlay;
/**
@@ -631,10 +632,9 @@ public final class AllZone {
AllZone.getDisplay().showCombat("");
AllZone.getDisplay().loadPrefs();
AllZone.getInputControl().clearInput();
AllZone.getColorChanger().reset();
((GuiTopLevel) AllZone.getDisplay()).showStack();
}
/**

View File

@@ -628,8 +628,6 @@ public class Combat {
}
}
}
// update combat
CombatUtil.showCombat();
} // removeFromCombat()
/**

View File

@@ -455,7 +455,6 @@ public class ComputerAIGeneral implements Computer {
}
AllZone.getComputerPlayer().getZone(Zone.Battlefield).updateObservers();
CombatUtil.showCombat();
AllZone.getPhaseHandler().setNeedToNextPhase(true);
}
@@ -481,8 +480,6 @@ public class ComputerAIGeneral implements Computer {
AllZone.setCombat(ComputerUtilBlock.getBlockers(AllZone.getCombat(), blockers));
CombatUtil.showCombat();
AllZone.getPhaseHandler().setNeedToNextPhase(true);
}

View File

@@ -24,6 +24,7 @@ import java.util.Stack;
import com.esotericsoftware.minlog.Log;
import forge.Constant.Zone;
import forge.view.GuiTopLevel;
/**
* <p>
@@ -316,41 +317,59 @@ public class PhaseHandler extends MyObservable implements java.io.Serializable {
AllZone.getPhaseHandler().setSkipPhase(true);
AllZone.getGameAction().checkStateEffects();
// UNTAP
if (phase.equals(Constant.Phase.UNTAP)) {
((GuiTopLevel) AllZone.getDisplay()).showStack();
PhaseUtil.handleUntap();
} else if (phase.equals(Constant.Phase.UPKEEP)) {
}
// UPKEEP
else if (phase.equals(Constant.Phase.UPKEEP)) {
PhaseUtil.handleUpkeep();
} else if (phase.equals(Constant.Phase.DRAW)) {
}
// DRAW
else if (phase.equals(Constant.Phase.DRAW)) {
PhaseUtil.handleDraw();
} else if (phase.equals(Constant.Phase.COMBAT_BEGIN)) {
}
// COMBAT_BEGIN
else if (phase.equals(Constant.Phase.COMBAT_BEGIN)) {
PhaseUtil.verifyCombat();
PhaseUtil.handleCombatBegin();
} else if (phase.equals(Constant.Phase.COMBAT_DECLARE_ATTACKERS)) {
}
// COMBAT_DECLARE_ATTACKERS
else if (phase.equals(Constant.Phase.COMBAT_DECLARE_ATTACKERS)) {
PhaseUtil.handleCombatDeclareAttackers();
} else if (phase.equals(Constant.Phase.COMBAT_DECLARE_ATTACKERS_INSTANT_ABILITY)) {
}
// COMBAT_DECLARE_ATTACKERS_INSTANT_ABILITY
else if (phase.equals(Constant.Phase.COMBAT_DECLARE_ATTACKERS_INSTANT_ABILITY)) {
if (this.inCombat()) {
PhaseUtil.handleDeclareAttackers();
CombatUtil.showCombat();
} else {
AllZone.getPhaseHandler().setNeedToNextPhase(true);
}
}
// we can skip AfterBlockers and AfterAttackers if necessary
// COMBAT_DECLARE_BLOCKERS: we can skip AfterBlockers and AfterAttackers if necessary
else if (phase.equals(Constant.Phase.COMBAT_DECLARE_BLOCKERS)) {
if (this.inCombat()) {
PhaseUtil.verifyCombat();
CombatUtil.showCombat();
} else {
AllZone.getPhaseHandler().setNeedToNextPhase(true);
}
} else if (phase.equals(Constant.Phase.COMBAT_DECLARE_BLOCKERS_INSTANT_ABILITY)) {
}
// COMBAT_DECLARE_BLOCKERS_INSTANT_ABILITY
else if (phase.equals(Constant.Phase.COMBAT_DECLARE_BLOCKERS_INSTANT_ABILITY)) {
// After declare blockers are finished being declared mark them
// blocked and trigger blocking things
if (!this.inCombat()) {
AllZone.getPhaseHandler().setNeedToNextPhase(true);
} else {
if (this.inCombat()) {
PhaseUtil.handleDeclareBlockers();
CombatUtil.showCombat();
} else {
AllZone.getPhaseHandler().setNeedToNextPhase(true);
}
} else if (phase.equals(Constant.Phase.COMBAT_FIRST_STRIKE_DAMAGE)) {
}
// COMBAT_FIRST_STRIKE_DAMAGE
else if (phase.equals(Constant.Phase.COMBAT_FIRST_STRIKE_DAMAGE)) {
if (!this.inCombat()) {
AllZone.getPhaseHandler().setNeedToNextPhase(true);
} else {
@@ -368,7 +387,9 @@ public class PhaseHandler extends MyObservable implements java.io.Serializable {
CombatUtil.showCombat();
}
}
} else if (phase.equals(Constant.Phase.COMBAT_DAMAGE)) {
}
// COMBAT_DAMAGE
else if (phase.equals(Constant.Phase.COMBAT_DAMAGE)) {
if (!this.inCombat()) {
AllZone.getPhaseHandler().setNeedToNextPhase(true);
} else {
@@ -383,13 +404,25 @@ public class PhaseHandler extends MyObservable implements java.io.Serializable {
AllZone.getGameAction().checkStateEffects();
CombatUtil.showCombat();
}
} else if (phase.equals(Constant.Phase.COMBAT_END)) {
}
// COMBAT_END
else if (phase.equals(Constant.Phase.COMBAT_END)) {
// End Combat always happens
AllZone.getEndOfCombat().executeUntil();
AllZone.getEndOfCombat().executeAt();
} else if (phase.equals(Constant.Phase.END_OF_TURN)) {
CombatUtil.showCombat();
((GuiTopLevel) AllZone.getDisplay()).showStack();
}
else if (phase.equals(Constant.Phase.MAIN2)) {
CombatUtil.showCombat();
((GuiTopLevel) AllZone.getDisplay()).showStack();
}
// END_OF_TURN
else if (phase.equals(Constant.Phase.END_OF_TURN)) {
AllZone.getEndOfTurn().executeAt();
} else if (phase.equals(Constant.Phase.CLEANUP)) {
}
// CLEANUP
else if (phase.equals(Constant.Phase.CLEANUP)) {
AllZone.getPhaseHandler().getPlayerTurn().clearAssignedDamage();
// Reset Damage received map
@@ -444,6 +477,7 @@ public class PhaseHandler extends MyObservable implements java.io.Serializable {
// This line fixes Combat Damage triggers not going off when they should
AllZone.getStack().unfreezeStack();
// UNTAP
if (!phase.equals(Constant.Phase.UNTAP)) {
// during untap
this.resetPriority();
@@ -492,8 +526,8 @@ public class PhaseHandler extends MyObservable implements java.io.Serializable {
}
if (this.getPhase().equals(Constant.Phase.COMBAT_END)) {
((GuiTopLevel) (AllZone.getDisplay())).showStack();
AllZone.getCombat().reset();
AllZone.getDisplay().showCombat("");
this.resetAttackedThisCombat(this.getPlayerTurn());
this.bCombat = false;
}

View File

@@ -21,8 +21,8 @@ import java.util.HashMap;
import forge.Constant.Zone;
import forge.view.GuiTopLevel;
import forge.view.match.ViewField.PhaseLabel;
import forge.view.match.MatchTopLevel;
import forge.view.match.ViewField.PhaseLabel;
/**
* <p>
@@ -205,7 +205,6 @@ public class PhaseUtil {
*/
public static void verifyCombat() {
AllZone.getCombat().verifyCreaturesInPlay();
CombatUtil.showCombat();
}
/**
@@ -354,7 +353,6 @@ public class PhaseUtil {
AllZone.getStack().unfreezeStack();
AllZone.getGameLog().add("Combat", CombatUtil.getCombatBlockForLog(), 1);
CombatUtil.showCombat();
}
// ***** Combat Utility **********

View File

@@ -25,9 +25,9 @@ import forge.CombatUtil;
import forge.Command;
import forge.Constant;
import forge.Constant.Zone;
import forge.view.GuiTopLevel;
import forge.GameActionUtil;
import forge.PlayerZone;
import forge.view.GuiTopLevel;
/**
* <p>
@@ -114,7 +114,6 @@ public class InputAttack extends Input {
com.execute();
}
CombatUtil.showCombat();
}
else {
((GuiTopLevel) AllZone.getDisplay()).getController().getMatchController().getView().getInputController().remind();

View File

@@ -83,8 +83,6 @@ public class InputBlock extends Input {
sb.append("To cancel a block right-click on your blocker");
AllZone.getDisplay().showMessage(sb.toString());
}
CombatUtil.showCombat();
}
/** {@inheritDoc} */

View File

@@ -212,6 +212,11 @@ public class GuiTopLevel extends JFrame implements Display, CardContainer {
control.getMatchController().getView().getTabberController().getView().updateCombat(s0);
}
/** */
public void showStack() {
control.getMatchController().getView().getTabberController().showPnlStack();
}
/*
* (non-Javadoc)
*

View File

@@ -17,10 +17,6 @@
*/
package forge.view.match;
import java.awt.Font;
import java.awt.event.ComponentAdapter;
import java.awt.event.ComponentEvent;
import net.miginfocom.swing.MigLayout;
import forge.control.match.ControlDetail;
import forge.gui.game.CardDetailPanel;
@@ -50,24 +46,7 @@ public class ViewDetail extends FPanel {
add(pnlDetail, "w 100%!, h 100%!");
control = new ControlDetail(this);
this.addComponentListener(new ComponentAdapter() {
@Override
public void componentResized(ComponentEvent e) {
int px = (int) (ViewDetail.this.getWidth() / 15);
px = (px < 11 ? 11 : px);
Font font = FSkin.getFont(px);
pnlDetail.getNameCostLabel().setFont(font);
pnlDetail.getTypeLabel().setFont(font);
pnlDetail.getPowerToughnessLabel().setFont(font);
pnlDetail.getDamageLabel().setFont(font);
pnlDetail.getIDLabel().setFont(font);
pnlDetail.getSetInfoLabel().setFont(font);
pnlDetail.getCDArea().setFont(font);
setFont(FSkin.getFont(px));
}
});
setFont(FSkin.getFont(12));
}
/**