Flip in Reward screen

This commit is contained in:
Eradev
2025-08-15 06:49:18 -04:00
parent ebdce74f92
commit f276597a82

View File

@@ -41,6 +41,7 @@ import forge.assets.FSkinImage;
import forge.assets.ImageCache;
import forge.card.CardImageRenderer;
import forge.card.CardRenderer;
import forge.card.CardSplitType;
import forge.deck.DeckSection;
import forge.game.card.CardView;
import forge.gui.GuiBase;
@@ -547,8 +548,12 @@ public class RewardActor extends Actor implements Disposable, ImageFetcher.Callb
}
private void generateBackFace(Reward r, Texture t) {
generateBackFace(r, t, false);
}
private void generateBackFace(Reward r, Texture t, boolean mustFlip) {
try {
alternateToolTipImage = new RewardImage(processDrawable(t));
alternateToolTipImage = new RewardImage(processDrawable(t, mustFlip));
if (holdTooltip != null) {
if (holdTooltip.tooltip_actor.getChildren().size <= 2) {
@@ -575,7 +580,7 @@ public class RewardActor extends Actor implements Disposable, ImageFetcher.Callb
}
if (back != null) {
ImageCache.getInstance().updateSynqCount(backFace, 1);
generateBackFace(reward, back);
generateBackFace(reward, back, reward.getCard().getRules().getSplitType() == CardSplitType.Flip);
} else {
generateBackFace(reward, getRenderedBackface(reward));
}
@@ -627,7 +632,15 @@ public class RewardActor extends Actor implements Disposable, ImageFetcher.Callb
}
private TextureRegionDrawable processDrawable(Texture texture) {
TextureRegionDrawable drawable = new TextureRegionDrawable(ImageCache.getInstance().croppedBorderImage(texture));
return processDrawable(texture, false);
}
private TextureRegionDrawable processDrawable(Texture texture, boolean mustFlip) {
TextureRegion textureRegion = ImageCache.getInstance().croppedBorderImage(texture);
if (mustFlip) {
textureRegion.flip(true, true);
}
TextureRegionDrawable drawable = new TextureRegionDrawable(textureRegion);
float origW = texture.getWidth();
float origH = texture.getHeight();
float boundW = GuiBase.isAndroid() ? Scene.getIntendedWidth() * 0.95f : Scene.getIntendedWidth() * 0.7f; // Use smaller size for Desktop