public static void AddtlCultures(CharacterCreation characterCreation)
        {
            List <string> gamecultures = new List <string>()
            {
                "sturgia", "aserai", "vlandia", "battania", "khuzait", "empire"
            };
            CharacterCreationMenu     characterCreationMenu     = new CharacterCreationMenu(new TextObject("{=CS1eA0WW}Mod Cultures", null), new TextObject("{=5g3T5AyE}Additional Cultures From Mods", null), new CharacterCreationOnInit(AddtlCulturesOnInit), CharacterCreationMenu.MenuTypes.MultipleChoice);
            CharacterCreationCategory characterCreationCategory = characterCreationMenu.AddMenuCategory(null);
            List <CultureObject>      AddtlCulturesList         = new List <CultureObject>();

            foreach (CultureObject cultureObject in MBObjectManager.Instance.GetObjectTypeList <CultureObject>())
            {
                if (cultureObject.IsMainCulture)
                {
                    if (!gamecultures.Contains(cultureObject.StringId))
                    {
                        characterCreationCategory.AddCategoryOption(cultureObject.Name, new List <SkillObject> {
                            DefaultSkills.Roguery
                        }, 0, 0, 0, 0, null, new CharacterCreationOnSelect(CSAddtCultureOnConsequence), new CharacterCreationApplyFinalEffects(CSDoNothingOnApply), cultureObject.EncyclopediaText, null, 0, 0, 0);
                        AddtlCulturesList.Add(cultureObject);
                    }
                }
            }
            characterCreationCategory.AddCategoryOption(new TextObject("{=CS13HolsH}None"), new List <SkillObject> {
                DefaultSkills.Roguery
            }, 0, 0, 0, 0, null, new CharacterCreationOnSelect(CSAddtDonothingOnConsequence), new CharacterCreationApplyFinalEffects(CSDoNothingOnApply), new TextObject("{=CS14HolsH}Will use original selection"), null, 0, 0, 0);
            characterCreation.AddNewMenu(characterCreationMenu);
            CSCharCreationOption.AddtlCulturesList = AddtlCulturesList;
        }
        public static void AddGameOption(CharacterCreation characterCreation)
        {
            //Adding this menu to choose start option type to leave story options story only
            CharacterCreationMenu characterCreationMenu = new CharacterCreationMenu(new TextObject("{=peNBA0WW}Quest Start Options", null), new TextObject("{=1g3T5AyE}How do you want to handle your Quests", null), new CharacterCreationOnInit(GameOptionOnInit), CharacterCreationMenu.MenuTypes.MultipleChoice);
            //Free Play add this
            CharacterCreationCategory characterCreationCategory = characterCreationMenu.AddMenuCategory(new CharacterCreationOnCondition(FreePlayLoadedOnCondition));

            //characterCreationCategory.AddCategoryOption(new TextObject(("{=5vCHolsH} Tutorial Skip (Default Quests)"), null), new List<SkillObject> { DefaultSkills.Roguery }, 0, 0, 0, 0, null, new CharacterCreationOnSelect(FPDefaultOnConsequence), new CharacterCreationApplyFinalEffects(CSDoNothingOnApply), new TextObject("{=CvfRsafv} Default start of the game just without Tutorial", null), null, 0, 0, 0);
            //characterCreationCategory.AddCategoryOption(new TextObject(("{=5vCHolsH} Neretzes's Folly (Skips First Quest)"), null), new List<SkillObject> { DefaultSkills.Roguery }, 0, 0, 0, 0, null, new CharacterCreationOnSelect(FPSkipOnConsequence), new CharacterCreationApplyFinalEffects(CSDoNothingOnApply), new TextObject("{=CvfRsafv} First Non Quest Noble you talk to completes the quest.", null), null, 0, 0, 0);
            characterCreationCategory.AddCategoryOption(new TextObject(("{=1vCHolsH} Sandbox Start *Just Let Me Play*"), null), new List <SkillObject> {
                DefaultSkills.Roguery
            }, 0, 0, 0, 0, null, new CharacterCreationOnSelect(FPSandBoxOnConsequence), new CharacterCreationApplyFinalEffects(CSDoNothingOnApply), new TextObject("{=CS11g3T5AyE} No Story quests but still able to create New Kingdom", null), null, 0, 0, 0);
            //No Free Play Load this
            CharacterCreationCategory characterCreationCategory2 = characterCreationMenu.AddMenuCategory(new CharacterCreationOnCondition(NotFreePlayLoadedOnCondition));

            characterCreationCategory2.AddCategoryOption(new TextObject(("{=5vCHolsH} Tutorial Skip (Default Quests)"), null), new List <SkillObject> {
                DefaultSkills.Roguery
            }, 0, 0, 0, 0, null, new CharacterCreationOnSelect(DefaultOnConsequence), new CharacterCreationApplyFinalEffects(CSDoNothingOnApply), new TextObject("{=CS12g3T5AyE} Default start of the game just without Tutorial", null), null, 0, 0, 0);
            characterCreationCategory2.AddCategoryOption(new TextObject(("{=2vCHolsH} Neretzes's Folly Skip (Skips First Quest)"), null), new List <SkillObject> {
                DefaultSkills.Roguery
            }, 0, 0, 0, 0, null, new CharacterCreationOnSelect(SkipOnConsequence), new CharacterCreationApplyFinalEffects(CSDoNothingOnApply), new TextObject("{=CS13g3T5AyE} First Non Quest Noble you talk to completes the quest.", null), null, 0, 0, 0);
            characterCreationCategory2.AddCategoryOption(new TextObject(("{=3vCHolsH} Sandbox"), null), new List <SkillObject> {
                DefaultSkills.Roguery
            }, 0, 0, 0, 0, null, new CharacterCreationOnSelect(SandBoxOnConsequence), new CharacterCreationApplyFinalEffects(CSDoNothingOnApply), new TextObject("{=CS14g3T5AyE} No Quests, now with kingdoms thanks to ability to create your own from base game", null), null, 0, 0, 0);
            characterCreation.AddNewMenu(characterCreationMenu);
        }
        public static void AddStartLocation(CharacterCreation characterCreation)
        {
            //Default option CSDefault
            //CSCharCreationOption csOptions;
            CharacterCreationMenu     characterCreationMenu     = new CharacterCreationMenu(new TextObject("{=2eNBA0WW}Starting Location", null), new TextObject("{=2g3T5AyE}Beginning your new adventure", null), new CharacterCreationOnInit(LocationOnInit), CharacterCreationMenu.MenuTypes.MultipleChoice);
            CharacterCreationCategory characterCreationCategory = characterCreationMenu.AddMenuCategory(null);

            characterCreationCategory.AddCategoryOption(new TextObject(("{=20CHolsH} At your castle"), null), new List <SkillObject> {
                DefaultSkills.Roguery
            }, 0, 0, 0, 0, new CharacterCreationOnCondition(AtCastleOnCondition), new CharacterCreationOnSelect(AtCastleOnConsequnce), new CharacterCreationApplyFinalEffects(CSDoNothingOnApply), new TextObject("{=CS15g3T5AyE} At your newly aquired castle", null), null, 0, 0, 0);

            characterCreationCategory.AddCategoryOption(new TextObject(("{=21CHolsH} Escaping from your captor"), null), new List <SkillObject> {
                DefaultSkills.Roguery
            }, 0, 0, 0, 0, new CharacterCreationOnCondition(EscapingOnCondition), new CharacterCreationOnSelect(EscapingOnConsequnce), new CharacterCreationApplyFinalEffects(CSDoNothingOnApply), new TextObject("{=CS16g3T5AyE} Having just escaped", null), null, 0, 0, 0);

            characterCreationCategory.AddCategoryOption(new TextObject(("{=18CHolsH} Near your home in the city where your journey began"), null), new List <SkillObject> {
                DefaultSkills.Roguery
            }, 0, 0, 0, 0, null, new CharacterCreationOnSelect(HomeOnConsequnce), new CharacterCreationApplyFinalEffects(HomeOnAction), new TextObject("{=CS17g3T5AyE} Back to where you started", null), null, 0, 0, 0);



            characterCreationCategory.AddCategoryOption(new TextObject("{=6vCHolsH} In a strange new city (Random).", null), new List <SkillObject> {
                DefaultSkills.Roguery
            }, 0, 0, 0, 0, null, new CharacterCreationOnSelect(RandStartOnConsequnce), new CharacterCreationApplyFinalEffects(CSDoNothingOnApply), new TextObject("{=CS18g3T5AyE} Travelling wide and far you arrive at an unknown city", null), null, 0, 0, 0);

            characterCreationCategory.AddCategoryOption(new TextObject("{=7vCHolsH} In a caravan to the Aserai city of Qasira.", null), new List <SkillObject> {
                DefaultSkills.Roguery
            }, 0, 0, 0, 0, null, new CharacterCreationOnSelect(QasariOnConsequnce), new CharacterCreationApplyFinalEffects(CSDoNothingOnApply), new TextObject("{=CS19g3T5AyE} You leave the caravan right at the gates", null), null, 0, 0, 0);

            characterCreationCategory.AddCategoryOption(new TextObject("{=8vCHolsH} In a caravan to the Battania city of Dunglanys.", null), new List <SkillObject> {
                DefaultSkills.Roguery
            }, 0, 0, 0, 0, null, new CharacterCreationOnSelect(DunglanysOnConsequnce), new CharacterCreationApplyFinalEffects(CSDoNothingOnApply), new TextObject("{=CS20g3T5AyE} You leave the caravan right at the gates", null), null, 0, 0, 0);

            characterCreationCategory.AddCategoryOption(new TextObject("{=9vCHolsH} On a ship to the Empire city of Zeonica.", null), new List <SkillObject> {
                DefaultSkills.Roguery
            }, 0, 0, 0, 0, null, new CharacterCreationOnSelect(ZeonicaOnConsequnce), new CharacterCreationApplyFinalEffects(CSDoNothingOnApply), new TextObject("{=CS21g3T5AyE} You leave the ship and arrive right at the games", null), null, 0, 0, 0);

            characterCreationCategory.AddCategoryOption(new TextObject("{=0vCHolsH} In a caravan to the Sturgia city of Balgard.", null), new List <SkillObject> {
                DefaultSkills.Roguery
            }, 0, 0, 0, 0, null, new CharacterCreationOnSelect(BalgardOnConsequnce), new CharacterCreationApplyFinalEffects(CSDoNothingOnApply), new TextObject("{=CS22g3T5AyE}  You leave the caravan right at the gates", null), null, 0, 0, 0);

            characterCreationCategory.AddCategoryOption(new TextObject("{=4vCHolsH} In a caravan to the Khuzait city of Ortongard.", null), new List <SkillObject> {
                DefaultSkills.Roguery
            }, 0, 0, 0, 0, null, new CharacterCreationOnSelect(OrtongardOnConsequnce), new CharacterCreationApplyFinalEffects(CSDoNothingOnApply), new TextObject("{=CS23g3T5AyE}  You leave the caravan right at the gates", null), null, 0, 0, 0);

            characterCreationCategory.AddCategoryOption(new TextObject("{=11CHolsH} In a river boat to the Vlandia city of Pravend.", null), new List <SkillObject> {
                DefaultSkills.Roguery
            }, 0, 0, 0, 0, null, new CharacterCreationOnSelect(PravendOnConsequnce), new CharacterCreationApplyFinalEffects(CSDoNothingOnApply), new TextObject("{=CS24g3T5AyE} You arrive right at the gates", null), null, 0, 0, 0);


            characterCreation.AddNewMenu(characterCreationMenu);
        }
