Fix New Blood not fully working

This commit is contained in:
tool4EvEr
2021-11-22 00:15:12 +01:00
parent 72bead4941
commit c272df37f7
3 changed files with 9 additions and 9 deletions

View File

@@ -70,7 +70,7 @@ public class ChangeTextEffect extends SpellAbilityEffect {
kindOfType = "basic land";
} else if (changedTypeWordsArray[0].equals("ChooseCreatureType")) {
validTypes.addAll(CardType.Constant.CREATURE_TYPES);
kindOfType = "creature";
kindOfType = "Creature";
}
changedTypeWordOriginal = sa.getActivatingPlayer().getController().chooseSomeType(kindOfType, sa, validTypes, Lists.newArrayList());
} else {
@@ -86,7 +86,7 @@ public class ChangeTextEffect extends SpellAbilityEffect {
kindOfType = "basic land";
} else if (changedTypeWordsArray[1].equals("ChooseCreatureType")) {
validTypes.addAll(CardType.Constant.CREATURE_TYPES);
kindOfType = "creature";
kindOfType = "Creature";
}
changedTypeWordNew = sa.getActivatingPlayer().getController().chooseSomeType(kindOfType, sa, validTypes, forbiddenTypes);
} else {
@@ -102,7 +102,7 @@ public class ChangeTextEffect extends SpellAbilityEffect {
if (changedColorWordOriginal != null && changedColorWordNew != null) {
c.addChangedTextColorWord(changedColorWordOriginal, changedColorWordNew, timestamp, 0);
}
if (changedTypeWordOriginal != null && changedTypeWordNew != null ) {
if (changedTypeWordOriginal != null && changedTypeWordNew != null) {
c.addChangedTextTypeWord(changedTypeWordOriginal, changedTypeWordNew, timestamp, 0);
}
@@ -123,6 +123,8 @@ public class ChangeTextEffect extends SpellAbilityEffect {
}
game.fireEvent(new GameEventCardStatsChanged(c));
c.updateStateForView();
c.updateTypesForView();
}
}

View File

@@ -3533,7 +3533,7 @@ public class Card extends GameEntity implements Comparable<Card>, IHasSVars {
return getType(currentState);
}
public final CardTypeView getType(CardState state) {
if (changedCardTypes.isEmpty() && changedCardTypesCharacterDefining.isEmpty()) {
if (changedCardTypes.isEmpty() && changedCardTypesCharacterDefining.isEmpty() && changedTypeByText == null) {
return state.getType();
}
// CR 506.4 attacked planeswalkers leave combat
@@ -3548,14 +3548,12 @@ public class Card extends GameEntity implements Comparable<Card>, IHasSVars {
public final CardTypeView getOriginalType() {
return getOriginalType(currentState);
}
public final CardTypeView getOriginalType(CardState state) {
return state.getType();
}
// TODO add changed type by card text
public Iterable<CardChangedType> getChangedCardTypes() {
Iterable<CardChangedType> byText = changedTypeByText == null ? ImmutableList.of() : ImmutableList.of(this.changedTypeByText);
return Iterables.unmodifiableIterable(Iterables.concat(
@@ -4474,7 +4472,7 @@ public class Card extends GameEntity implements Comparable<Card>, IHasSVars {
final List<KeywordInterface> addKeywords = Lists.newArrayList();
final List<KeywordInterface> removeKeywords = Lists.newArrayList();
// Text Change for intrinsic keywords
for(KeywordInterface kw : beforeKeywords) {
for (KeywordInterface kw : beforeKeywords) {
String oldtxt = kw.getOriginal();
final String newtxt = AbilityUtils.applyKeywordTextChangeEffects(oldtxt, this);
if (!newtxt.equals(oldtxt)) {

View File

@@ -874,7 +874,7 @@ public class CardView extends GameEntityView {
set(TrackableProperty.Modal, c.isModal());
//backside
if (c.getAlternateState()!=null)
if (c.getAlternateState() != null)
updateBackSide(c.getAlternateState().getName(), c.hasBackSide());
final Card cloner = c.getCloner();