merge getPermanentImage(MagicPermanent permanent) and getCardImage(MagicCardDefinition cdef) into getCardImage(IRenderableCard face)
parent
be37bad925
commit
60976579b8
|
@ -145,4 +145,8 @@ public interface IRenderableCard {
|
|||
default boolean hasTextOverlay() {
|
||||
return hasAbility(MagicAbility.LevelUp) || isLand();
|
||||
}
|
||||
|
||||
default long getRenderKey() {
|
||||
return getCardDefinition().getDistinctName().hashCode();
|
||||
}
|
||||
}
|
||||
|
|
|
@ -204,6 +204,10 @@ public class MagicPermanent extends MagicObjectImpl implements MagicSource, Magi
|
|||
return stateId;
|
||||
}
|
||||
|
||||
public long getRenderKey() {
|
||||
return getStateId();
|
||||
}
|
||||
|
||||
private long getCountersHash() {
|
||||
final long[] keys = new long[counters.size() * 2];
|
||||
int idx = 0;
|
||||
|
|
|
@ -305,24 +305,12 @@ public final class MagicImages {
|
|||
return ImageType.PROXY;
|
||||
}
|
||||
|
||||
public static BufferedImage getCardImage(MagicCardDefinition cdef) {
|
||||
final Long key = (long)cdef.getDistinctName().hashCode();
|
||||
public static BufferedImage getCardImage(IRenderableCard face) {
|
||||
final Long key = face.getRenderKey();
|
||||
if (cache.containsKey(key)) {
|
||||
return cache.get(key);
|
||||
}
|
||||
final BufferedImage image = createImage(cdef);
|
||||
if (image != MISSING_CARD) {
|
||||
cache.put(key, image);
|
||||
}
|
||||
return image;
|
||||
}
|
||||
|
||||
public static BufferedImage getPermanentImage(MagicPermanent permanent) {
|
||||
final Long key = permanent.getStateId();
|
||||
if (cache.containsKey(key)) {
|
||||
return cache.get(key);
|
||||
}
|
||||
final BufferedImage image = createImage(permanent);
|
||||
final BufferedImage image = createImage(face);
|
||||
if (image != MISSING_CARD) {
|
||||
cache.put(key, image);
|
||||
}
|
||||
|
|
|
@ -322,7 +322,9 @@ public class AnnotatedCardPanel extends JPanel {
|
|||
private BufferedImage getCardImage(final MagicObject magicObject) {
|
||||
if (magicObject instanceof MagicPermanent) {
|
||||
final MagicPermanent perm = (MagicPermanent)magicObject;
|
||||
return canRevealTrueFace(perm) && perm.getCardDefinition() != perm.getRealCardDefinition() ? getCardImage(perm.getRealCardDefinition()) : MagicImages.getPermanentImage(perm);
|
||||
return canRevealTrueFace(perm) && perm.getCardDefinition() != perm.getRealCardDefinition() ?
|
||||
getCardImage(perm.getRealCardDefinition()) :
|
||||
MagicImages.getCardImage(perm);
|
||||
} else {
|
||||
return getCardImage(magicObject.getCardDefinition());
|
||||
}
|
||||
|
|
|
@ -270,7 +270,7 @@ public class ImagePermanentViewer extends JPanel {
|
|||
final int y2 = y1 + linkedRect.height - 1;
|
||||
|
||||
final BufferedImage image = GraphicsUtils.scale(
|
||||
MagicImages.getPermanentImage(linkedInfo.permanent),
|
||||
MagicImages.getCardImage(linkedInfo.permanent),
|
||||
linkedInfo.tapped ? linkedRect.height : linkedRect.width,
|
||||
linkedInfo.tapped ? linkedRect.width : linkedRect.height
|
||||
);
|
||||
|
|
Loading…
Reference in New Issue