* Split cards improves:

* Fixed that fused spells can't be played from non hand zone;
 * Fixed double choose spell dialog (#5506, #6549);
This commit is contained in:
Oleg Agafonov 2020-05-19 01:30:46 +04:00
parent 6b5108770c
commit 63dbf5f40b
9 changed files with 1 additions and 190 deletions

View file

@ -317,8 +317,6 @@ public interface Player extends MageItem, Copyable<Player> {
boolean cast(SpellAbility ability, Game game, boolean noMana, MageObjectReference reference);
SpellAbility chooseSpellAbilityForCast(SpellAbility ability, Game game, boolean noMana);
SpellAbility chooseAbilityForCast(Card card, Game game, boolean noMana);
boolean putInHand(Card card, Game game);

View file

@ -1120,13 +1120,7 @@ public abstract class PlayerImpl implements Player, Serializable {
SpellAbility ability = originalAbility.copy();
ability.setControllerId(getId());
ability.setSourceObjectZoneChangeCounter(game.getState().getZoneChangeCounter(ability.getSourceId()));
if (ability.getSpellAbilityType() != SpellAbilityType.BASE) {
ability = chooseSpellAbilityForCast(ability, game, noMana);
if (ability == null) {
// No ability could be cast (selected), probably because of no valid targets (happens often if a card can be cast by an effect).
return false;
}
}
//20091005 - 601.2a
if (ability.getSourceId() == null) {
logger.error("Ability without sourceId turn " + game.getTurnNum() + ". Ability: " + ability.getRule());
@ -1189,11 +1183,6 @@ public abstract class PlayerImpl implements Player, Serializable {
return false;
}
@Override
public SpellAbility chooseSpellAbilityForCast(SpellAbility ability, Game game, boolean noMana) {
return ability;
}
@Override
public boolean playLand(Card card, Game game, boolean ignoreTiming) {
// Check for alternate casting possibilities: e.g. land with Morph