game: fixed miss clear code for permanent's additional info, fixed random sorting;

This commit is contained in:
Oleg Agafonov 2023-07-09 02:35:26 +04:00
parent 4ae5ca8421
commit 0520d0b262
2 changed files with 5 additions and 14 deletions

View file

@ -1,10 +1,7 @@
package mage.game;
import java.io.Serializable;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.*;
import java.util.stream.Collectors;
import mage.abilities.Abilities;
@ -21,7 +18,7 @@ import mage.util.Copyable;
public class CardState implements Serializable, Copyable<CardState> {
protected boolean faceDown;
protected Map<String, String> info;
protected Map<String, String> info = new LinkedHashMap<>(); // additional info for card's rules
protected Counters counters;
protected Abilities<Ability> abilities;
protected boolean lostAllAbilities;
@ -36,10 +33,7 @@ public class CardState implements Serializable, Copyable<CardState> {
public CardState(final CardState state) {
this.faceDown = state.faceDown;
if (state.info != null) {
info = new HashMap<>();
info.putAll(state.info);
}
this.info.putAll(state.info);
counters = state.counters.copy();
if (state.abilities != null) {
abilities = new AbilitiesImpl<>();