Revert "Ambrosia Whiteheart AI slight improvement (#8473)"

This reverts commit ba8a30ebdd.
This commit is contained in:
Agetian
2025-08-21 07:47:43 +03:00
committed by GitHub
parent 16fcbc0ebf
commit d2de3da8fb
3 changed files with 5 additions and 7 deletions

View File

@@ -1594,9 +1594,7 @@ public class ChangeZoneAi extends SpellAbilityAi {
} else if (logic.startsWith("ExilePreference")) {
return doExilePreferenceLogic(decider, sa, fetchList);
} else if (logic.equals("BounceOwnTrigger")) {
return doBounceOwnTriggerLogic(decider, sa, fetchList, false);
} else if (logic.equals("BounceOwnTriggerOptional")) {
return doBounceOwnTriggerLogic(decider, sa, fetchList, true);
return doBounceOwnTriggerLogic(decider, sa, fetchList);
}
}
if (fetchList.isEmpty()) {
@@ -2160,14 +2158,14 @@ public class ChangeZoneAi extends SpellAbilityAi {
return AiCardMemory.isRememberedCard(ai, c, AiCardMemory.MemorySet.BOUNCED_THIS_TURN);
}
private static Card doBounceOwnTriggerLogic(Player ai, SpellAbility sa, CardCollection choices, boolean preferredOnly) {
private static Card doBounceOwnTriggerLogic(Player ai, SpellAbility sa, CardCollection choices) {
CardCollection unprefChoices = CardLists.filter(choices, c -> !c.isToken() && c.getOwner().equals(ai));
// TODO check for threatened cards
CardCollection prefChoices = CardLists.filter(unprefChoices, c -> c.hasETBTrigger(false));
if (!prefChoices.isEmpty()) {
return ComputerUtilCard.getBestAI(prefChoices);
}
if (!preferredOnly && !unprefChoices.isEmpty() && sa.getSubAbility() != null) {
if (!unprefChoices.isEmpty() && sa.getSubAbility() != null) {
// some extra benefit like First Responder
return ComputerUtilCard.getWorstAI(unprefChoices);
}

View File

@@ -4,7 +4,7 @@ Types:Legendary Creature Bird
PT:2/2
K:Flash
T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigChangeZone | OptionalDecider$ You | TriggerDescription$ When CARDNAME enters, you may return another permanent you control to its owner's hand.
SVar:TrigChangeZone:DB$ ChangeZone | Origin$ Battlefield | Destination$ Hand | Hidden$ True | AILogic$ BounceOwnTriggerOptional | Mandatory$ True | ChangeType$ Permanent.Other+YouCtrl
SVar:TrigChangeZone:DB$ ChangeZone | Origin$ Battlefield | Destination$ Hand | Hidden$ True | AILogic$ BounceOwnTrigger | Mandatory$ True | ChangeType$ Permanent.Other+YouCtrl
T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Land.YouCtrl | TriggerZones$ Battlefield | Execute$ TrigPump | TriggerDescription$ Landfall — Whenever a land you control enters, CARDNAME gets +1/+0 until end of turn.
SVar:TrigPump:DB$ Pump | Defined$ Self | NumAtt$ +1
SVar:BuffedBy:Land

View File

@@ -3,5 +3,5 @@ ManaCost:1 W
Types:Creature Dwarf Artificer
PT:2/2
T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigChangeZone | OptionalDecider$ You | TriggerDescription$ When CARDNAME enters, you may return another permanent you control to its owner's hand.
SVar:TrigChangeZone:DB$ ChangeZone | Origin$ Battlefield | Destination$ Hand | Hidden$ True | AILogic$ BounceOwnTriggerOptional | Mandatory$ True | ChangeType$ Permanent.Other+YouCtrl
SVar:TrigChangeZone:DB$ ChangeZone | Origin$ Battlefield | Destination$ Hand | Hidden$ True | AILogic$ BounceOwnTrigger | Mandatory$ True | ChangeType$ Permanent.Other+YouCtrl
Oracle:When Aviary Mechanic enters, you may return another permanent you control to its owner's hand.