PhaseHandler.isNextTurn changed by getNextTurn.equals(ai)

This commit is contained in:
Maxmtg
2012-10-23 05:18:39 +00:00
parent f3da9bbf2c
commit a0043c5415
7 changed files with 9 additions and 26 deletions

View File

@@ -1499,7 +1499,7 @@ public class AbilityFactory {
} }
return Singletons.getModel().getGame().getPhaseHandler().is(PhaseType.END_OF_TURN) return Singletons.getModel().getGame().getPhaseHandler().is(PhaseType.END_OF_TURN)
&& Singletons.getModel().getGame().getNextPlayerAfter(sa.getActivatingPlayer()).equals(ai); && Singletons.getModel().getGame().getPhaseHandler().getNextTurn().equals(ai);
} }
/** /**

View File

@@ -45,7 +45,6 @@ import forge.game.phase.PhaseHandler;
import forge.game.phase.PhaseType; import forge.game.phase.PhaseType;
import forge.game.player.ComputerUtil; import forge.game.player.ComputerUtil;
import forge.game.player.Player; import forge.game.player.Player;
import forge.game.player.PlayerType;
import forge.game.zone.PlayerZone; import forge.game.zone.PlayerZone;
import forge.game.zone.Zone; import forge.game.zone.Zone;
import forge.game.zone.ZoneType; import forge.game.zone.ZoneType;
@@ -1929,7 +1928,7 @@ public class AbilityFactoryCounters {
if (type.equals("P1P1") && sa.isAbility() && source.isCreature() if (type.equals("P1P1") && sa.isAbility() && source.isCreature()
&& sa.getPayCosts() != null && sa.getPayCosts().getTap() && sa.getPayCosts() != null && sa.getPayCosts().getTap()
&& sa instanceof AbilitySub && sa instanceof AbilitySub
&& (phase.isNextTurn(PlayerType.HUMAN) && (!phase.getNextTurn().equals(ai)
|| phase.getPhase().isBefore(PhaseType.COMBAT_DECLARE_BLOCKERS_INSTANT_ABILITY))) { || phase.getPhase().isBefore(PhaseType.COMBAT_DECLARE_BLOCKERS_INSTANT_ABILITY))) {
boolean combatants = false; boolean combatants = false;
for (Card c : hList) { for (Card c : hList) {

View File

@@ -44,7 +44,6 @@ import forge.game.phase.PhaseHandler;
import forge.game.phase.PhaseType; import forge.game.phase.PhaseType;
import forge.game.player.ComputerUtil; import forge.game.player.ComputerUtil;
import forge.game.player.Player; import forge.game.player.Player;
import forge.game.player.PlayerType;
import forge.game.zone.ZoneType; import forge.game.zone.ZoneType;
import forge.util.MyRandom; import forge.util.MyRandom;
@@ -646,7 +645,7 @@ public class AbilityFactoryDealDamage {
// on the stack // on the stack
// or from taking combat damage // or from taking combat damage
final boolean freePing = isTrigger || saMe.getPayCosts() == null || tgt.getNumTargeted() > 0 final boolean freePing = isTrigger || saMe.getPayCosts() == null || tgt.getNumTargeted() > 0
|| (phase.is(PhaseType.END_OF_TURN) && saMe.isAbility() && phase.isNextTurn(PlayerType.COMPUTER)) || (phase.is(PhaseType.END_OF_TURN) && saMe.isAbility() && phase.getNextTurn().equals(ai))
|| (phase.is(PhaseType.MAIN2) && saMe.getRestrictions().getPlaneswalker()); || (phase.is(PhaseType.MAIN2) && saMe.getRestrictions().getPlaneswalker());
if (freePing && saMe.canTarget(ai.getOpponent()) && tgt.addTarget(enemy)) { if (freePing && saMe.canTarget(ai.getOpponent()) && tgt.addTarget(enemy)) {
@@ -664,7 +663,7 @@ public class AbilityFactoryDealDamage {
// because we can // because we can
else if (saMe.canTarget(enemy)) { else if (saMe.canTarget(enemy)) {
if ((phase.is(PhaseType.END_OF_TURN) && phase.isNextTurn(PlayerType.COMPUTER)) if ((phase.is(PhaseType.END_OF_TURN) && phase.getNextTurn().equals(ai))
|| (AbilityFactory.isSorcerySpeed(saMe) && phase.is(PhaseType.MAIN2)) || (AbilityFactory.isSorcerySpeed(saMe) && phase.is(PhaseType.MAIN2))
|| saMe.getPayCosts() == null || isTrigger) { || saMe.getPayCosts() == null || isTrigger) {
tgt.addTarget(enemy); tgt.addTarget(enemy);

View File

@@ -46,7 +46,6 @@ import forge.card.spellability.Target;
import forge.game.phase.PhaseType; import forge.game.phase.PhaseType;
import forge.game.player.ComputerUtil; import forge.game.player.ComputerUtil;
import forge.game.player.Player; import forge.game.player.Player;
import forge.game.player.PlayerType;
import forge.game.zone.ZoneType; import forge.game.zone.ZoneType;
import forge.gui.GuiChoose; import forge.gui.GuiChoose;
import forge.util.MyRandom; import forge.util.MyRandom;
@@ -363,7 +362,7 @@ public class AbilityFactoryZoneAffecting {
randomReturn = true; randomReturn = true;
} }
if ((Singletons.getModel().getGame().getPhaseHandler().is(PhaseType.END_OF_TURN) if ((Singletons.getModel().getGame().getPhaseHandler().is(PhaseType.END_OF_TURN)
&& Singletons.getModel().getGame().getPhaseHandler().isNextTurn(PlayerType.COMPUTER))) { && Singletons.getModel().getGame().getPhaseHandler().getNextTurn().equals(ai))) {
randomReturn = true; randomReturn = true;
} }
@@ -917,7 +916,7 @@ public class AbilityFactoryZoneAffecting {
} }
if ((Singletons.getModel().getGame().getPhaseHandler().is(PhaseType.END_OF_TURN) if ((Singletons.getModel().getGame().getPhaseHandler().is(PhaseType.END_OF_TURN)
&& Singletons.getModel().getGame().getPhaseHandler().isNextTurn(PlayerType.COMPUTER))) { && Singletons.getModel().getGame().getPhaseHandler().getNextTurn().equals(ai))) {
chance = .9; // 90% for end of opponents turn chance = .9; // 90% for end of opponents turn
} }

View File

@@ -85,6 +85,7 @@ public class InputPassPriority extends Input implements java.io.Serializable {
@Override @Override
public final void selectCard(final Card card, final PlayerZone zone) { public final void selectCard(final Card card, final PlayerZone zone) {
if (Singletons.getModel().getGame().getAction().playCard(card)) { if (Singletons.getModel().getGame().getAction().playCard(card)) {
// really need it? does not playCard push it into stack and thus give priority?
Singletons.getModel().getGame().getPhaseHandler().setPriority(Singletons.getControl().getPlayer()); Singletons.getModel().getGame().getPhaseHandler().setPriority(Singletons.getControl().getPlayer());
} }
else { else {

View File

@@ -31,7 +31,6 @@ import forge.Singletons;
import forge.card.trigger.TriggerType; import forge.card.trigger.TriggerType;
import forge.game.GameState; import forge.game.GameState;
import forge.game.player.Player; import forge.game.player.Player;
import forge.game.player.PlayerType;
import forge.game.zone.ZoneType; import forge.game.zone.ZoneType;
import forge.properties.ForgePreferences.FPref; import forge.properties.ForgePreferences.FPref;
import forge.util.MyObservable; import forge.util.MyObservable;
@@ -143,7 +142,7 @@ public class PhaseHandler extends MyObservable implements java.io.Serializable {
* *
* @return a {@link forge.game.player.Player} object. * @return a {@link forge.game.player.Player} object.
*/ */
public final Player getFirstPriority() { private final Player getFirstPriority() {
return this.pFirstPriority; return this.pFirstPriority;
} }
@@ -652,20 +651,6 @@ public class PhaseHandler extends MyObservable implements java.io.Serializable {
return this.extraTurns.peek().getPlayer(); return this.extraTurns.peek().getPlayer();
} }
/**
* <p>
* isNextTurn.
* </p>
*
* @param pl
* a {@link forge.game.player.Player} object.
* @return a boolean.
*/
@Deprecated
public final boolean isNextTurn(final PlayerType pt) {
final Player next = this.getNextTurn();
return next.getType() == pt;
}
/** /**
* <p> * <p>

View File

@@ -242,7 +242,7 @@ public class ComputerUtilAttack {
int fixedBlockers = 0; int fixedBlockers = 0;
final List<Card> vigilantes = new ArrayList<Card>(); final List<Card> vigilantes = new ArrayList<Card>();
//check for time walks //check for time walks
if (Singletons.getModel().getGame().getPhaseHandler().isNextTurn(PlayerType.COMPUTER)) { if (Singletons.getModel().getGame().getPhaseHandler().getNextTurn().equals(ai)) {
return attackers; return attackers;
} }
for (final Card c : this.computerList) { for (final Card c : this.computerList) {