The Cake

Altren solved this first. Can you do it too?

   void configGame()
   

{
   dontNeedDecks();
   setMapSeed(20);
   setNumPlayers(2);
   addAIPlayer("Renegade Elf","Crypt Doctor",0);
}


void afterStart()
{
    
  infoBox("The Cake","When I made this script I thought that decomposition needed to target a corpse. Therefor you are only allowed to cast Decomposition on fields that contains a corpse when solving this puzzle.");


  infoBox("The Cake","You admit that castining that Erg Geyser probably wasn't such a good idea, but your enemy has entangled two of his own creatures wich probably wasn't such a good idea either. Now that you have gotten your titan out you know exactly how to get those twenty glory you need to win this. Then you can go home and eat some cake.");





}


void beforeStart()
{
    


   Player aiPlayer=getAIPlayer(0);


createEntity("null Stone",12,11,aiPlayer);
createEntity("null Stone",8,3,aiPlayer);
createEntity("null Stone",8,3,aiPlayer);
createEntity("null Stone",0,0,aiPlayer);
createEntity("Serene templar",12,5,aiPlayer);

createEntity("Baltasar's lash",11,3,aiPlayer);

createEntity("Garrison Ballista",1,11,aiPlayer);

createEntity("Garrison Ballista",0,0,aiPlayer);
createEntity("Dagkarnoken Fortress",7,5,aiPlayer);
createEntity("Walled Outpost",10,10,aiPlayer);
createEntity("Loyal Wilds",11,7,aiPlayer);
createEntity("Claimed with Blood",11,1,aiPlayer);
  createEntity("Stone Mauler",12,2,aiPlayer);




Entity ent=createEntity("Gully Slingers",10,2,aiPlayer);

   enchantEntity(ent,"Entangle",aiPlayer);

Entity ant=createEntity("Blunderbuss Squad",9,10,aiPlayer);

 enchantEntity(ant,"Entangle",aiPlayer);

Entity bnt=createEntity("Blunderbuss Squad",2,11,aiPlayer);

 enchantEntity(bnt,"Entangle",aiPlayer);
 enchantEntity(bnt,"buoyancy",aiPlayer);




Entity cnt=createEntity("Earthworks",0,11,aiPlayer);

 enchantEntity(cnt,"Loft Pigeons",aiPlayer);
 enchantEntity(cnt,"Loft Pigeons",aiPlayer);

  
  
  
   

   Player player=getHumanPlayer(0);

createEntity("Imperial Keep",2,3,player);


createEntity("Warren",1,3,player);
createEntity("Grove",2,6,player);
createEntity("Magma Chamber",0,4,player);
createEntity("Astridian Geographic Society",12,8,player);
createEntity("Scry Pool",5,0,player);
createEntity("Scry Pool",7,0,player);
createEntity("Scry Pool",8,2,player);
createEntity("Pine Ent",4,9,player);

createEntity("Rithig, Titan Pariah",3,6,player);

createEntity("Treeherd",3,4,player);
createEntity("Sphere of Radiance",10,0,player);
createEntity("Erg Geyser",12,1,player);
createEntity("Loyal Wilds",12,7,player);




setTerrain(createLocation(0,0),3,2);
setTerrain(createLocation(0,1),3,2);
setTerrain(createLocation(0,2),1,1);
setTerrain(createLocation(0,3),3,3);
setTerrain(createLocation(0,4),3,3);
setTerrain(createLocation(0,5),3,3);
setTerrain(createLocation(0,6),4,3);
setTerrain(createLocation(0,7),5,3);
setTerrain(createLocation(0,8),5,3);
setTerrain(createLocation(0,9),1,3);
setTerrain(createLocation(0,10),5,3);
setTerrain(createLocation(0,11),5,3);


setTerrain(createLocation(1,0),1,1);
setTerrain(createLocation(1,1),1,1);
setTerrain(createLocation(1,2),1,3);
setTerrain(createLocation(1,3),3,3);
setTerrain(createLocation(1,4),1,3);
setTerrain(createLocation(1,5),3,2);
setTerrain(createLocation(1,6),3,2);
setTerrain(createLocation(1,7),5,3);
setTerrain(createLocation(1,8),1,2);
setTerrain(createLocation(1,9),5,2);
setTerrain(createLocation(1,10),5,3);
setTerrain(createLocation(1,11),5,3);


setTerrain(createLocation(2,0),3,3);
setTerrain(createLocation(2,1),2,3);
setTerrain(createLocation(2,2),3,3);
setTerrain(createLocation(2,3),3,3);
setTerrain(createLocation(2,4),1,3);
setTerrain(createLocation(2,5),1,2);
setTerrain(createLocation(2,6),3,2);
setTerrain(createLocation(2,7),3,2);
setTerrain(createLocation(2,8),5,3);
setTerrain(createLocation(2,9),1,2);
setTerrain(createLocation(2,10),5,3);
setTerrain(createLocation(2,11),5,3);

setTerrain(createLocation(3,0),4,3);
setTerrain(createLocation(3,1),1,3);
setTerrain(createLocation(3,2),1,3);
setTerrain(createLocation(3,3),1,1);
setTerrain(createLocation(3,4),5,2);
setTerrain(createLocation(3,5),1,2);
setTerrain(createLocation(3,6),3,2);
setTerrain(createLocation(3,7),5,3);
setTerrain(createLocation(3,8),1,2);
setTerrain(createLocation(3,9),1,3);
setTerrain(createLocation(3,10),1,3);
setTerrain(createLocation(3,11),5,3);

setTerrain(createLocation(4,0),3,2);
setTerrain(createLocation(4,1),3,2);
setTerrain(createLocation(4,2),1,2);
setTerrain(createLocation(4,3),1,3);
setTerrain(createLocation(4,4),5,2);
setTerrain(createLocation(4,5),4,2);
setTerrain(createLocation(4,6),3,2);
setTerrain(createLocation(4,7),5,3);
setTerrain(createLocation(4,8),5,3);
setTerrain(createLocation(4,9),3,2);
setTerrain(createLocation(4,10),1,2);
setTerrain(createLocation(4,11),2,3);

setTerrain(createLocation(5,0),3,3);
setTerrain(createLocation(5,1),1,3);
setTerrain(createLocation(5,2),1,3);
setTerrain(createLocation(5,3),4,3);
setTerrain(createLocation(5,4),1,2);
setTerrain(createLocation(5,5),1,3);
setTerrain(createLocation(5,6),1,3);
setTerrain(createLocation(5,7),5,3);
setTerrain(createLocation(5,8),3,2);
setTerrain(createLocation(5,9),3,2);
setTerrain(createLocation(5,10),3,3);
setTerrain(createLocation(5,11),3,3);

setTerrain(createLocation(6,0),4,3);
setTerrain(createLocation(6,1),3,3);
setTerrain(createLocation(6,2),1,3);
setTerrain(createLocation(6,3),1,1);
setTerrain(createLocation(6,4),1,2);
setTerrain(createLocation(6,5),1,3);
setTerrain(createLocation(6,6),5,2);
setTerrain(createLocation(6,7),1,3);
setTerrain(createLocation(6,8),3,3);
setTerrain(createLocation(6,9),1,3);
setTerrain(createLocation(6,10),3,2);
setTerrain(createLocation(6,11),3,3);


setTerrain(createLocation(7,0),3,3);
setTerrain(createLocation(7,1),1,1);
setTerrain(createLocation(7,2),1,3);
setTerrain(createLocation(7,3),1,3);
setTerrain(createLocation(7,4),1,3);
setTerrain(createLocation(7,5),5,3);
setTerrain(createLocation(7,6),1,2);
setTerrain(createLocation(7,7),1,2);
setTerrain(createLocation(7,8),3,3);
setTerrain(createLocation(7,9),1,1);
setTerrain(createLocation(7,10),3,3);
setTerrain(createLocation(7,11),1,1);

setTerrain(createLocation(8,0),5,3);
setTerrain(createLocation(8,1),3,3);
setTerrain(createLocation(8,2),3,3);
setTerrain(createLocation(8,3),3,3);
setTerrain(createLocation(8,4),3,3);
setTerrain(createLocation(8,5),1,3);
setTerrain(createLocation(8,6),1,1);
setTerrain(createLocation(8,7),1,2);
setTerrain(createLocation(8,8),3,2);
setTerrain(createLocation(8,9),3,2);
setTerrain(createLocation(8,10),3,2);
setTerrain(createLocation(8,11),3,3);



setTerrain(createLocation(9,0),1,3);
setTerrain(createLocation(9,1),1,3);
setTerrain(createLocation(9,2),3,2);
setTerrain(createLocation(9,3),3,3);
setTerrain(createLocation(9,4),3,3);
setTerrain(createLocation(9,5),1,3);
setTerrain(createLocation(9,6),1,1);
setTerrain(createLocation(9,7),1,1);
setTerrain(createLocation(9,8),1,1);
setTerrain(createLocation(9,9),3,3);
setTerrain(createLocation(9,10),5,2);
setTerrain(createLocation(9,11),3,3);

setTerrain(createLocation(10,0),3,2);
setTerrain(createLocation(10,1),1,3);
setTerrain(createLocation(10,2),3,2);
setTerrain(createLocation(10,3),3,2);
setTerrain(createLocation(10,4),3,3);
setTerrain(createLocation(10,5),3,3);
setTerrain(createLocation(10,6),3,2);
setTerrain(createLocation(10,7),1,1);
setTerrain(createLocation(10,8),1,2);
setTerrain(createLocation(10,9),1,2);
setTerrain(createLocation(10,10),3,3);
setTerrain(createLocation(10,11),3,3);

setTerrain(createLocation(11,0),3,2);
setTerrain(createLocation(11,1),1,3);
setTerrain(createLocation(11,2),3,3);
setTerrain(createLocation(11,3),3,3);
setTerrain(createLocation(11,4),1,3);
setTerrain(createLocation(11,5),1,3);
setTerrain(createLocation(11,6),3,3);
setTerrain(createLocation(11,7),3,3);
setTerrain(createLocation(11,8),1,2);
setTerrain(createLocation(11,9),1,1);
setTerrain(createLocation(11,10),1,3);

setTerrain(createLocation(12,0),3,1);
setTerrain(createLocation(12,1),3,2);
setTerrain(createLocation(12,2),3,2);
setTerrain(createLocation(12,3),3,2);
setTerrain(createLocation(12,4),1,1);
setTerrain(createLocation(12,5),3,3);
setTerrain(createLocation(12,6),1,3);
setTerrain(createLocation(12,7),3,3);
setTerrain(createLocation(12,8),3,3);
setTerrain(createLocation(12,9),1,2);
setTerrain(createLocation(12,10),1,3);


   int ds=aiPlayer.deckSize();
   for(int n=0; n<ds; n++)
   {
      aiPlayer.removeDeckCard(0);
   }


   int ps=player.deckSize();
   for(int n=0; n<ps; n++)
   {
      player.removeDeckCard(0);
   }

   player.addToDeck("Soul Plague",0);
   player.addToDeck("Decomposition",0);
   player.addToDeck("Decomposition",0);

   player.addToDeck("Tentacles of Lycaron",0);
   player.addToDeck("Missionary Martyr",0);
   player.addToDeck("Graveyard",0);
   player.addToDeck("Micro Tectonics",0);

   


   player.shuffleDeck();




}