public void startStage()
 {
     Debug.Log("startStage");
     Debug.Log("current player: " + activeQuest.getCurrentPlayer().getName());
     if (activeQuest.getQuest() == null)
     {
         endQuest("Quest over");
         return;
     }
     else if (activeQuest.getPlayerNum() == 0)
     {
         endQuest("All players dead");
         return;
     }
     else if (activeQuest.getCurrentPlayer().isHuman())
     {
         Debug.Log(activeQuest.getCurrentStage());
         ui.showStage(activeQuest);
         if (Object.ReferenceEquals(activeQuest.getCurrentStage().GetType(), typeof(Foe)))
         {
             //log.log(activeQuest.getCurrentPlayer().getName() + " is now facing a foe of type " + activeQuest.getCurrentStage().getName() + " enhanced with " + activeQuest.getStageWeaponString());
             Debug.Log(activeQuest.getCurrentPlayer().getName());
             ui.askForCards(
                 activeQuest.getCurrentPlayer(),
                 activeQuest,
                 GameState.state.ASKINGFORCARDSINQUEST,
                 "Select cards to play, then press FIGHT",
                 "FIGHT",
                 "Give up",
                 false,
                 true,
                 true,
                 true,
                 false,
                 true);
         }
         if (Object.ReferenceEquals(activeQuest.getCurrentStage().GetType(), typeof(Test)))
         {
             log.log(activeQuest.getCurrentPlayer().getName() + " is now bidding in the " + activeQuest.getCurrentStage().getName() + " test");
             ui.askForCards(
                 activeQuest.getCurrentPlayer(),
                 activeQuest,
                 GameState.state.ASKINGFORCARDSINBID,
                 "Select cards to bit, then press BID",
                 "BID",
                 "Give up",
                 true,
                 true,
                 true,
                 true,
                 true,
                 true);
         }
     }
     else
     {
         if (Object.ReferenceEquals(activeQuest.getCurrentStage().GetType(), typeof(Foe)))
         {
             questAttack(activeQuest.getCurrentPlayer().getAI().playQuestStage(activeQuest));
         }
         else if (Object.ReferenceEquals(activeQuest.getCurrentStage().GetType(), typeof(Test)))
         {
             bidPhase(activeQuest.getCurrentPlayer().getAI().nextBid(activeQuest));
         }
     }
     return;
 }