Fix The Celestus overpowering Angel of Eternal Dawn

This commit is contained in:
tool4EvEr
2022-04-08 20:55:51 +02:00
parent 4d132f03c5
commit ce73613f53
12 changed files with 12 additions and 18 deletions

View File

@@ -1351,6 +1351,7 @@ public class AiBlockController {
boolean modified = false;
for (final Card blocker : oldBlockers) {
// TODO check all blocked attackers
Cost tax = CombatUtil.getBlockCost(blocker.getGame(), blocker, combat.getAttackersBlockedBy(blocker).get(0));
int taxCMC = tax != null ? tax.getCostMana().getMana().getCMC() : 0;
if (myFreeMana < currentBlockTax + taxCMC) {

View File

@@ -1571,7 +1571,7 @@ public class ComputerUtilMana {
System.out.println("DEBUG_MANA_PAYMENT: sortedManaSources = " + sortedManaSources);
}
return sortedManaSources;
} // getAvailableManaSources()
}
//This method is currently used by AI to estimate mana available
private static ListMultimap<Integer, SpellAbility> groupSourcesByManaColor(final Player ai, boolean checkPlayable) {

View File

@@ -25,7 +25,6 @@ public class LobbyPlayerAi extends LobbyPlayer implements IGameEntitiesFactory {
public boolean isAllowCheatShuffle() {
return allowCheatShuffle;
}
public void setAllowCheatShuffle(boolean allowCheatShuffle) {
this.allowCheatShuffle = allowCheatShuffle;
}
@@ -33,7 +32,6 @@ public class LobbyPlayerAi extends LobbyPlayer implements IGameEntitiesFactory {
public void setAiProfile(String profileName) {
aiProfile = profileName;
}
public String getAiProfile() {
return aiProfile;
}

View File

@@ -3,7 +3,6 @@ package forge.ai;
import java.security.InvalidParameterException;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Collections;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@@ -377,7 +376,7 @@ public class PlayerControllerAi extends PlayerController {
}
// put the rest on top in random order
Collections.shuffle(toTop, MyRandom.getRandom());
CardLists.shuffle(toTop);
return ImmutablePair.of(toTop, toBottom);
}
@@ -403,7 +402,7 @@ public class PlayerControllerAi extends PlayerController {
}
}
Collections.shuffle(toTop, MyRandom.getRandom());
CardLists.shuffle(toTop);
return ImmutablePair.of(toTop, toGraveyard);
}

View File

@@ -503,4 +503,4 @@ public final class AbilityFactory {
left.appendSubAbility(right);
return left;
}
} // end class AbilityFactory
}

View File

@@ -31,7 +31,7 @@ public class DayTimeEffect extends SpellAbilityEffect {
Boolean oldValue = game.getDayTime();
if (oldValue == null && !cantBeNight) {
game.setDayTime(true); // if it was neither it becomes night
} else {
} else if (oldValue == true || !cantBeNight) {
game.setDayTime(!oldValue);
}
}

View File

@@ -971,7 +971,6 @@ public class Card extends GameEntity implements Comparable<Card>, IHasSVars {
}
delvedCards.add(c);
}
public final void clearDelved() {
delvedCards = null;
}
@@ -3212,7 +3211,6 @@ public class Card extends GameEntity implements Comparable<Card>, IHasSVars {
public boolean cameUnderControlSinceLastUpkeep() {
return cameUnderControlSinceLastUpkeep;
}
public void setCameUnderControlSinceLastUpkeep(boolean underControlSinceLastUpkeep) {
this.cameUnderControlSinceLastUpkeep = underControlSinceLastUpkeep;
}

View File

@@ -300,4 +300,4 @@ public class Untap extends Phase {
game.setDayTime(false);
}
}
} //end class Untap
}

View File

@@ -2348,7 +2348,6 @@ public abstract class SpellAbility extends CardTraitBase implements ISpellAbilit
public SpellAbility getOriginalAbility() {
return grantorOriginal;
}
public void setOriginalAbility(final SpellAbility sa) {
grantorOriginal = sa;
}
@@ -2356,7 +2355,6 @@ public abstract class SpellAbility extends CardTraitBase implements ISpellAbilit
public StaticAbility getGrantorStatic() {
return grantorStatic;
}
public void setGrantorStatic(final StaticAbility st) {
grantorStatic = st;
}

View File

@@ -489,4 +489,4 @@ public class SpellAbilityCondition extends SpellAbilityVariables {
return true;
}
} // end class SpellAbility_Condition
}

View File

@@ -622,4 +622,4 @@ public class SpellAbilityRestriction extends SpellAbilityVariables {
return true;
} // canPlay()
} // end class SpellAbilityRestriction
}