mirror of
https://github.com/Card-Forge/forge.git
synced 2025-11-16 02:38:02 +00:00
Fix New Blood not fully working
This commit is contained in:
@@ -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();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -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(
|
||||
@@ -3563,7 +3561,7 @@ public class Card extends GameEntity implements Comparable<Card>, IHasSVars {
|
||||
byText, // Layer 3 by Word Changes,
|
||||
changedCardTypesCharacterDefining.values(), // Layer 4
|
||||
changedCardTypes.values() // Layer 6
|
||||
));
|
||||
));
|
||||
}
|
||||
|
||||
public Table<Long, Long, CardChangedType> getChangedCardTypesTable() {
|
||||
@@ -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)) {
|
||||
|
||||
@@ -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();
|
||||
|
||||
Reference in New Issue
Block a user