mirror of
https://github.com/Card-Forge/forge.git
synced 2025-11-15 18:28:00 +00:00
Adventure tavern events, take 2
This commit is contained in:
@@ -7,6 +7,7 @@ import forge.Forge;
|
|||||||
import forge.adventure.data.AdventureEventData;
|
import forge.adventure.data.AdventureEventData;
|
||||||
import forge.adventure.player.AdventurePlayer;
|
import forge.adventure.player.AdventurePlayer;
|
||||||
import forge.adventure.pointofintrest.PointOfInterestChanges;
|
import forge.adventure.pointofintrest.PointOfInterestChanges;
|
||||||
|
import forge.adventure.stage.GameHUD;
|
||||||
import forge.adventure.util.AdventureEventController;
|
import forge.adventure.util.AdventureEventController;
|
||||||
import forge.adventure.util.Controls;
|
import forge.adventure.util.Controls;
|
||||||
import forge.adventure.util.Current;
|
import forge.adventure.util.Current;
|
||||||
@@ -69,6 +70,7 @@ public class InnScene extends UIScene {
|
|||||||
|
|
||||||
|
|
||||||
public void done() {
|
public void done() {
|
||||||
|
GameHUD.getInstance().getTouchpad().setVisible(false);
|
||||||
Forge.switchScene(lastGameScene==null?GameScene.instance():lastGameScene);
|
Forge.switchScene(lastGameScene==null?GameScene.instance():lastGameScene);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -55,7 +55,7 @@ public class PlayerStatisticScene extends UIScene {
|
|||||||
private PlayerStatisticScene() {
|
private PlayerStatisticScene() {
|
||||||
super(Forge.isLandscapeMode() ? "ui/statistic.json" : "ui/statistic_portrait.json");
|
super(Forge.isLandscapeMode() ? "ui/statistic.json" : "ui/statistic_portrait.json");
|
||||||
planeswalkers = PlaneswalkerAchievements.instance;
|
planeswalkers = PlaneswalkerAchievements.instance;
|
||||||
achievements = FModel.getAchievements(GameType.Constructed);
|
achievements = FModel.getAchievements(GameType.Adventure);
|
||||||
cardActivation = CardActivationAchievements.instance;
|
cardActivation = CardActivationAchievements.instance;
|
||||||
scrollContainer = new Table(Controls.getSkin());
|
scrollContainer = new Table(Controls.getSkin());
|
||||||
scrollContainer.row();
|
scrollContainer.row();
|
||||||
|
|||||||
@@ -1,8 +1,6 @@
|
|||||||
package forge.adventure.util;
|
package forge.adventure.util;
|
||||||
|
|
||||||
import com.badlogic.gdx.files.FileHandle;
|
|
||||||
import com.badlogic.gdx.utils.Array;
|
import com.badlogic.gdx.utils.Array;
|
||||||
import com.badlogic.gdx.utils.Json;
|
|
||||||
import forge.StaticData;
|
import forge.StaticData;
|
||||||
import forge.adventure.data.AdventureEventData;
|
import forge.adventure.data.AdventureEventData;
|
||||||
import forge.adventure.player.AdventurePlayer;
|
import forge.adventure.player.AdventurePlayer;
|
||||||
|
|||||||
@@ -8,7 +8,6 @@ import com.google.common.collect.Iterables;
|
|||||||
import forge.StaticData;
|
import forge.StaticData;
|
||||||
import forge.adventure.data.GeneratedDeckData;
|
import forge.adventure.data.GeneratedDeckData;
|
||||||
import forge.adventure.data.GeneratedDeckTemplateData;
|
import forge.adventure.data.GeneratedDeckTemplateData;
|
||||||
import forge.adventure.data.ItemData;
|
|
||||||
import forge.adventure.data.RewardData;
|
import forge.adventure.data.RewardData;
|
||||||
import forge.card.*;
|
import forge.card.*;
|
||||||
import forge.card.mana.ManaCostShard;
|
import forge.card.mana.ManaCostShard;
|
||||||
@@ -17,15 +16,12 @@ import forge.deck.DeckSection;
|
|||||||
import forge.deck.DeckgenUtil;
|
import forge.deck.DeckgenUtil;
|
||||||
import forge.deck.io.DeckSerializer;
|
import forge.deck.io.DeckSerializer;
|
||||||
import forge.game.GameFormat;
|
import forge.game.GameFormat;
|
||||||
import forge.gamemodes.quest.QuestController;
|
|
||||||
import forge.item.BoosterPack;
|
import forge.item.BoosterPack;
|
||||||
import forge.item.InventoryItem;
|
|
||||||
import forge.item.PaperCard;
|
import forge.item.PaperCard;
|
||||||
import forge.item.SealedProduct;
|
import forge.item.SealedProduct;
|
||||||
import forge.item.generation.UnOpenedProduct;
|
import forge.item.generation.UnOpenedProduct;
|
||||||
import forge.model.FModel;
|
import forge.model.FModel;
|
||||||
import forge.util.Aggregates;
|
import forge.util.Aggregates;
|
||||||
import forge.util.MyRandom;
|
|
||||||
|
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
|
|||||||
@@ -32,7 +32,6 @@ import forge.adventure.data.ItemData;
|
|||||||
import forge.adventure.scene.RewardScene;
|
import forge.adventure.scene.RewardScene;
|
||||||
import forge.adventure.scene.Scene;
|
import forge.adventure.scene.Scene;
|
||||||
import forge.adventure.scene.UIScene;
|
import forge.adventure.scene.UIScene;
|
||||||
import forge.assets.FImageComplex;
|
|
||||||
import forge.assets.FSkin;
|
import forge.assets.FSkin;
|
||||||
import forge.assets.ImageCache;
|
import forge.assets.ImageCache;
|
||||||
import forge.card.CardImageRenderer;
|
import forge.card.CardImageRenderer;
|
||||||
@@ -47,9 +46,7 @@ import forge.util.ImageFetcher;
|
|||||||
import forge.util.ImageUtil;
|
import forge.util.ImageUtil;
|
||||||
import forge.util.MyRandom;
|
import forge.util.MyRandom;
|
||||||
import org.apache.commons.lang3.StringUtils;
|
import org.apache.commons.lang3.StringUtils;
|
||||||
import org.apache.commons.lang3.tuple.Pair;
|
|
||||||
|
|
||||||
import java.awt.image.BufferedImage;
|
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
|
|
||||||
import static forge.adventure.util.Paths.ITEMS_ATLAS;
|
import static forge.adventure.util.Paths.ITEMS_ATLAS;
|
||||||
|
|||||||
@@ -313,11 +313,20 @@ public class MatchController extends AbstractGuiGame {
|
|||||||
public void finishGame() {
|
public void finishGame() {
|
||||||
if (Forge.isMobileAdventureMode) {
|
if (Forge.isMobileAdventureMode) {
|
||||||
if (Config.instance().getSettingData().disableWinLose) {
|
if (Config.instance().getSettingData().disableWinLose) {
|
||||||
|
if (getGameView().isMatchOver()){
|
||||||
Forge.setCursor(null, "0");
|
Forge.setCursor(null, "0");
|
||||||
if (!DuelScene.instance().hasCallbackExit())
|
if (!DuelScene.instance().hasCallbackExit()){
|
||||||
|
DuelScene.instance().GameEnd();
|
||||||
DuelScene.instance().exitDuelScene();
|
DuelScene.instance().exitDuelScene();
|
||||||
|
}
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
else{
|
||||||
|
try { MatchController.getHostedMatch().continueMatch();
|
||||||
|
} catch (NullPointerException e) {}
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
if (hasLocalPlayers() || getGameView().isMatchOver()) {
|
if (hasLocalPlayers() || getGameView().isMatchOver()) {
|
||||||
view.setViewWinLose(new ViewWinLose(getGameView()));
|
view.setViewWinLose(new ViewWinLose(getGameView()));
|
||||||
|
|||||||
@@ -19,7 +19,7 @@ public class AdventureWinLose extends ControlWinLose {
|
|||||||
else{
|
else{
|
||||||
v.getBtnContinue().setVisible(true);
|
v.getBtnContinue().setVisible(true);
|
||||||
v.getBtnContinue().setEnabled(true);
|
v.getBtnContinue().setEnabled(true);
|
||||||
v.getBtnContinue().setText("CONTINUE MATCH");
|
v.getBtnContinue().setText(Forge.getLocalizer().getMessage("btnNextGame"));
|
||||||
v.getBtnQuit().setText(Forge.getLocalizer().getMessage("lblQuitAdventureEventMatch"));
|
v.getBtnQuit().setText(Forge.getLocalizer().getMessage("lblQuitAdventureEventMatch"));
|
||||||
}
|
}
|
||||||
v.getBtnRestart().setVisible(false);
|
v.getBtnRestart().setVisible(false);
|
||||||
|
|||||||
@@ -77,6 +77,7 @@ public abstract class AchievementCollection implements Iterable<Achievement> {
|
|||||||
cb.addItem(FModel.getAchievements(GameType.Quest));
|
cb.addItem(FModel.getAchievements(GameType.Quest));
|
||||||
cb.addItem(FModel.getAchievements(GameType.PlanarConquest));
|
cb.addItem(FModel.getAchievements(GameType.PlanarConquest));
|
||||||
cb.addItem(FModel.getAchievements(GameType.Puzzle));
|
cb.addItem(FModel.getAchievements(GameType.Puzzle));
|
||||||
|
cb.addItem(FModel.getAchievements(GameType.Adventure));
|
||||||
cb.addItem(AltWinAchievements.instance);
|
cb.addItem(AltWinAchievements.instance);
|
||||||
cb.addItem(PlaneswalkerAchievements.instance);
|
cb.addItem(PlaneswalkerAchievements.instance);
|
||||||
cb.addItem(CardActivationAchievements.instance);
|
cb.addItem(CardActivationAchievements.instance);
|
||||||
|
|||||||
@@ -0,0 +1,18 @@
|
|||||||
|
package forge.localinstance.achievements;
|
||||||
|
|
||||||
|
import forge.game.GameType;
|
||||||
|
import forge.localinstance.properties.ForgeConstants;
|
||||||
|
|
||||||
|
public class AdventureAchievements extends AchievementCollection {
|
||||||
|
public AdventureAchievements() {
|
||||||
|
super("lblAdventure", ForgeConstants.ACHIEVEMENTS_DIR + "adventure.xml", true);
|
||||||
|
}
|
||||||
|
|
||||||
|
//add achievements that should appear at the bottom below core achievements for each game mode
|
||||||
|
@Override
|
||||||
|
protected void addAchievements() {
|
||||||
|
add(new Poisoned(15, 25, 40));
|
||||||
|
add(new DeckedOut(8, 4, 2));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
@@ -270,6 +270,7 @@ public final class FModel {
|
|||||||
achievements.put(GameType.Quest, new QuestAchievements());
|
achievements.put(GameType.Quest, new QuestAchievements());
|
||||||
achievements.put(GameType.PlanarConquest, new PlanarConquestAchievements());
|
achievements.put(GameType.PlanarConquest, new PlanarConquestAchievements());
|
||||||
achievements.put(GameType.Puzzle, new PuzzleAchievements());
|
achievements.put(GameType.Puzzle, new PuzzleAchievements());
|
||||||
|
achievements.put(GameType.Adventure, new AdventureAchievements());
|
||||||
|
|
||||||
//preload AI profiles
|
//preload AI profiles
|
||||||
AiProfileUtil.loadAllProfiles(ForgeConstants.AI_PROFILE_DIR);
|
AiProfileUtil.loadAllProfiles(ForgeConstants.AI_PROFILE_DIR);
|
||||||
@@ -470,6 +471,10 @@ public final class FModel {
|
|||||||
case Quest:
|
case Quest:
|
||||||
case PlanarConquest:
|
case PlanarConquest:
|
||||||
case Puzzle:
|
case Puzzle:
|
||||||
|
case Adventure:
|
||||||
|
break;
|
||||||
|
case AdventureEvent:
|
||||||
|
gameType = GameType.Adventure;
|
||||||
break;
|
break;
|
||||||
case QuestDraft:
|
case QuestDraft:
|
||||||
gameType = GameType.Quest;
|
gameType = GameType.Quest;
|
||||||
|
|||||||
Reference in New Issue
Block a user