Merge fix

This commit is contained in:
Oleg Agafonov 2023-11-28 08:14:01 +04:00
parent 2eac541b80
commit 1af601bf11
3 changed files with 7 additions and 20 deletions

View file

@ -27,10 +27,7 @@ import mage.players.Player;
import org.apache.log4j.Logger; import org.apache.log4j.Logger;
import java.io.Serializable; import java.io.Serializable;
import java.util.ArrayList; import java.util.*;
import java.util.List;
import java.util.Map;
import java.util.UUID;
/** /**
* @author BetaSteward_at_googlemail.com * @author BetaSteward_at_googlemail.com
@ -46,8 +43,8 @@ public class GameView implements Serializable {
private UUID myPlayerId = null; // null for watcher private UUID myPlayerId = null; // null for watcher
private final CardsView myHand = new CardsView(); private final CardsView myHand = new CardsView();
private PlayableObjectsList canPlayObjects; private PlayableObjectsList canPlayObjects;
private Map<String, SimpleCardsView> opponentHands; private Map<String, SimpleCardsView> opponentHands = new HashMap<>();
private Map<String, SimpleCardsView> watchedHands; private Map<String, SimpleCardsView> watchedHands = new HashMap<>();
private final CardsView stack = new CardsView(); private final CardsView stack = new CardsView();
private final List<ExileView> exiles = new ArrayList<>(); private final List<ExileView> exiles = new ArrayList<>();
private final List<RevealedView> revealed = new ArrayList<>(); private final List<RevealedView> revealed = new ArrayList<>();
@ -250,18 +247,10 @@ public class GameView implements Serializable {
return opponentHands; return opponentHands;
} }
public void setOpponentHands(Map<String, SimpleCardsView> opponentHands) {
this.opponentHands = opponentHands;
}
public Map<String, SimpleCardsView> getWatchedHands() { public Map<String, SimpleCardsView> getWatchedHands() {
return watchedHands; return watchedHands;
} }
public void setWatchedHands(Map<String, SimpleCardsView> watchedHands) {
this.watchedHands = watchedHands;
}
public TurnPhase getPhase() { public TurnPhase getPhase() {
return phase; return phase;
} }

View file

@ -229,13 +229,12 @@ public class GameSessionPlayer extends GameSessionWatcher {
// ignore watcher // ignore watcher
return; return;
} }
gameView.getOpponentHands().clear();
if (!player.getPlayersUnderYourControl().isEmpty()) { if (!player.getPlayersUnderYourControl().isEmpty()) {
Map<String, SimpleCardsView> handCards = new HashMap<>();
for (UUID controlledPlayerId : player.getPlayersUnderYourControl()) { for (UUID controlledPlayerId : player.getPlayersUnderYourControl()) {
Player opponent = game.getPlayer(controlledPlayerId); Player opponent = game.getPlayer(controlledPlayerId);
handCards.put(opponent.getName(), new SimpleCardsView(opponent.getHand().getCards(game), true)); gameView.getOpponentHands().put(opponent.getName(), new SimpleCardsView(opponent.getHand().getCards(game), true));
} }
gameView.setOpponentHands(handCards);
} }
} }

View file

@ -103,11 +103,10 @@ public class GameSessionWatcher {
} }
protected static void processWatchedHands(Game game, UUID userId, GameView gameView) { protected static void processWatchedHands(Game game, UUID userId, GameView gameView) {
Map<String, SimpleCardsView> handCards = new HashMap<>(); gameView.getWatchedHands().clear();
for (Player player : game.getPlayers().values()) { for (Player player : game.getPlayers().values()) {
if (player.hasUserPermissionToSeeHand(userId)) { if (player.hasUserPermissionToSeeHand(userId)) {
handCards.put(player.getName(), new SimpleCardsView(player.getHand().getCards(game), true)); gameView.getWatchedHands().put(player.getName(), new SimpleCardsView(player.getHand().getCards(game), true));
gameView.setWatchedHands(handCards);
} }
} }
} }