Merge branch 'master' into newmaster

This commit is contained in:
Anthony Calosa
2022-07-26 01:19:39 +08:00
2 changed files with 36 additions and 21 deletions

View File

@@ -52,7 +52,7 @@ public class RewardActor extends Actor implements Disposable, ImageFetcher.Callb
final int preview_h = 680;
static TextureRegion backTexture;
Texture image;
Texture image, T;
Texture generatedTooltip = null; //Storage for a generated tooltip. To dispose of on exit.
boolean needsToBeDisposed;
float flipProcess = 0;
@@ -104,8 +104,14 @@ public class RewardActor extends Actor implements Disposable, ImageFetcher.Callb
CardImageRenderer.drawCardImage(G, CardView.getCardForUi(reward.getCard()), false, -(preview_w + 20), 0, preview_w, preview_h, CardRenderer.CardStackPosition.Top, Forge.enableUIMask.equals("Art"), true);
G.end();
}
Texture T = renderPlaceholder(G, reward.getCard()); //Now we can render the card.
T = renderPlaceholder(G, reward.getCard()); //Now we can render the card.
setCardImage(T);
if (image == null) {
if (T == null)
System.err.println("Error generating placeholder image for card: "+reward.getCard().getName());
else
image = T;
}
//Set the fetcher regardless. It'll replace the preview once it lands.
fetcher.fetchImage(reward.getCard().getImageKey(false), this);
}
@@ -202,6 +208,7 @@ public class RewardActor extends Actor implements Disposable, ImageFetcher.Callb
}
private void setCardImage(Texture img) {
try {
image = img;
if (Forge.isTextureFilteringEnabled())
image.setFilter(Texture.TextureFilter.MipMapLinearLinear, Texture.TextureFilter.Linear);
@@ -220,6 +227,9 @@ public class RewardActor extends Actor implements Disposable, ImageFetcher.Callb
else
addListener(tooltip);
}
} catch (Exception e) {
e.printStackTrace();
}
}
private Texture renderPlaceholder(Graphics G, PaperCard card){ //Use CardImageRenderer to output a Texture.
@@ -388,9 +398,14 @@ public class RewardActor extends Actor implements Disposable, ImageFetcher.Callb
batch.setShader(null);
batch.begin();
}
} else {
if (Reward.Type.Card.equals(reward.getType())) {
if (T == null) {
T = renderPlaceholder(new Graphics(), reward.getCard());
}
batch.draw(T, x, -getHeight() / 2, width, getHeight());
}
}
else
batch.draw(ImageCache.defaultImage, x, -getHeight() / 2, width, getHeight());
switch (reward.getType()) {
case Card:
break;

View File

@@ -143,7 +143,7 @@ public class ImageCache {
String imageKey = ii.getImageKey(false);
if (imageKey != null) {
if(imageKey.startsWith(ImageKeys.CARD_PREFIX) || imageKey.startsWith(ImageKeys.TOKEN_PREFIX))
return getImage(ii.getImageKey(false), true, false);
return getImage(ii.getImageKey(false), false, false);
}
return getImage(ii.getImageKey(false), true, true);
}