Example #4
0
        public static void AddStartOption(CharacterCreation characterCreation)
        {
            //Default option CSDefault
            CSCharCreationOption      csOptions;
            CharacterCreationMenu     characterCreationMenu     = new CharacterCreationMenu(new TextObject("{=peNBA0WW}Story Background", null), new TextObject("{=jg3T5AyE}Like many families in Calradia, your life was upended by war. Your home was ravaged by the passage of army after army. Eventually, you sold your property and set off .....", null), new CharacterCreationOnInit(BranchsOnInit), CharacterCreationMenu.MenuTypes.MultipleChoice);
            CharacterCreationCategory characterCreationCategory = characterCreationMenu.AddMenuCategory(null);

            characterCreationCategory.AddCategoryOption(new TextObject("{=5vCHolsH}with your family.(Default Start)", null), new List <SkillObject> {
                DefaultSkills.Roguery
            }, 0, 0, 0, 0, null, new CharacterCreationOnSelect(CSDefaultOnConsequence), new CharacterCreationApplyFinalEffects(CSDefaultOnApply), new TextObject("{=CvfRsafv} With your Father, Mother, Brother and your two younger siblings to a new town you'd heard was safer. But you did not make it", null), null, 0, 0, 0);
            //Skip first quest option CSHistory
            characterCreationCategory.AddCategoryOption(new TextObject("{=5vCHolsH} by yourself and stumbled upon a piece of a strange banner.", null), new List <SkillObject> {
                DefaultSkills.Roguery
            }, 0, 0, 0, 0, null, new CharacterCreationOnSelect(CSHistoryOnConsequence), new CharacterCreationApplyFinalEffects(CSHistoryOnApply), new TextObject("{=CvfRsafv} While investigating it you came across a knowledgable historian who identified it for you for small fee, informing you of the rich history of the Neretzes's Folly. What little he did not know, speaking with any noble would fill in the gaps.", null), null, 0, 0, -50);
            characterCreation.AddNewMenu(characterCreationMenu);
        }
    { private static bool Prefix(CharacterCreation characterCreation)
      {
          TextObject backstory;

          if (CSCharCreationOption.CSWithFamily)
          {
              backstory = new TextObject("{=jg3T5AyE} Along the way, the inn at which you were staying was attacked by raiders. Your parents were slain and your two youngest siblings seized, but you and your brother survived because...", null);
          }
          else
          {
              backstory = new TextObject("{=jg3T5AyE} During your journies you were ambushed by raiders you survived because...", null);
          }
          MBTextManager.SetTextVariable("EXP_VALUE", 10, false);
          CharacterCreationMenu characterCreationMenu = new CharacterCreationMenu(new TextObject("{=peNBA0WW}Story Background", null), backstory, new CharacterCreationOnInit(CSEscapePatch.EscapeOnInit), CharacterCreationMenu.MenuTypes.MultipleChoice);

          CharacterCreationCategory characterCreationCategory = characterCreationMenu.AddMenuCategory(null);


          characterCreationCategory.AddCategoryOption(new TextObject("{=6vCHovVH}you subdued a raider.", null), new List <SkillObject>
            {
                DefaultSkills.OneHanded,
                DefaultSkills.Athletics
            }, CharacterAttributesEnum.Vigor, 1, 10, 1, null, new CharacterCreationOnSelect(EscapeSubdueRaiderOnConsequence), new CharacterCreationApplyFinalEffects(EscapeSubdueRaiderOnApply), new TextObject("{=CvBoRaFv}You were able to grab a knife in the confusion of the attack. You stabbed a raider blocking your way.", null), null, 0, 0, 0);
          characterCreationCategory.AddCategoryOption(new TextObject("{=2XhW49TX}you drove them off with arrows.", null), new List <SkillObject>
            {
                DefaultSkills.Bow,
                DefaultSkills.Tactics
            }, CharacterAttributesEnum.Control, 1, 10, 1, null, new CharacterCreationOnSelect(EscapeDrawArrowsOnConsequence), new CharacterCreationApplyFinalEffects(EscapeDrawArrowsOnApply), new TextObject("{=ccf67J3J}You grabbed a bow and sent a few arrows the raiders' way. They took cover, giving you the opportunity to flee.", null), null, 0, 0, 0);
          characterCreationCategory.AddCategoryOption(new TextObject("{=gOI8lKcl}you rode off on a fast horse.", null), new List <SkillObject>
            {
                DefaultSkills.Riding,
                DefaultSkills.Scouting
            }, CharacterAttributesEnum.Endurance, 1, 10, 1, null, new CharacterCreationOnSelect(EscapeFastHorseOnConsequence), new CharacterCreationApplyFinalEffects(EscapeFastHorseOnApply), new TextObject("{=cepWNzEA}Jumping on the two remaining horses in the inn's burning stable, you broke out of the encircling raiders and rode off.", null), null, 0, 0, 0);
          characterCreationCategory.AddCategoryOption(new TextObject("{=EdUppdLZ}you tricked the raiders.", null), new List <SkillObject>
            {
                DefaultSkills.Roguery,
                DefaultSkills.Tactics
            }, CharacterAttributesEnum.Cunning, 1, 10, 1, null, new CharacterCreationOnSelect(EscapeRoadOffWithBrotherOnConsequence), new CharacterCreationApplyFinalEffects(EscapeRoadOffWithBrotherOnApply), new TextObject("{=ZqOvtLBM}In the confusion of the attack you shouted that someone had found treasure in the back room. You then made your way out of the undefended entrance.", null), null, 0, 0, 0);
          characterCreationCategory.AddCategoryOption(new TextObject("{=qhAhPWdp}you organized the travelers to break out.", null), new List <SkillObject>
            {
                DefaultSkills.Leadership,
                DefaultSkills.Charm
            }, CharacterAttributesEnum.Social, 1, 10, 1, null, new CharacterCreationOnSelect(EscapeOrganizeTravellersOnConsequence), new CharacterCreationApplyFinalEffects(EscapeOrganizeTravellersOnApply), new TextObject("{=Lmfi0cYk}You encouraged the few travellers in the inn to break out in a coordinated fashion. Raiders killed or captured most but you were able to escape.", null), null, 0, 0, 0);
          characterCreation.AddNewMenu(characterCreationMenu);

          return(false);
      }
        public static void AddParentsMenu(CharacterCreation characterCreation, StoryModeCharacterCreationContent storyModeCharacterCreation)
        {
            cc = storyModeCharacterCreation;

            CharacterCreationMenu ParentsMenu = new CharacterCreationMenu(new TextObject("{=b4lDDcli}Family"), new TextObject("Your parent was a"), new CharacterCreationOnInit(ParentsOnInit), (CharacterCreationMenu.MenuTypes) 0);

            CharacterCreationCategory ParentsMenuCreationCategory = ParentsMenu.AddMenuCategory();

            List <SkillObject> Skills0 = new List <SkillObject>();

            Skills0.Add(DefaultSkills.Steward);
            Skills0.Add(DefaultSkills.Leadership);
            TextObject text0 = new TextObject("Captain of the Empire");
            CharacterCreationOnCondition       optionCondition0 = new CharacterCreationOnCondition(EmpireCondition);
            CharacterCreationOnSelect          onSelect0        = new CharacterCreationOnSelect(ParentCaptainOnConsequence);
            CharacterCreationApplyFinalEffects onApply0         = new CharacterCreationApplyFinalEffects(NoEffect);
            TextObject descriptionText0 = new TextObject("Your father served his Elector diligently and lived long enough to become a veteran, a rare sight within the Empire. Proudly wearing the scars earned from a life of fighting beastmen, he commanded respect and was known for his martial skill");

            ParentsMenuCreationCategory.AddCategoryOption(text0, Skills0, CharacterAttributesEnum.Vigor, 1, 15, 1, optionCondition0, onSelect0, onApply0, descriptionText0);

            List <SkillObject> Skills1 = new List <SkillObject>();

            Skills1.Add(DefaultSkills.Trade);
            Skills1.Add(DefaultSkills.Charm);
            TextObject text1 = new TextObject("Merchant");
            CharacterCreationOnCondition       optionCondition1 = new CharacterCreationOnCondition(EmpireCondition);
            CharacterCreationOnSelect          onSelect1        = new CharacterCreationOnSelect(ParentMerchantOnConsequence);
            CharacterCreationApplyFinalEffects onApply1         = new CharacterCreationApplyFinalEffects(NoEffect);
            TextObject descriptionText1 = new TextObject("Hailing from a long line of merchants, your family made its wealth peddling the various crafts along the River Stir. Ranald did not look upon your parents with kindness however and they could only just make ends meet.");

            ParentsMenuCreationCategory.AddCategoryOption(text1, Skills1, CharacterAttributesEnum.Social, 1, 15, 1, optionCondition1, onSelect1, onApply1, descriptionText1);

            List <SkillObject> Skills2 = new List <SkillObject>();

            Skills2.Add(DefaultSkills.Engineering);
            Skills2.Add(DefaultSkills.OneHanded);
            TextObject text2 = new TextObject("Imperial Engineer");
            CharacterCreationOnCondition       optionCondition2 = new CharacterCreationOnCondition(EmpireCondition);
            CharacterCreationOnSelect          onSelect2        = new CharacterCreationOnSelect(ParentEngineerOnConsequence);
            CharacterCreationApplyFinalEffects onApply2         = new CharacterCreationApplyFinalEffects(NoEffect);
            TextObject descriptionText2 = new TextObject("Your father was a tinkerer and spoke of little else but his schemes and ideas, the Colleges of Nuln had given him a stable life and your upbringing involved playing with things that perhaps, no child should be touching.");

            ParentsMenuCreationCategory.AddCategoryOption(text2, Skills2, CharacterAttributesEnum.Intelligence, 1, 15, 1, optionCondition2, onSelect2, onApply2, descriptionText2);

            List <SkillObject> Skills3 = new List <SkillObject>();

            Skills3.Add(DefaultSkills.Crafting);
            Skills3.Add(DefaultSkills.TwoHanded);
            TextObject text3 = new TextObject("Blacksmith");
            CharacterCreationOnCondition       optionCondition3 = new CharacterCreationOnCondition(EmpireCondition);
            CharacterCreationOnSelect          onSelect3        = new CharacterCreationOnSelect(ParentBlacksmithOnConsequence);
            CharacterCreationApplyFinalEffects onApply3         = new CharacterCreationApplyFinalEffects(NoEffect);
            TextObject descriptionText3 = new TextObject("The Empire is never short of enemies and as such, could never be short of weapons. Your father crafted blades and armour for State Troops and militia alike, proudly claiming that his blades would \"cut down any beast!\"");

            ParentsMenuCreationCategory.AddCategoryOption(text3, Skills3, CharacterAttributesEnum.Endurance, 1, 15, 1, optionCondition3, onSelect3, onApply3, descriptionText3);

            List <SkillObject> Skills4 = new List <SkillObject>();

            Skills4.Add(DefaultSkills.Scouting);
            Skills4.Add(DefaultSkills.Bow);
            TextObject text4 = new TextObject("Hunter");
            CharacterCreationOnCondition       optionCondition4 = new CharacterCreationOnCondition(EmpireCondition);
            CharacterCreationOnSelect          onSelect4        = new CharacterCreationOnSelect(ParentHunterOnConsequence);
            CharacterCreationApplyFinalEffects onApply4         = new CharacterCreationApplyFinalEffects(NoEffect);
            TextObject descriptionText4 = new TextObject("A simple man, your family was sustained by your fathers trips deep into the forest and his skill with a bow. It was a meagre living but you had a roof over your head and at times food in your belly.");

            ParentsMenuCreationCategory.AddCategoryOption(text4, Skills4, CharacterAttributesEnum.Control, 1, 15, 1, optionCondition4, onSelect4, onApply4, descriptionText4);

            List <SkillObject> Skills5 = new List <SkillObject>();

            Skills5.Add(DefaultSkills.Roguery);
            Skills5.Add(DefaultSkills.Throwing);
            TextObject text5 = new TextObject("Thief");
            CharacterCreationOnCondition       optionCondition5 = new CharacterCreationOnCondition(EmpireCondition);
            CharacterCreationOnSelect          onSelect5        = new CharacterCreationOnSelect(ParentThiefOnConsequence);
            CharacterCreationApplyFinalEffects onApply5         = new CharacterCreationApplyFinalEffects(NoEffect);
            TextObject descriptionText5 = new TextObject("There is no shortage of thieves and brigands in the Empire, your father amongst them. While he would claim that none were ever hurt as he pilfered the houses of wealthy merchants, only he knew the truth to that claim");

            ParentsMenuCreationCategory.AddCategoryOption(text5, Skills5, CharacterAttributesEnum.Cunning, 1, 15, 1, optionCondition5, onSelect5, onApply5, descriptionText5);

            List <SkillObject> Skills6 = new List <SkillObject>();

            Skills6.Add(DefaultSkills.Riding);
            Skills6.Add(DefaultSkills.Polearm);
            TextObject text6 = new TextObject("Vampiric Noble");
            CharacterCreationOnCondition       optionCondition6 = new CharacterCreationOnCondition(VCCondition);
            CharacterCreationOnSelect          onSelect6        = new CharacterCreationOnSelect(ParentVampiricNobleOnConsequence);
            CharacterCreationApplyFinalEffects onApply6         = new CharacterCreationApplyFinalEffects(NoEffect);
            TextObject descriptionText6 = new TextObject("-");

            ParentsMenuCreationCategory.AddCategoryOption(text6, Skills6, CharacterAttributesEnum.Social, 1, 20, 1, optionCondition6, onSelect6, onApply6, descriptionText6);

            List <SkillObject> Skills7 = new List <SkillObject>();

            Skills7.Add(DefaultSkills.OneHanded);
            //necormancy
            TextObject text7 = new TextObject("Weak Necromancer");
            CharacterCreationOnCondition       optionCondition7 = new CharacterCreationOnCondition(VCCondition);
            CharacterCreationOnSelect          onSelect7        = new CharacterCreationOnSelect(ParentNecromancerOnConsequence);
            CharacterCreationApplyFinalEffects onApply7         = new CharacterCreationApplyFinalEffects(NoEffect);
            TextObject descriptionText7 = new TextObject("Little could be said for your fathers sanity, his days were dedicated to dissecting scrolls and performing dark rituals. Obsessed with becoming powerful yet unable to master even the basics, his failures drove him to madness and he wandered deep into the swamps. Vanishing.");

            ParentsMenuCreationCategory.AddCategoryOption(text7, Skills7, CharacterAttributesEnum.Cunning, 1, 15, 1, optionCondition7, onSelect7, onApply7, descriptionText7);

            List <SkillObject> Skills8 = new List <SkillObject>();

            Skills8.Add(DefaultSkills.Trade);
            Skills8.Add(DefaultSkills.Charm);
            TextObject text8 = new TextObject("Stirland Merchant");
            CharacterCreationOnCondition       optionCondition8 = new CharacterCreationOnCondition(VCCondition);
            CharacterCreationOnSelect          onSelect8        = new CharacterCreationOnSelect(ParentStirlandMerchantOnConsequence);
            CharacterCreationApplyFinalEffects onApply8         = new CharacterCreationApplyFinalEffects(NoEffect);
            TextObject descriptionText8 = new TextObject("Very few risk travel into Sylvania, let alone with trade goods in tow. Your family were either incredibly brave, or incredibly desperate, to travel the dark roads plagued with bandits, the undead and worse..");

            ParentsMenuCreationCategory.AddCategoryOption(text8, Skills8, CharacterAttributesEnum.Intelligence, 1, 15, 1, optionCondition8, onSelect8, onApply8, descriptionText8);

            List <SkillObject> Skills9 = new List <SkillObject>();

            Skills9.Add(DefaultSkills.Charm);
            Skills9.Add(DefaultSkills.Steward);
            TextObject text9 = new TextObject("Priest of Morr");
            CharacterCreationOnCondition       optionCondition9 = new CharacterCreationOnCondition(VCCondition);
            CharacterCreationOnSelect          onSelect9        = new CharacterCreationOnSelect(ParentPriestofMorrOnConsequence);
            CharacterCreationApplyFinalEffects onApply9         = new CharacterCreationApplyFinalEffects(NoEffect);
            TextObject descriptionText9 = new TextObject("The dead do not rest easy in Sylvania and the work of Morr is never done, your father was a quiet man whose life was a dedication to death. Maintaining a garden of Morr and performing the necessary rights to ensure the dead would rest, sometimes having to do so more than once.");

            ParentsMenuCreationCategory.AddCategoryOption(text9, Skills9, CharacterAttributesEnum.Social, 1, 15, 1, optionCondition9, onSelect9, onApply9, descriptionText9);

            List <SkillObject> Skills10 = new List <SkillObject>();

            Skills10.Add(DefaultSkills.Scouting);
            Skills10.Add(DefaultSkills.TwoHanded);
            TextObject text10 = new TextObject("Woodsman");
            CharacterCreationOnCondition       optionCondition10 = new CharacterCreationOnCondition(VCCondition);
            CharacterCreationOnSelect          onSelect10        = new CharacterCreationOnSelect(ParentWoodsmanOnConsequence);
            CharacterCreationApplyFinalEffects onApply10         = new CharacterCreationApplyFinalEffects(NoEffect);
            TextObject descriptionText10 = new TextObject("-");

            ParentsMenuCreationCategory.AddCategoryOption(text10, Skills10, CharacterAttributesEnum.Endurance, 1, 15, 1, optionCondition10, onSelect10, onApply10, descriptionText10);

            List <SkillObject> Skills11 = new List <SkillObject>();

            Skills10.Add(DefaultSkills.Throwing);
            Skills10.Add(DefaultSkills.Trade);
            TextObject text11 = new TextObject("Fisherman");
            CharacterCreationOnCondition       optionCondition11 = new CharacterCreationOnCondition(VCCondition);
            CharacterCreationOnSelect          onSelect11        = new CharacterCreationOnSelect(ParentFishermanOnConsequence);
            CharacterCreationApplyFinalEffects onApply11         = new CharacterCreationApplyFinalEffects(NoEffect);
            TextObject descriptionText11 = new TextObject("-");

            ParentsMenuCreationCategory.AddCategoryOption(text11, Skills11, CharacterAttributesEnum.Endurance, 1, 15, 1, optionCondition11, onSelect11, onApply11, descriptionText11);

            characterCreation.AddNewMenu(ParentsMenu);
        }
        public static void AddStartOption(CharacterCreation characterCreation)
        {
            //Default option CSDefault

            CharacterCreationMenu characterCreationMenu = new CharacterCreationMenu(new TextObject("{=1eNBA0WW}Story Background", null), new TextObject("{=5g3T5AyE}Who are you in Caldaria...", null), new CharacterCreationOnInit(BranchsOnInit), CharacterCreationMenu.MenuTypes.MultipleChoice);

            CharacterCreationCategory characterCreationCategory = characterCreationMenu.AddMenuCategory(null);

            characterCreationCategory.AddCategoryOption(new TextObject("{=12CHolsH}A commoner (Default Start)", null), new List <SkillObject> {
                DefaultSkills.Charm
            }, 0, 0, 0, 0, null, new CharacterCreationOnSelect(CSDefaultOnConsequence), new CharacterCreationApplyFinalEffects(CSDoNothingOnApply), new TextObject("{=CS3g3T5AyE} Setting off with your Father, Mother, Brother and your two younger siblings to a new town you'd heard was safer. But you did not make it", null), null, 0, 0, 0);

            //Merchant Start
            characterCreationCategory.AddCategoryOption(new TextObject("{=13CHolsH}A budding caravanner", null), new List <SkillObject> {
                DefaultSkills.Trade
            }, 0, 1, 10, 0, null, new CharacterCreationOnSelect(MerchantOnConsequence), new CharacterCreationApplyFinalEffects(CSDoNothingOnApply), new TextObject("{=CS4g3T5AyE}With what savings you could muster you purchased some mules and mercenaries", null), null, 0, 0, 0);

            //Exiled Start
            characterCreationCategory.AddCategoryOption(new TextObject("{=14CHolsH} A noble of " + CSCharCreationOption.SelectedCulture.StringId + " in exile", null), new List <SkillObject> {
                DefaultSkills.Leadership
            }, 0, 1, 10, 0, null, new CharacterCreationOnSelect(CSExileOnConsequence), new CharacterCreationApplyFinalEffects(CSDoNothingOnApply), new TextObject("{=CS5g3T5AyE}Forced into exile after your parents were executed for suspected treason. With only your family's bodyguard you set off. Should you return you'd be viewed as a criminal.", null), null, 0, 150, 0);

            //Mercanary start
            characterCreationCategory.AddCategoryOption(new TextObject("{=15CHolsH}In a failing mercenary company", null), new List <SkillObject> {
                DefaultSkills.Tactics
            }, 0, 1, 10, 0, null, new CharacterCreationOnSelect(MercenaryOnConsequence), new CharacterCreationApplyFinalEffects(CSDoNothingOnApply), new TextObject("{=CS6g3T5AyE}With men deserting over lack of wages, your company leader was found, and you decided to take you chance and lead", null), null, 0, 50, 0);

            //Looter start
            characterCreationCategory.AddCategoryOption(new TextObject("{=16CHolsH}A looter lowlife.", null), new List <SkillObject> {
                DefaultSkills.Roguery
            }, 0, 1, 10, 0, null, new CharacterCreationOnSelect(CSLooterOnConsequence), new CharacterCreationApplyFinalEffects(CSDoNothingOnApply), new TextObject("{=CS7g3T5AyE}Left impoverished from war, you found a group of like minded ruffians who desperate to get by", null), null, 0, 0, 0);

            //Vassal Start
            characterCreationCategory.AddCategoryOption(new TextObject("{=17CHolsH} A new vassal of " + CSCharCreationOption.SelectedCulture.StringId, null), new List <SkillObject> {
                DefaultSkills.Steward
            }, 0, 1, 10, 0, null, new CharacterCreationOnSelect(CSVassalOnConsequence), new CharacterCreationApplyFinalEffects(CSDoNothingOnApply), new TextObject("{=CS8g3T5AyE}A young noble who came into an arrangement with the king for a chance at land", null), null, 0, 150, 0);


            //Kingdom Start
            TextObject shortdesc = new TextObject("", null);

            TextObject fulldesc = new TextObject("{=CSd1g3T5AyE}With the support of companions you have gathered an army. With limited funds and food you decided it's time for action.", null);

            switch (CSCharCreationOption.SelectedCulture.StringId)
            {
            case "sturgia":
                shortdesc = new TextObject("{=f6CSm3sP}Leading a Viking Expedition", null);

                break;

            case "aserai":
                shortdesc = new TextObject("{=f5CSm3sP}Leading a Jihad", null);
                break;

            case "vlandia":
                shortdesc = new TextObject("{=f4CSm3sP}Leading a Crusade", null);
                break;

            case "battania":
                shortdesc = new TextObject("{=f3CSm3sP}Leading a Raiding Expedition", null);
                break;

            case "khuzait":
                shortdesc = new TextObject("{=f1CSm3sP}Becoming a Great Khan", null);
                break;

            case "empire":
                shortdesc = new TextObject("{=f2CSm3sP}Becoming a new Empire State", null);
                break;

            default:
                shortdesc = new TextObject("{=f2CSm3sP}Leading part of " + CSCharCreationOption.SelectedCulture.StringId, null);
                break;
            }

            characterCreationCategory.AddCategoryOption(shortdesc, new List <SkillObject> {
                DefaultSkills.Leadership, DefaultSkills.Steward
            }, CharacterAttributesEnum.Social, 1, 15, 1, null, new CharacterCreationOnSelect(CSKingdomOnConsequence), new CharacterCreationApplyFinalEffects(CSDoNothingOnApply), fulldesc, null, 0, 351, 0);

            //Holding Start
            TextObject Holdshortdesc = new TextObject("{=f10CSm3sP}You acquired a castle", null);

            characterCreationCategory.AddCategoryOption(Holdshortdesc, new List <SkillObject> {
                DefaultSkills.Leadership, DefaultSkills.Steward
            }, CharacterAttributesEnum.Social, 1, 15, 1, null, new CharacterCreationOnSelect(CSHoldingOnConsequence), new CharacterCreationApplyFinalEffects(CSDoNothingOnApply), new TextObject("{=CS8g3T5AyE}You acquired a castle through your own means and declared yourself a kingdom for better or worse.", null), null, 0, 351, 0);

            //Vassal castle start
            characterCreationCategory.AddCategoryOption(new TextObject("{=17CHolsH} A landed vassal of " + CSCharCreationOption.SelectedCulture.StringId, null), new List <SkillObject> {
                DefaultSkills.Steward
            }, 0, 1, 10, 0, null, new CharacterCreationOnSelect(CSCastleVassalOnConsequence), new CharacterCreationApplyFinalEffects(CSDoNothingOnApply), new TextObject("{=CS9g3T5AyE}A young noble who came into an arrangement with the king for land", null), null, 0, 150, 0);

            //Escape Prisoner start
            characterCreationCategory.AddCategoryOption(new TextObject("{=18CHolsH} An escaped prsioner of a lord of " + CSCharCreationOption.SelectedCulture.StringId, null), new List <SkillObject> {
                DefaultSkills.Roguery
            }, 0, 1, 10, 0, null, new CharacterCreationOnSelect(CSEscapeOnConsequence), new CharacterCreationApplyFinalEffects(CSDoNothingOnApply), new TextObject("{=CS10g3T5AyE}A poor prisoner of petty crimes who managed to break his shackles with a rock and fled", null), null, 0, 0, 0);

            characterCreation.AddNewMenu(characterCreationMenu);
        }