private void SelectAdventure()
        {
            try
            {
                AppGlobals.currGlobalAdventure = new Adventure();
                //LOADS THE META FILE BASED OFF THE SELETED ITEM
                DirectoryInfo currentDir = new DirectoryInfo(@AppGlobals.creationGameDir);
                var exists = currentDir.GetDirectories().Where(d => d.Name.Contains(lvAvailableCreations.SelectedItem.ToString())).Count();
                if (exists == 0)
                {
                    StoryGeneratorStageOne stageOneE = new StoryGeneratorStageOne(AppGlobals.currGlobalAdventure);
                    this.NavigationService.Navigate(stageOneE);
                    return;
                }

                DirectoryInfo selection = currentDir.GetDirectories().Where(d => d.Name.Contains(lvAvailableCreations.SelectedItem.ToString())).First();
                
                FileInfo selectionCreationMeta = selection.GetFiles().Where(d => d.Name.Contains(lvAvailableCreations.SelectedItem.ToString() + "-creationmeta.xaml")).First();

                using (FileStream fs = new FileStream(@selectionCreationMeta.FullName, FileMode.Open))
                {
                    try
                    {
                        var document = (FlowDocument)XamlReader.Load(fs);
                        if (document != null)
                        {
                            foreach (var block in document.Blocks)
                            {
                                TextRange textRange = new TextRange(block.ContentStart, block.ContentEnd);
                                string[] storyMeta = textRange.Text.Split('[');
                                foreach (string data in storyMeta)
                                {
                                    if (data.Contains("%ARMOR%"))
                                        AppGlobals.currGlobalAdventure.Armor = Convert.ToInt32(data.Split(']').Last());
                                    if (data.Contains("%ARMORSET%"))
                                        AppGlobals.currGlobalAdventure.ArmorSet.ArmorName = data.Split(']').Last();
                                    if (data.Contains("%AUTHOR%"))
                                        AppGlobals.currGlobalAdventure.Author = data.Split(']').Last();
                                    if (data.Contains("%CANPLAYEREDIT%"))
                                        AppGlobals.currGlobalAdventure.CanPlayerEdit = Convert.ToBoolean(data.Split(']').Last());
                                    if (data.Contains("%CHARACTERNAME%"))
                                        AppGlobals.currGlobalAdventure.CharacterName = data.Split(']').Last();
                                    if (data.Contains("%CHARACTERTITLE%"))
                                        AppGlobals.currGlobalAdventure.CharacterTitle = data.Split(']').Last();
                                    if (data.Contains("%GENRE%"))
                                        AppGlobals.currGlobalAdventure.Genre = data.Split(']').Last();
                                    if (data.Contains("%HEALTH%"))
                                        AppGlobals.currGlobalAdventure.Health = Convert.ToInt32(data.Split(']').Last());
                                    if (data.Contains("%LUCK%"))
                                        AppGlobals.currGlobalAdventure.Luck = Convert.ToInt32(data.Split(']').Last());
                                    if (data.Contains("%MAGIC%"))
                                        AppGlobals.currGlobalAdventure.Magic = Convert.ToInt32(data.Split(']').Last());
                                    if (data.Contains("%MELEEWEAPON%"))
                                        AppGlobals.currGlobalAdventure.MeleeWeapon.WeaponName = data.Split(']').Last();
                                    if (data.Contains("%RANGEDWEAPON%"))
                                        AppGlobals.currGlobalAdventure.RangedWeapon.WeaponName = data.Split(']').Last();
                                    if (data.Contains("%RPGENABLED%"))
                                        AppGlobals.currGlobalAdventure.RPGEnabled = Convert.ToBoolean(data.Split(']').Last());
                                    if (data.Contains("%SPEED%"))
                                        AppGlobals.currGlobalAdventure.Speed = Convert.ToInt32(data.Split(']').Last());
                                    if (data.Contains("%SUMMARY%"))
                                        AppGlobals.currGlobalAdventure.Summary = data.Split(']').Last();
                                    if (data.Contains("%THEME%"))
                                        AppGlobals.currGlobalAdventure.Theme = data.Split(']').Last();
                                    if (data.Contains("%TITLE%"))
                                        AppGlobals.currGlobalAdventure.Title = data.Split(']').Last();
                                }
                            }
                        }
                    }
                    catch (SerializationException err)
                    {
                        exHand.LogException(err, "LoadPage-SelectSave");
                    }
                    finally
                    {
                        fs.Close();
                    }
                }

                StoryGeneratorStageOne stageOne = new StoryGeneratorStageOne(AppGlobals.currGlobalAdventure);
                this.NavigationService.Navigate(stageOne);
            }
            catch (Exception err)
            {
                exHand.LogException(err, "StoryGeneratorActionPage-SelectAdventure");
            }
        }
 private void StartNewAdventure()
 {
     try
     {
         Adventure newAdv = new Adventure();
         StoryGeneratorStageOne generatorPageStageOne = new StoryGeneratorStageOne(newAdv);
         this.NavigationService.Navigate(generatorPageStageOne);
     }
     catch (Exception err)
     {
         exHand.LogException(err, "StoryGeneratorActionPage-StartNewAdventure");
     }
 }