Search in sources :

Example 1 with ApocalypseCard

use of Cards.Empire.ApocalypseCard in project cardgame1 by joey101937.

the class CampaignManager method getDeckForLevel.

/**
 * gets enemy decks for each level
 * @param level
 * @return
 * @throws Exception if no decks are on file for that level
 */
public static ArrayList<Card> getDeckForLevel(int level) throws Exception {
    ArrayList<Card> deck = new ArrayList<>();
    switch(level) {
        case 1:
            for (int i = 0; i < 5; i++) {
                deck.add(new ArakkoaCard());
                deck.add(new KnightCard());
            }
            deck.add(new UndyingSoldierCard());
            break;
        case 2:
            deck.add(new ArakkoaCard());
            deck.add(new ArakkoaCard());
            deck.add(new ArcherCard());
            deck.add(new KnightCard());
            deck.add(new KnightCard());
            deck.add(new KnightCard());
            deck.add(new KnightCard());
            deck.add(new FrostBearCard());
            deck.add(new FrostBearCard());
            deck.add(new FrostBearCard());
            deck.add(new VolcanoCard());
            deck.add(new VolcanoCard());
            break;
        case 3:
            for (int i = 0; i < 3; i++) {
                deck.add(new ArakkoaCard());
                deck.add(new ArcherCard());
                deck.add(new FireBoltCard());
                deck.add(new FrostBearCard());
                deck.add(new KnightCard());
                deck.add(new VengefullKnightCard());
                deck.add(new VolcanoCard());
            }
            deck.add(new SpellBookCard());
            deck.add(new SpellBookCard());
            deck.add(new FireSpearCard());
            deck.add(new FireSpearCard());
            deck.add(new PaladinCard());
            deck.add(new PaladinCard());
            break;
        case // base deck
        4:
            for (int i = 0; i < 3; i++) {
                deck.add(new ArakkoaCard());
                deck.add(new ArcherCard());
                deck.add(new FireBoltCard());
                deck.add(new FrostBearCard());
                deck.add(new KnightCard());
                deck.add(new VengefullKnightCard());
                deck.add(new VolcanoCard());
                FrostDragonCard fdc = new FrostDragonCard();
                // fdc.summon.attack = 4; //frost dragons in this deck are strong than usual
                // fdc.cost--;
                deck.add(fdc);
            }
            deck.add(new SpellBookCard());
            deck.add(new SpellBookCard());
            deck.add(new FireSpearCard());
            deck.add(new PaladinCard());
            deck.add(new PaladinCard());
            break;
        case // empire deck
        5:
            for (int i = 0; i < 3; i++) {
                deck.add(new SnipeTrapCard());
                deck.add(new DoubleshotCard());
                deck.add(new GriffonCard());
                deck.add(new KnightCard());
                deck.add(new ArcherCard());
            }
            for (int i = 0; i < 2; i++) {
                deck.add(new PaladinCard());
                deck.add(new SpearmanCard());
                deck.add(new CavalryGeneralCard());
                deck.add(new FireyWhelpCard());
            }
            deck.add(new UndyingSoldierCard());
            deck.add(new ApocalypseCard());
            break;
        case // deep sea
        6:
            for (int i = 0; i < 3; i++) {
                deck.add(new JellyfishCard());
                deck.add(new SeaWitchCard());
                deck.add(new PirranahCard());
                deck.add(new SeaSerpentTrapCard());
                deck.add(new ThrasherCard());
            }
            for (int i = 0; i < 2; i++) {
                deck.add(new SwollowCard());
                deck.add(new PredationCard());
                deck.add(new VolcanoCard());
            // deck.add(new KelpieCard());
            }
            deck.add(new ThrasherCard());
            deck.add(new SpellBookCard());
            break;
        case // undead
        7:
            for (int i = 0; i < 5; i++) {
                deck.add(new ArcherCard());
                deck.add(new KnightCard());
            }
            for (int i = 0; i < 4; i++) {
                deck.add(new SkeletonArmySpell());
            }
            for (int i = 0; i < 2; i++) {
                deck.add(new SkelemancerCard());
                deck.add(new SkullKingCard());
                deck.add(new ZombieTrapCard());
                deck.add(new FireBoltCard());
                deck.add(new VolcanoCard());
            }
            deck.add(new ZombieBiteSpell());
            deck.add(new SpellBookCard());
            break;
        case 8:
            deck.add(new StoneGolemCard());
            deck.add(new StoneGolemCard());
            deck.add(new StoneGolemCard());
            deck.add(new GeomancerCard());
            deck.add(new GeomancerCard());
            deck.add(new GeomancerCard());
            deck.add(new SorcererCard());
            deck.add(new SorcererCard());
            deck.add(new SorcererCard());
            deck.add(new EarthInfusionSpell());
            deck.add(new EarthInfusionSpell());
            deck.add(new FireInfusionSpell());
            deck.add(new IceInfusionSpell());
            deck.add(new SandElementalCard());
            deck.add(new SandElementalCard());
            deck.add(new SandElementalCard());
            deck.add(new VolcanoCard());
            deck.add(new VolcanoCard());
            deck.add(new ArcherCard());
            deck.add(new MinotaurCard());
            deck.add(new SpellBookCard());
            deck.add(new SpellBookCard());
            deck.add(new PaladinCard());
            deck.add(new PaladinCard());
            break;
        case // dragon
        9:
            for (int i = 0; i < 5; i++) {
                deck.add(new GrayDrakeCard());
                deck.add(new VolcanicDrakeCard());
                deck.add(new FrostDragonCard());
                deck.add(new ArcherCard());
                deck.add(new VolcanoCard());
                deck.add(new PaladinCard());
            }
            for (int i = 0; i < 3; i++) {
                deck.add(new DragonSoulTrapCard());
                deck.add(new DragonBreathCard());
            }
            deck.add(new SpearmanCard());
            deck.add(new UndyingSoldierCard());
            break;
        case // hard empire (empireburn)
        10:
            deck.add(new CavalryGeneralCard());
            deck.add(new CavalryGeneralCard());
            deck.add(new CavalryGeneralCard());
            deck.add(new GriffonCard());
            deck.add(new GriffonCard());
            deck.add(new GriffonCard());
            deck.add(new EnchantedSwordCard());
            deck.add(new EnchantedSwordCard());
            deck.add(new EnchantedSwordCard());
            deck.add(new FireyWhelpCard());
            deck.add(new FireyWhelpCard());
            deck.add(new SpearmanCard());
            deck.add(new SpearmanCard());
            deck.add(new SpearmanCard());
            deck.add(new VengefullKnightCard());
            deck.add(new VengefullKnightCard());
            deck.add(new VengefullKnightCard());
            deck.add(new KnightCard());
            deck.add(new KnightCard());
            deck.add(new KnightCard());
            deck.add(new ArcherCard());
            deck.add(new ArcherCard());
            deck.add(new ArcherCard());
            deck.add(new FrostBearCard());
            deck.add(new FrostBearCard());
            deck.add(new SpellBookCard());
            deck.add(new SpellBookCard());
            break;
        case // hard fish (deepsea again
        11:
            for (int i = 0; i < 6; i++) {
                deck.add(new JellyfishCard());
                deck.add(new SeaWitchCard());
                deck.add(new PirranahCard());
                deck.add(new SeaSerpentTrapCard());
                deck.add(new ThrasherCard());
            }
            for (int i = 0; i < 4; i++) {
                deck.add(new SwollowCard());
                deck.add(new PredationCard());
                deck.add(new VolcanoCard());
                // deck.add(new KelpieCard());
                deck.add(new SpellBookCard());
            }
            deck.add(new ThrasherCard());
            break;
        case 12:
            for (int i = 0; i < 10; i++) {
                deck.add(new ArcherCard());
                deck.add(new KnightCard());
            }
            for (int i = 0; i < 6; i++) {
                deck.add(new SkeletonArmySpell());
            }
            for (int i = 0; i < 4; i++) {
                deck.add(new SkelemancerCard());
                deck.add(new SkullKingCard());
                deck.add(new ZombieTrapCard());
                deck.add(new FireBoltCard());
                deck.add(new VolcanoCard());
                deck.add(new SpellBookCard());
            }
            deck.add(new ZombieBiteSpell());
            deck.add(new ZombieBiteSpell());
            break;
        case 13:
            deck.add(new StoneGolemCard());
            deck.add(new StoneGolemCard());
            deck.add(new StoneGolemCard());
            deck.add(new StoneGolemCard());
            deck.add(new StoneGolemCard());
            deck.add(new StoneGolemCard());
            deck.add(new GeomancerCard());
            deck.add(new GeomancerCard());
            deck.add(new GeomancerCard());
            deck.add(new SorcererCard());
            deck.add(new SorcererCard());
            deck.add(new SorcererCard());
            deck.add(new SorcererCard());
            deck.add(new EarthInfusionSpell());
            deck.add(new EarthInfusionSpell());
            deck.add(new FireInfusionSpell());
            deck.add(new IceInfusionSpell());
            deck.add(new SandElementalCard());
            deck.add(new SandElementalCard());
            deck.add(new SandElementalCard());
            deck.add(new VolcanoCard());
            deck.add(new VolcanoCard());
            deck.add(new ArcherCard());
            deck.add(new MinotaurCard());
            deck.add(new SpellBookCard());
            deck.add(new SpellBookCard());
            deck.add(new SpellBookCard());
            deck.add(new PaladinCard());
            deck.add(new PaladinCard());
            break;
        case 14:
            for (int i = 0; i < 4; i++) {
                deck.add(new GrayDrakeCard());
                deck.add(new VolcanicDrakeCard());
                deck.add(new FrostDragonCard());
                deck.add(new ArcherCard());
                deck.add(new PaladinCard());
            }
            for (int i = 0; i < 2; i++) {
                deck.add(new DragonSoulTrapCard());
                deck.add(new DragonBreathCard());
                deck.add(new DragonBreathCard());
                deck.add(new VolcanoCard());
            }
            deck.add(new SpearmanCard());
            deck.add(new SpearmanCard());
            deck.add(new SpellBookCard());
            deck.add(new SpellBookCard());
            deck.add(new SpellBookCard());
            deck.add(new UndyingSoldierCard());
            break;
        default:
            throw new Exception("No deck available for level " + level);
    }
    return deck;
}
Also used : EnchantedSwordCard(Cards.Empire.EnchantedSwordCard) ArrayList(java.util.ArrayList) ZombieTrapCard(Cards.Undead.ZombieTrapCard) DoubleshotCard(Cards.Empire.DoubleshotCard) DragonSoulTrapCard(Cards.Dragon.DragonSoulTrapCard) SkeletonArmySpell(Cards.Undead.SkeletonArmySpell) SkullKingCard(Cards.Undead.SkullKingCard) DoubleshotCard(Cards.Empire.DoubleshotCard) DragonSoulTrapCard(Cards.Dragon.DragonSoulTrapCard) CustomDeck.getCard(CustomDecks.CustomDeck.getCard) GrayDrakeCard(Cards.Dragon.GrayDrakeCard) SnipeTrapCard(Cards.Empire.SnipeTrapCard) SwollowCard(Cards.Fish.SwollowCard) CavalryGeneralCard(Cards.Empire.CavalryGeneralCard) ApocalypseCard(Cards.Empire.ApocalypseCard) GriffonCard(Cards.Empire.GriffonCard) Card(Cards.Card) JellyfishCard(Cards.Fish.JellyfishCard) SkelemancerCard(Cards.Undead.SkelemancerCard) PredationCard(Cards.Fish.PredationCard) SkullKingCard(Cards.Undead.SkullKingCard) SeaWitchCard(Cards.Fish.SeaWitchCard) ZombieTrapCard(Cards.Undead.ZombieTrapCard) VolcanicDrakeCard(Cards.Dragon.VolcanicDrakeCard) EnchantedSwordCard(Cards.Empire.EnchantedSwordCard) SeaSerpentTrapCard(Cards.Fish.SeaSerpentTrapCard) FireyWhelpCard(Cards.Empire.FireyWhelpCard) DragonBreathCard(Cards.Dragon.DragonBreathCard) ThrasherCard(Cards.Fish.ThrasherCard) PirranahCard(Cards.Fish.PirranahCard) SwollowCard(Cards.Fish.SwollowCard) GriffonCard(Cards.Empire.GriffonCard) SnipeTrapCard(Cards.Empire.SnipeTrapCard) ZombieBiteSpell(Cards.Undead.ZombieBiteSpell) PirranahCard(Cards.Fish.PirranahCard) CavalryGeneralCard(Cards.Empire.CavalryGeneralCard) JellyfishCard(Cards.Fish.JellyfishCard) ApocalypseCard(Cards.Empire.ApocalypseCard) VolcanicDrakeCard(Cards.Dragon.VolcanicDrakeCard) FireyWhelpCard(Cards.Empire.FireyWhelpCard) GrayDrakeCard(Cards.Dragon.GrayDrakeCard) SeaWitchCard(Cards.Fish.SeaWitchCard) DragonBreathCard(Cards.Dragon.DragonBreathCard) NoSuchCardException(CustomDecks.NoSuchCardException) FileNotFoundException(java.io.FileNotFoundException) CorruptFileException(CustomDecks.CorruptFileException) IOException(java.io.IOException) ThrasherCard(Cards.Fish.ThrasherCard) PredationCard(Cards.Fish.PredationCard) SeaSerpentTrapCard(Cards.Fish.SeaSerpentTrapCard) SkelemancerCard(Cards.Undead.SkelemancerCard)

