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";
|
kindOfType = "basic land";
|
||||||
} else if (changedTypeWordsArray[0].equals("ChooseCreatureType")) {
|
} else if (changedTypeWordsArray[0].equals("ChooseCreatureType")) {
|
||||||
validTypes.addAll(CardType.Constant.CREATURE_TYPES);
|
validTypes.addAll(CardType.Constant.CREATURE_TYPES);
|
||||||
kindOfType = "creature";
|
kindOfType = "Creature";
|
||||||
}
|
}
|
||||||
changedTypeWordOriginal = sa.getActivatingPlayer().getController().chooseSomeType(kindOfType, sa, validTypes, Lists.newArrayList());
|
changedTypeWordOriginal = sa.getActivatingPlayer().getController().chooseSomeType(kindOfType, sa, validTypes, Lists.newArrayList());
|
||||||
} else {
|
} else {
|
||||||
@@ -86,7 +86,7 @@ public class ChangeTextEffect extends SpellAbilityEffect {
|
|||||||
kindOfType = "basic land";
|
kindOfType = "basic land";
|
||||||
} else if (changedTypeWordsArray[1].equals("ChooseCreatureType")) {
|
} else if (changedTypeWordsArray[1].equals("ChooseCreatureType")) {
|
||||||
validTypes.addAll(CardType.Constant.CREATURE_TYPES);
|
validTypes.addAll(CardType.Constant.CREATURE_TYPES);
|
||||||
kindOfType = "creature";
|
kindOfType = "Creature";
|
||||||
}
|
}
|
||||||
changedTypeWordNew = sa.getActivatingPlayer().getController().chooseSomeType(kindOfType, sa, validTypes, forbiddenTypes);
|
changedTypeWordNew = sa.getActivatingPlayer().getController().chooseSomeType(kindOfType, sa, validTypes, forbiddenTypes);
|
||||||
} else {
|
} else {
|
||||||
@@ -102,7 +102,7 @@ public class ChangeTextEffect extends SpellAbilityEffect {
|
|||||||
if (changedColorWordOriginal != null && changedColorWordNew != null) {
|
if (changedColorWordOriginal != null && changedColorWordNew != null) {
|
||||||
c.addChangedTextColorWord(changedColorWordOriginal, changedColorWordNew, timestamp, 0);
|
c.addChangedTextColorWord(changedColorWordOriginal, changedColorWordNew, timestamp, 0);
|
||||||
}
|
}
|
||||||
if (changedTypeWordOriginal != null && changedTypeWordNew != null ) {
|
if (changedTypeWordOriginal != null && changedTypeWordNew != null) {
|
||||||
c.addChangedTextTypeWord(changedTypeWordOriginal, changedTypeWordNew, timestamp, 0);
|
c.addChangedTextTypeWord(changedTypeWordOriginal, changedTypeWordNew, timestamp, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -123,6 +123,8 @@ public class ChangeTextEffect extends SpellAbilityEffect {
|
|||||||
}
|
}
|
||||||
|
|
||||||
game.fireEvent(new GameEventCardStatsChanged(c));
|
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);
|
return getType(currentState);
|
||||||
}
|
}
|
||||||
public final CardTypeView getType(CardState state) {
|
public final CardTypeView getType(CardState state) {
|
||||||
if (changedCardTypes.isEmpty() && changedCardTypesCharacterDefining.isEmpty()) {
|
if (changedCardTypes.isEmpty() && changedCardTypesCharacterDefining.isEmpty() && changedTypeByText == null) {
|
||||||
return state.getType();
|
return state.getType();
|
||||||
}
|
}
|
||||||
// CR 506.4 attacked planeswalkers leave combat
|
// CR 506.4 attacked planeswalkers leave combat
|
||||||
@@ -3548,14 +3548,12 @@ public class Card extends GameEntity implements Comparable<Card>, IHasSVars {
|
|||||||
public final CardTypeView getOriginalType() {
|
public final CardTypeView getOriginalType() {
|
||||||
return getOriginalType(currentState);
|
return getOriginalType(currentState);
|
||||||
}
|
}
|
||||||
|
|
||||||
public final CardTypeView getOriginalType(CardState state) {
|
public final CardTypeView getOriginalType(CardState state) {
|
||||||
return state.getType();
|
return state.getType();
|
||||||
}
|
}
|
||||||
|
|
||||||
// TODO add changed type by card text
|
// TODO add changed type by card text
|
||||||
public Iterable<CardChangedType> getChangedCardTypes() {
|
public Iterable<CardChangedType> getChangedCardTypes() {
|
||||||
|
|
||||||
Iterable<CardChangedType> byText = changedTypeByText == null ? ImmutableList.of() : ImmutableList.of(this.changedTypeByText);
|
Iterable<CardChangedType> byText = changedTypeByText == null ? ImmutableList.of() : ImmutableList.of(this.changedTypeByText);
|
||||||
|
|
||||||
return Iterables.unmodifiableIterable(Iterables.concat(
|
return Iterables.unmodifiableIterable(Iterables.concat(
|
||||||
@@ -3563,7 +3561,7 @@ public class Card extends GameEntity implements Comparable<Card>, IHasSVars {
|
|||||||
byText, // Layer 3 by Word Changes,
|
byText, // Layer 3 by Word Changes,
|
||||||
changedCardTypesCharacterDefining.values(), // Layer 4
|
changedCardTypesCharacterDefining.values(), // Layer 4
|
||||||
changedCardTypes.values() // Layer 6
|
changedCardTypes.values() // Layer 6
|
||||||
));
|
));
|
||||||
}
|
}
|
||||||
|
|
||||||
public Table<Long, Long, CardChangedType> getChangedCardTypesTable() {
|
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> addKeywords = Lists.newArrayList();
|
||||||
final List<KeywordInterface> removeKeywords = Lists.newArrayList();
|
final List<KeywordInterface> removeKeywords = Lists.newArrayList();
|
||||||
// Text Change for intrinsic keywords
|
// Text Change for intrinsic keywords
|
||||||
for(KeywordInterface kw : beforeKeywords) {
|
for (KeywordInterface kw : beforeKeywords) {
|
||||||
String oldtxt = kw.getOriginal();
|
String oldtxt = kw.getOriginal();
|
||||||
final String newtxt = AbilityUtils.applyKeywordTextChangeEffects(oldtxt, this);
|
final String newtxt = AbilityUtils.applyKeywordTextChangeEffects(oldtxt, this);
|
||||||
if (!newtxt.equals(oldtxt)) {
|
if (!newtxt.equals(oldtxt)) {
|
||||||
|
|||||||
@@ -874,7 +874,7 @@ public class CardView extends GameEntityView {
|
|||||||
set(TrackableProperty.Modal, c.isModal());
|
set(TrackableProperty.Modal, c.isModal());
|
||||||
|
|
||||||
//backside
|
//backside
|
||||||
if (c.getAlternateState()!=null)
|
if (c.getAlternateState() != null)
|
||||||
updateBackSide(c.getAlternateState().getName(), c.hasBackSide());
|
updateBackSide(c.getAlternateState().getName(), c.hasBackSide());
|
||||||
|
|
||||||
final Card cloner = c.getCloner();
|
final Card cloner = c.getCloner();
|
||||||
|
|||||||
Reference in New Issue
Block a user