reduce calls to MagicPlayerDefinition.getAvatar() to single point in IconImages.getSizedAvatarImageIcon().
parent
923e105c18
commit
21af332cbf
|
@ -48,7 +48,7 @@ public final class GameStateSnapshot {
|
|||
final MagicPlayerDefinition playerDef = duel.getPlayer(playerIndex);
|
||||
final GamePlayerState gamePlayerState = gameState.getPlayer(playerIndex);
|
||||
gamePlayerState.setName(playerDef.getName());
|
||||
gamePlayerState.setFace(playerDef.getAvatar().getFace());
|
||||
// gamePlayerState.setFace(playerDef.getAvatar().getFace());
|
||||
gamePlayerState.setDeckProfileColors(playerDef.getDeckProfile().getColorText());
|
||||
if (playerDef.isArtificial()) {
|
||||
gamePlayerState.setAiType(getAiType(duel.getAIs()[playerIndex]));
|
||||
|
|
|
@ -9,6 +9,7 @@ import magic.model.MagicColor;
|
|||
import magic.model.MagicManaType;
|
||||
import magic.model.MagicCardDefinition;
|
||||
import magic.model.MagicPermanent;
|
||||
import magic.model.MagicPlayerDefinition;
|
||||
import magic.utility.MagicResources;
|
||||
|
||||
public final class IconImages {
|
||||
|
@ -146,4 +147,24 @@ public final class IconImages {
|
|||
}
|
||||
throw new RuntimeException("No icon available for MagicManaType " + mtype);
|
||||
}
|
||||
|
||||
public static ImageIcon getIconSize1(final MagicPlayerDefinition playerDef) {
|
||||
return getSizedAvatarImageIcon(playerDef, 1);
|
||||
}
|
||||
|
||||
public static ImageIcon getIconSize2(final MagicPlayerDefinition playerDef) {
|
||||
return getSizedAvatarImageIcon(playerDef, 2);
|
||||
}
|
||||
|
||||
public static ImageIcon getIconSize3(final MagicPlayerDefinition playerDef) {
|
||||
return getSizedAvatarImageIcon(playerDef, 3);
|
||||
}
|
||||
|
||||
public static ImageIcon getIconSize4(final MagicPlayerDefinition playerDef) {
|
||||
return getSizedAvatarImageIcon(playerDef, 4);
|
||||
}
|
||||
|
||||
private static ImageIcon getSizedAvatarImageIcon(final MagicPlayerDefinition playerDef, final int size) {
|
||||
return playerDef.getAvatar().getIcon(size);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -8,6 +8,7 @@ import javax.swing.SwingConstants;
|
|||
import magic.model.MagicGame;
|
||||
import magic.model.MagicPlayer;
|
||||
import magic.ui.GameController;
|
||||
import magic.ui.IconImages;
|
||||
import magic.ui.theme.Theme;
|
||||
import magic.ui.widget.FontsAndBorders;
|
||||
import magic.ui.widget.TexturedPanel;
|
||||
|
@ -32,7 +33,7 @@ public class EndGameMessagePanel extends TexturedPanel {
|
|||
final MagicPlayer losingPlayer = game.getLosingPlayer();
|
||||
final MagicPlayer winningPlayer = losingPlayer == humanPlayer ? aiPlayer : humanPlayer;
|
||||
//
|
||||
final JLabel iconLabel = new JLabel(winningPlayer.getPlayerDefinition().getAvatar().getIcon(3));
|
||||
final JLabel iconLabel = new JLabel(IconImages.getIconSize3(winningPlayer.getPlayerDefinition()));
|
||||
final Icon winningAvatar = iconLabel.getIcon();
|
||||
iconLabel.setPreferredSize(new Dimension(winningAvatar.getIconWidth(), winningAvatar.getIconHeight()));
|
||||
add(iconLabel, "alignx center");
|
||||
|
|
|
@ -123,7 +123,7 @@ public class GameStatusPanel extends TexturedPanel implements ChangeListener {
|
|||
}
|
||||
|
||||
public void refreshData(final MagicGame game) {
|
||||
iconLabel.setIcon(game.getTurnPlayer().getPlayerDefinition().getAvatar().getIcon(3));
|
||||
iconLabel.setIcon(IconImages.getIconSize3(game.getTurnPlayer().getPlayerDefinition()));
|
||||
turnLabel.setText("Turn " + game.getTurn());
|
||||
playerLabel.setText(game.getTurnPlayer().getName());
|
||||
}
|
||||
|
|
|
@ -195,7 +195,7 @@ public class UserActionPanel extends JPanel implements ActionListener {
|
|||
* for use with the GameStatusPanel component.
|
||||
*/
|
||||
public ImageIcon getTurnSizedPlayerAvatar() {
|
||||
return game.getPriorityPlayer().getPlayerDefinition().getAvatar().getIcon(4);
|
||||
return IconImages.getIconSize4(game.getPriorityPlayer().getPlayerDefinition());
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -5,6 +5,7 @@ import java.awt.Dimension;
|
|||
import javax.swing.JLabel;
|
||||
import javax.swing.SwingConstants;
|
||||
import magic.model.MagicPlayerDefinition;
|
||||
import magic.ui.IconImages;
|
||||
import magic.ui.widget.TexturedPanel;
|
||||
|
||||
@SuppressWarnings("serial")
|
||||
|
@ -50,10 +51,11 @@ public class PlayerAvatarPanel extends TexturedPanel {
|
|||
|
||||
private void update() {
|
||||
if (playerDefinition != null) {
|
||||
faceLabel.setIcon(playerDefinition.getAvatar().getIcon(small ? 2 : 3));
|
||||
if (small) {
|
||||
faceLabel.setIcon(IconImages.getIconSize2(playerDefinition));
|
||||
setPreferredSize(new Dimension(72,80));
|
||||
} else {
|
||||
faceLabel.setIcon(IconImages.getIconSize3(playerDefinition));
|
||||
setPreferredSize(new Dimension(120,150));
|
||||
}
|
||||
revalidate();
|
||||
|
|
|
@ -99,6 +99,6 @@ public class MessagePanel extends JPanel {
|
|||
}
|
||||
|
||||
private JLabel getPlayerAvatar() {
|
||||
return new JLabel(message.getPlayer().getPlayerDefinition().getAvatar().getIcon(1));
|
||||
return new JLabel(IconImages.getIconSize1(message.getPlayer().getPlayerDefinition()));
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue