public static Hero GetHeroHighestHP(Hero highestHP)
 {
     for (int i = 0; i < GameEngine.getHeroes().Count; i++)
     {
         if (highestHP.lifeTotal < GameEngine.getHeroes()[i].lifeTotal)
         {
             highestHP = GameEngine.getHeroes()[i];
         }
     }
     return highestHP;
 }
        private void drawHeroTemplate(Hero hero, int currentHeroRow)
        {
            string heroName = hero.getCharacterName();
            Card deckBack =new Card(HERO_IMAGE_PATH + heroName + "/NonPlayable/" + heroName.ToLower() + "_back.png");
            deckBack.MouseDown += new MouseButtonEventHandler(Mouse_Click_Listener);
            Card characterCard = new Card(HERO_IMAGE_PATH + heroName + "/NonPlayable/" + heroName.ToLower() + "_hero.png");
            characterCard.MouseDown += new MouseButtonEventHandler(Mouse_Click_Listener);

            Utility.addElementToGrid(characterCard, currentHeroRow, CHARACTER_COLUMN, gridLayout);
            Utility.addElementToGrid(deckBack, currentHeroRow, DECK_COLUMN, gridLayout);

            addHealthLabel(hero, currentHeroRow);

            //TODO: Graveyard not sure if this hsould be the card or the image changed.
            Card graveYardImg = new Card(GRAVEYARD_IMAGE_PATH);
            if (hero.graveyard.Count == 0)
            {
                graveYardImg.Source = Utility.getImageSource(GRAVEYARD_IMAGE_PATH);
            }
            else
            {
                graveYardImg.Source = hero.graveyard[hero.graveyard.Count - 1].Source;
            }
            graveYardImg.MouseDown += new MouseButtonEventHandler(Mouse_Click_Listener);
            Utility.addElementToGrid(graveYardImg, currentHeroRow, GRAVEYARD_COLUMN, gridLayout);
        }
 public void initHandViewer(Hero currentPlayer)
 {
     if (currentPlayer != null)
     {
         handViewer = new ViewHand(currentPlayer.getPlayerHand(), this);
     }
 }