mirror of
https://github.com/Card-Forge/forge.git
synced 2025-11-18 11:48:02 +00:00
- Resolve several issues in the Game State support for Mutate/merged cards.
This commit is contained in:
@@ -262,7 +262,12 @@ public abstract class GameState {
|
||||
if (c.getPaperCard() == null) {
|
||||
return;
|
||||
}
|
||||
if (c.getMergedCards().isEmpty()) {
|
||||
newText.append(c.getPaperCard().getName());
|
||||
} else {
|
||||
// we have to go by the current top card name here
|
||||
newText.append(c.getTopMergedCard().getPaperCard().getName());
|
||||
}
|
||||
}
|
||||
if (c.isCommander()) {
|
||||
newText.append("|IsCommander");
|
||||
@@ -369,10 +374,10 @@ public abstract class GameState {
|
||||
if (!c.getMergedCards().isEmpty()) {
|
||||
List<String> mergedCardNames = new ArrayList<>();
|
||||
for (Card merged : c.getMergedCards()) {
|
||||
if (merged.getId() == c.getId()) {
|
||||
if (c.getTopMergedCard() == merged) {
|
||||
continue;
|
||||
}
|
||||
mergedCardNames.add(merged.getName());
|
||||
mergedCardNames.add(merged.getPaperCard().getName().replace(",", "^"));
|
||||
}
|
||||
newText.append("|MergedCards:").append(TextUtil.join(mergedCardNames, ","));
|
||||
}
|
||||
@@ -1131,7 +1136,7 @@ public abstract class GameState {
|
||||
Card mergedTo = entry.getKey();
|
||||
for(String mergedCardName : entry.getValue()) {
|
||||
Card c;
|
||||
PaperCard pc = StaticData.instance().getCommonCards().getCard(mergedCardName); // FIXME: is set relevant here?
|
||||
PaperCard pc = StaticData.instance().getCommonCards().getCard(mergedCardName. replace("^", ","));
|
||||
if (pc == null) {
|
||||
System.err.println("ERROR: Tried to create a non-existent card named " + mergedCardName + " (as a merged card) when loading game state!");
|
||||
continue;
|
||||
|
||||
Reference in New Issue
Block a user