mirror of
https://github.com/magefree/mage.git
synced 2025-12-21 11:02:00 -08:00
* Archfiend of Depravity - Outcome tweaked for AI behaviour.
This commit is contained in:
parent
0c2abc69de
commit
e7e290e787
2 changed files with 22 additions and 2 deletions
|
|
@ -61,7 +61,7 @@ public class ArchfiendOfDepravity extends CardImpl {
|
|||
|
||||
// Flying
|
||||
this.addAbility(FlyingAbility.getInstance());
|
||||
|
||||
|
||||
// At the beginning of each opponent's end step, that player chooses up to two creatures he or she controls, then sacrifices the rest.
|
||||
this.addAbility(new BeginningOfEndStepTriggeredAbility(new ArchfiendOfDepravityEffect(), TargetController.OPPONENT, false));
|
||||
}
|
||||
|
|
@ -79,7 +79,7 @@ public class ArchfiendOfDepravity extends CardImpl {
|
|||
class ArchfiendOfDepravityEffect extends OneShotEffect {
|
||||
|
||||
public ArchfiendOfDepravityEffect() {
|
||||
super(Outcome.Detriment);
|
||||
super(Outcome.Benefit); // AI should select two creatures if possible so it has to be a benefit
|
||||
this.staticText = "that player chooses up to two creatures he or she controls, then sacrifices the rest";
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -222,6 +222,26 @@ public class TargetsAreChosenTest extends CardTestPlayerBaseAI {
|
|||
|
||||
}
|
||||
|
||||
/**
|
||||
* When I have Archfiend of Depravity on the field, the AI always sacks
|
||||
* creatures until it has ONE left, when the card states that you can keep
|
||||
* TWO at the end of each turn. This makes it un-fun playing the Archfiend
|
||||
* as it makes it a lot easier to win.
|
||||
*/
|
||||
@Test
|
||||
public void testArchfiendOfDepravity() {
|
||||
// Flying
|
||||
// At the beginning of each opponent's end step, that player chooses up to two creatures he or she controls, then sacrifices the rest.
|
||||
addCard(Zone.BATTLEFIELD, playerB, "Archfiend of Depravity");
|
||||
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Silvercoat Lion", 3);
|
||||
setStopAt(2, PhaseStep.UNTAP);
|
||||
execute();
|
||||
|
||||
assertGraveyardCount(playerA, "Silvercoat Lion", 1);
|
||||
assertPowerToughness(playerA, "Silvercoat Lion", 2, 2, Filter.ComparisonScope.All);
|
||||
}
|
||||
|
||||
/**
|
||||
* Target selection from EntersTheBattlefield is not varied in the AI
|
||||
* calculation, so value is only calculated for the one selected target set.
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue