mirror of
https://github.com/correl/mage.git
synced 2024-12-28 11:14:13 +00:00
Additional fixes for 9d9916280a
This commit is contained in:
parent
9d9916280a
commit
3c66dc8706
5 changed files with 8 additions and 3 deletions
|
@ -110,7 +110,7 @@ class PortalMageEffect extends OneShotEffect {
|
||||||
// Select the new defender
|
// Select the new defender
|
||||||
TargetDefender target = new TargetDefender(defenders);
|
TargetDefender target = new TargetDefender(defenders);
|
||||||
if (controller.chooseTarget(Outcome.Damage, target, source, game)) {
|
if (controller.chooseTarget(Outcome.Damage, target, source, game)) {
|
||||||
if (!combatGroupTarget.getDefenderId().equals(target.getFirstTarget())) {
|
if (combatGroupTarget.getDefenderId() != null && !combatGroupTarget.getDefenderId().equals(target.getFirstTarget())) {
|
||||||
if (combatGroupTarget.changeDefenderPostDeclaration(target.getFirstTarget(), game)) {
|
if (combatGroupTarget.changeDefenderPostDeclaration(target.getFirstTarget(), game)) {
|
||||||
String attacked = "";
|
String attacked = "";
|
||||||
Player player = game.getPlayer(target.getFirstTarget());
|
Player player = game.getPlayer(target.getFirstTarget());
|
||||||
|
|
|
@ -212,7 +212,7 @@ class TheEternalWandererAttackRestrictionEffect extends RestrictionEffect {
|
||||||
|
|
||||||
//If there is already a creature attacking The Eternal Wanderer, dont let another creature attack it
|
//If there is already a creature attacking The Eternal Wanderer, dont let another creature attack it
|
||||||
for(CombatGroup group : game.getCombat().getGroups()){
|
for(CombatGroup group : game.getCombat().getGroups()){
|
||||||
if(group.getDefenderId().equals(source.getSourceId())){
|
if(group.getDefenderId() != null && group.getDefenderId().equals(source.getSourceId())){
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -21,7 +21,7 @@ public enum CreaturesAttackingYouCount implements DynamicValue {
|
||||||
public int calculate(Game game, Ability sourceAbility, Effect effect) {
|
public int calculate(Game game, Ability sourceAbility, Effect effect) {
|
||||||
int count = 0;
|
int count = 0;
|
||||||
for (CombatGroup combatGroup : game.getCombat().getGroups()) {
|
for (CombatGroup combatGroup : game.getCombat().getGroups()) {
|
||||||
if (combatGroup.getDefenderId().equals(sourceAbility.getControllerId())) {
|
if (combatGroup.getDefenderId() != null && combatGroup.getDefenderId().equals(sourceAbility.getControllerId())) {
|
||||||
count += combatGroup.getAttackers().size();
|
count += combatGroup.getAttackers().size();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -26,6 +26,7 @@ public class AttackingSameNotBandedPredicate implements Predicate<Permanent> {
|
||||||
return combatGroup != null
|
return combatGroup != null
|
||||||
&& input.isAttacking()
|
&& input.isAttacking()
|
||||||
&& input.getBandedCards().isEmpty()
|
&& input.getBandedCards().isEmpty()
|
||||||
|
&& combatGroup.getDefenderId() != null
|
||||||
&& combatGroup.getDefenderId().equals(defenderId);
|
&& combatGroup.getDefenderId().equals(defenderId);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -66,6 +66,10 @@ public class CombatGroup implements Serializable, Copyable<CombatGroup> {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* @return can be null
|
||||||
|
*/
|
||||||
public UUID getDefenderId() {
|
public UUID getDefenderId() {
|
||||||
return defenderId;
|
return defenderId;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue