mirror of
https://github.com/Card-Forge/forge.git
synced 2025-11-16 10:48:00 +00:00
update deckaward dialog
This commit is contained in:
@@ -29,6 +29,7 @@ import com.badlogic.gdx.utils.Array;
|
||||
import com.badlogic.gdx.utils.Scaling;
|
||||
import com.badlogic.gdx.utils.Timer;
|
||||
import com.github.tommyettinger.textra.TextraButton;
|
||||
import com.github.tommyettinger.textra.TextraLabel;
|
||||
import com.github.tommyettinger.textra.TypingAdapter;
|
||||
import com.github.tommyettinger.textra.TypingLabel;
|
||||
import forge.Forge;
|
||||
@@ -38,8 +39,12 @@ import forge.adventure.pointofintrest.PointOfInterestChanges;
|
||||
import forge.adventure.scene.*;
|
||||
import forge.adventure.util.*;
|
||||
import forge.adventure.world.WorldSave;
|
||||
import forge.assets.FImageComplex;
|
||||
import forge.assets.FSkin;
|
||||
import forge.card.CardRenderer;
|
||||
import forge.deck.Deck;
|
||||
import forge.deck.DeckProxy;
|
||||
import forge.game.GameType;
|
||||
import forge.gui.FThreads;
|
||||
import forge.screens.TransitionScreen;
|
||||
import forge.sound.SoundEffectType;
|
||||
@@ -212,7 +217,7 @@ public class MapStage extends GameStage {
|
||||
super.clicked(event, x, y);
|
||||
}
|
||||
});
|
||||
dialog.getButtonTable().add(ok).width(250f);
|
||||
dialog.getButtonTable().add(ok).width(240f);
|
||||
dialog.getContentTable().add(L).width(250f);
|
||||
dialog.setKeepWithinStage(true);
|
||||
showDialog();
|
||||
@@ -234,7 +239,7 @@ public class MapStage extends GameStage {
|
||||
L.setWrap(true);
|
||||
L.skipToTheEnd();
|
||||
dialog.getContentTable().add(L).width(250f);
|
||||
dialog.getButtonTable().add(Controls.newTextButton("OK", this::hideDialog)).width(250f);
|
||||
dialog.getButtonTable().add(Controls.newTextButton("OK", this::hideDialog)).width(240f);
|
||||
dialog.setKeepWithinStage(true);
|
||||
setDialogStage(GameHUD.getInstance());
|
||||
showDialog();
|
||||
@@ -244,14 +249,36 @@ public class MapStage extends GameStage {
|
||||
dialog.getContentTable().clear();
|
||||
dialog.getButtonTable().clear();
|
||||
dialog.clearListeners();
|
||||
dialog.getContentTable().add(Controls.newTypingLabel("[%150]"+Controls.colorIdToTypingString(DeckProxy.getColorIdentity(deck)))).align(Align.center);
|
||||
dialog.getContentTable().add().row();
|
||||
DeckProxy dp = new DeckProxy(deck, "Constructed", GameType.Constructed, null);
|
||||
FImageComplex cardArt = CardRenderer.getCardArt(dp.getHighestCMCCard());
|
||||
if (cardArt != null) {
|
||||
Image art = new Image(cardArt.getTextureRegion());
|
||||
art.setWidth(50);
|
||||
art.setHeight(40);
|
||||
art.setPosition(10, 43);
|
||||
Image image = new Image(FSkin.getDeckbox().get(1));
|
||||
image.setWidth(70);
|
||||
image.setHeight(100);
|
||||
image.setPosition(0, 15);
|
||||
TextraLabel label = Controls.newTextraLabel("[%125]"+Controls.colorIdToTypingString(DeckProxy.getColorIdentity(deck))+"\n[%]"+deck.getName());
|
||||
label.setAlignment(Align.center);
|
||||
label.setPosition(34, 20);
|
||||
Group group = new Group();
|
||||
group.addActor(art);
|
||||
group.addActor(image);
|
||||
group.addActor(label);
|
||||
dialog.getContentTable().add(group).height(100).width(65).center();
|
||||
dialog.getContentTable().add().row();
|
||||
} else {
|
||||
dialog.getContentTable().add(Controls.newTextraLabel("[%125]"+Controls.colorIdToTypingString(DeckProxy.getColorIdentity(deck)))+"\n[%]"+deck.getName()).align(Align.center);
|
||||
dialog.getContentTable().add().row();
|
||||
}
|
||||
|
||||
TypingLabel L = Controls.newTypingLabel(message);
|
||||
L.setWrap(true);
|
||||
L.skipToTheEnd();
|
||||
|
||||
dialog.getContentTable().add(L).width(240);
|
||||
dialog.getContentTable().add(L).width(250);
|
||||
dialog.getButtonTable().add(Controls.newTextButton("OK", this::hideDialog)).width(240);
|
||||
dialog.setKeepWithinStage(true);
|
||||
setDialogStage(GameHUD.getInstance());
|
||||
|
||||
@@ -258,14 +258,13 @@ public class WorldStage extends GameStage implements SaveFileContent {
|
||||
//spriteGroup.setCullingArea(new Rectangle(player.getX()-getViewport().getWorldHeight()/2,player.getY()-getViewport().getWorldHeight()/2,getViewport().getWorldHeight(),getViewport().getWorldHeight()));
|
||||
super.draw();
|
||||
if (WorldSave.getCurrentSave().getPlayer().hasAnnounceFantasy()) {
|
||||
MapStage.getInstance().showDeckAwardDialog("{BLINK=WHITE;RED}Chaos Mode!{ENDBLINK}\n" + WorldSave.getCurrentSave().getPlayer().getName() + "'s Deck: " +
|
||||
WorldSave.getCurrentSave().getPlayer().getSelectedDeck().getName() +
|
||||
"\nEnemy will use Preconstructed or Random Generated Decks. Genetic AI Decks will be available to some enemies on Hard difficulty.", WorldSave.getCurrentSave().getPlayer().getSelectedDeck());
|
||||
MapStage.getInstance().showDeckAwardDialog("{BLINK=WHITE;RED}Chaos Mode!{ENDBLINK}\n" +
|
||||
"Enemy will use Preconstructed or Random Generated Decks. Genetic AI Decks will be available to some enemies on Hard difficulty.",
|
||||
WorldSave.getCurrentSave().getPlayer().getSelectedDeck());
|
||||
WorldSave.getCurrentSave().getPlayer().clearAnnounceFantasy();
|
||||
} else if (WorldSave.getCurrentSave().getPlayer().hasAnnounceCustom()) {
|
||||
MapStage.getInstance().showDeckAwardDialog("{GRADIENT}Custom Deck Mode!{ENDGRADIENT}\n" + WorldSave.getCurrentSave().getPlayer().getName() + "'s Deck: " +
|
||||
WorldSave.getCurrentSave().getPlayer().getSelectedDeck().getName() +
|
||||
"\nSome enemies will use Genetic AI Decks randomly.", WorldSave.getCurrentSave().getPlayer().getSelectedDeck());
|
||||
MapStage.getInstance().showDeckAwardDialog("{GRADIENT}Custom Deck Mode!{ENDGRADIENT}\n" +
|
||||
"Some enemies will use Genetic AI Decks randomly.", WorldSave.getCurrentSave().getPlayer().getSelectedDeck());
|
||||
WorldSave.getCurrentSave().getPlayer().clearAnnounceCustom();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -28,7 +28,7 @@ public class MapDialog {
|
||||
private final MapStage stage;
|
||||
private Array<DialogData> data;
|
||||
private final int parentID;
|
||||
private final static float WIDTH = 260f;
|
||||
private final static float WIDTH = 250f;
|
||||
static private final String defaultJSON = "[\n" +
|
||||
" {\n" +
|
||||
" \"effect\":[],\n" +
|
||||
|
||||
@@ -61,7 +61,7 @@
|
||||
"font": "default",
|
||||
"width": 64,
|
||||
"height": 16,
|
||||
"x": 419,
|
||||
"x": 425,
|
||||
"y": 56
|
||||
},
|
||||
{
|
||||
@@ -70,8 +70,8 @@
|
||||
"font": "default",
|
||||
"width": 64,
|
||||
"height": 16,
|
||||
"x": 419,
|
||||
"y": 73
|
||||
"x": 425,
|
||||
"y": 70
|
||||
},
|
||||
{
|
||||
"type": "Label",
|
||||
@@ -79,8 +79,8 @@
|
||||
"font": "default",
|
||||
"width": 64,
|
||||
"height": 16,
|
||||
"x": 419,
|
||||
"y": 90
|
||||
"x": 425,
|
||||
"y": 84
|
||||
},
|
||||
{
|
||||
"type": "TextButton",
|
||||
|
||||
@@ -60,7 +60,7 @@
|
||||
"name": "lifePoints",
|
||||
"width": 48,
|
||||
"height": 3,
|
||||
"x": 209,
|
||||
"x": 215,
|
||||
"y": 62
|
||||
},
|
||||
{
|
||||
@@ -69,7 +69,7 @@
|
||||
"font": "default",
|
||||
"width": 48,
|
||||
"height": 3,
|
||||
"x": 209,
|
||||
"x": 215,
|
||||
"y": 76
|
||||
},
|
||||
{
|
||||
@@ -78,7 +78,7 @@
|
||||
"font": "default",
|
||||
"width": 48,
|
||||
"height": 3,
|
||||
"x": 209,
|
||||
"x": 215,
|
||||
"y": 90
|
||||
},
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user