mirror of
https://github.com/Card-Forge/forge.git
synced 2025-11-19 04:08:01 +00:00
- Fixed the Wall of Reverence bug. It appears that the AI was targeting the first creature to come into play:
CardListUtil.sortAttack(validTargets); Card c = creats.get(0); rather than the creature with the highest power: Card c = validTargets.get(0);
This commit is contained in:
@@ -3569,59 +3569,63 @@ public class GameActionUtil {
|
|||||||
|
|
||||||
//START ENDOFTURN CARDS
|
//START ENDOFTURN CARDS
|
||||||
|
|
||||||
public static void endOfTurn_Wall_Of_Reverence()
|
public static void endOfTurn_Wall_Of_Reverence()
|
||||||
{
|
{
|
||||||
final String player = AllZone.Phase.getActivePlayer();
|
final String player = AllZone.Phase.getActivePlayer();
|
||||||
final PlayerZone playZone = AllZone.getZone(Constant.Zone.Play, player);
|
final PlayerZone playZone = AllZone.getZone(Constant.Zone.Play, player);
|
||||||
CardList list = new CardList(playZone.getCards());
|
CardList list = new CardList(playZone.getCards());
|
||||||
list = list.getName("Wall of Reverence");
|
list = list.getName("Wall of Reverence");
|
||||||
|
|
||||||
Ability ability;
|
Ability ability;
|
||||||
for (int i = 0; i < list.size(); i++)
|
for (int i = 0; i < list.size(); i++)
|
||||||
{
|
{
|
||||||
final Card card = list.get(i);
|
final Card card = list.get(i);
|
||||||
ability = new Ability(list.get(i), "0")
|
ability = new Ability(list.get(i), "0")
|
||||||
{
|
{
|
||||||
public void resolve()
|
public void resolve()
|
||||||
{
|
{
|
||||||
CardList creats = new CardList(playZone.getCards());
|
CardList creats = new CardList(playZone.getCards());
|
||||||
CardList validTargets = new CardList();
|
CardList validTargets = new CardList();
|
||||||
creats = creats.getType("Creature");
|
creats = creats.getType("Creature");
|
||||||
for (int i = 0; i < creats.size(); i++) {
|
for (int i = 0; i < creats.size(); i++) {
|
||||||
if (CardFactoryUtil.canTarget(card, creats.get(i))) {
|
if (CardFactoryUtil.canTarget(card, creats.get(i))) {
|
||||||
validTargets.add(creats.get(i));
|
validTargets.add(creats.get(i));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (validTargets.size() == 0)
|
if (validTargets.size() == 0)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
if (player.equals(Constant.Player.Human))
|
if (player.equals(Constant.Player.Human))
|
||||||
{
|
{
|
||||||
Object o = AllZone.Display.getChoiceOptional("Select creature for Wall of Reverence life gain", validTargets.toArray());
|
Object o = AllZone.Display.getChoiceOptional("Select creature for Wall of Reverence life gain", validTargets.toArray());
|
||||||
if (o != null) {
|
if (o != null) {
|
||||||
Card c = (Card) o;
|
Card c = (Card) o;
|
||||||
int power=c.getNetAttack();
|
int power=c.getNetAttack();
|
||||||
PlayerLife life = AllZone.GameAction.getPlayerLife(player);
|
PlayerLife life = AllZone.GameAction.getPlayerLife(player);
|
||||||
life.addLife(power);
|
life.addLife(power);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else//computer
|
else//computer
|
||||||
{
|
{
|
||||||
CardListUtil.sortAttack(validTargets);
|
CardListUtil.sortAttack(validTargets);
|
||||||
Card c = creats.get(0);
|
Card c = validTargets.get(0);
|
||||||
if (c != null) {
|
// Card c = creats.get(0);
|
||||||
int power = c.getNetAttack();
|
if (c != null) {
|
||||||
PlayerLife life = AllZone.GameAction.getPlayerLife(player);
|
int power = c.getNetAttack();
|
||||||
life.addLife(power);
|
PlayerLife life = AllZone.GameAction.getPlayerLife(player);
|
||||||
}
|
life.addLife(power);
|
||||||
}
|
}
|
||||||
} // resolve
|
}
|
||||||
}; // ability
|
} // resolve
|
||||||
ability.setStackDescription("Wall of Reverence - "
|
}; // ability
|
||||||
+ player + " gains life equal to target creature's power.");
|
StringBuffer sb = new StringBuffer();
|
||||||
AllZone.Stack.add(ability);
|
sb.append("Wall of Reverence - ").append(player).append(" gains life equal to target creature's power.");
|
||||||
}
|
ability.setStackDescription(sb.toString());
|
||||||
}
|
// ability.setStackDescription("Wall of Reverence - "
|
||||||
|
// + player + " gains life equal to target creature's power.");
|
||||||
|
AllZone.Stack.add(ability);
|
||||||
|
}
|
||||||
|
}//endOfTurn_Wall_Of_Reverence()
|
||||||
|
|
||||||
public static void endOfTurn_Predatory_Advantage()
|
public static void endOfTurn_Predatory_Advantage()
|
||||||
{
|
{
|
||||||
|
|||||||
Reference in New Issue
Block a user