Basic Discover AI based on modified PlayAi logic (#4271)

* - Basic Discover AI.

* - Remove some unused code.

* - Remove some more unused code.

* - Fix imports

* - Return false for LandAbility to avoid a potential CTD

* - Minor comment tweak.
This commit is contained in:
Agetian
2023-12-04 13:49:01 +03:00
committed by GitHub
parent 65ebcebfc2
commit c652f9c584
3 changed files with 72 additions and 1 deletions

View File

@@ -28,6 +28,7 @@ import forge.util.Localizer;
import org.apache.commons.lang3.StringUtils;
import java.util.Arrays;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@@ -76,6 +77,8 @@ public class DiscoverEffect extends SpellAbilityEffect {
changeZone(exiled, ZoneType.Exile, game, sa);
// Cast it without paying its mana cost or put it into your hand.
Map<String, Object> params = new HashMap<>();
params.put("Card", found);
if (found != null) {
String prompt = Localizer.getInstance().getMessage("lblDiscoverChoice",
CardTranslation.getTranslatedName(found.getName()));
@@ -83,7 +86,7 @@ public class DiscoverEffect extends SpellAbilityEffect {
List<String> options =
Arrays.asList(StringUtils.capitalize(Localizer.getInstance().getMessage("lblCast")),
StringUtils.capitalize(Localizer.getInstance().getMessage("lblHandZone")));
final boolean play = p.getController().confirmAction(sa, null, prompt, options, found, null);
final boolean play = p.getController().confirmAction(sa, null, prompt, options, found, params);
boolean cancel = false;
if (play) {