Aggregations

Card (Cards.Card)1 DragonBreathCard (Cards.Dragon.DragonBreathCard)1 DragonSoulTrapCard (Cards.Dragon.DragonSoulTrapCard)1 GrayDrakeCard (Cards.Dragon.GrayDrakeCard)1 VolcanicDrakeCard (Cards.Dragon.VolcanicDrakeCard)1 ApocalypseCard (Cards.Empire.ApocalypseCard)1 CavalryGeneralCard (Cards.Empire.CavalryGeneralCard)1 DoubleshotCard (Cards.Empire.DoubleshotCard)1 EnchantedSwordCard (Cards.Empire.EnchantedSwordCard)1 FireyWhelpCard (Cards.Empire.FireyWhelpCard)1 GriffonCard (Cards.Empire.GriffonCard)1 SnipeTrapCard (Cards.Empire.SnipeTrapCard)1 JellyfishCard (Cards.Fish.JellyfishCard)1 PirranahCard (Cards.Fish.PirranahCard)1 PredationCard (Cards.Fish.PredationCard)1 SeaSerpentTrapCard (Cards.Fish.SeaSerpentTrapCard)1 SeaWitchCard (Cards.Fish.SeaWitchCard)1 SwollowCard (Cards.Fish.SwollowCard)1 ThrasherCard (Cards.Fish.ThrasherCard)1 SkelemancerCard (Cards.Undead.SkelemancerCard)1