Reworked asThough effects:

* Game: improved asThough effects processing and combo with different cards/abilities (e.g. adventure cards, play from non own hand, etc);
 * AI: computer can see and play non hand cards with dynamic effects in all zones (not only graveyard);
 * AI: computer can see and play "as though" mana and alternative costs;
 * UI: added non hand cards highlights of available abilities/cards;
This commit is contained in:
Oleg Agafonov 2019-12-14 18:47:56 +04:00
parent 6791aea98e
commit d271feb0cb
6 changed files with 258 additions and 70 deletions

View file

@ -1,6 +1,5 @@
package mage.abilities.effects;
import java.util.UUID;
import mage.abilities.Ability;
import mage.constants.AsThoughEffectType;
import mage.constants.Duration;
@ -8,8 +7,9 @@ import mage.constants.EffectType;
import mage.constants.Outcome;
import mage.game.Game;
import java.util.UUID;
/**
*
* @author BetaSteward_at_googlemail.com
*/
public abstract class AsThoughEffectImpl extends ContinuousEffectImpl implements AsThoughEffect {
@ -29,10 +29,11 @@ public abstract class AsThoughEffectImpl extends ContinuousEffectImpl implements
@Override
public boolean applies(UUID objectId, Ability affectedAbility, Ability source, Game game, UUID playerId) {
// affectedControllerId = player to check
if (getAsThoughEffectType().equals(AsThoughEffectType.LOOK_AT_FACE_DOWN)) {
return applies(objectId, source, playerId, game);
} else {
return applies(objectId, source, affectedAbility.getControllerId(), game);
return applies(objectId, source, playerId, game);
}
}