string generate_old(MainCharacter mc, Relic rel, GodReq god)
    {
        string s = "Realizing the gravity of " + mc.his + " doom, the " + mc.adjective + " " + mc.occupation + " abandoned the " + rel.item + ". ";

        s += mc.name + " " + god.prayed + " to whatever " + god.adj + " " + god.gods + " which " + rel.cursed + " " + rel.owner + "'s ";
        s += rel.item + ". The " + mc.occupation + " left behind the " + rel.item + ", and returned home, " + "where " + mc.he + " died of old age, many years later.";

        return(s);
    }
    StorySet make_story()
    {
        StorySet story = new StorySet();

        story.title = make_title();
        // These are the various options for all of the things.
        string[] adjectives = { "pubescent",   "omnivorous",      "vegetarian",   "aloof",     "forgetful", "absurd",
                                "carnivorous", "powerful",        "frightening",  "religious", "sweaty",    "demonic","first",
                                "second",      "10,000 year old", "fourty third", "prime",     "hungry" };

        string[] occupations = { "explorer",   "author", "king", "general", "inventor", "explorer", "professor", "president", "plantation owner",
                                 "researcher", "computer" };

        // options for the names of the main character.
        string[] names_one        = { "Schwifty Von Amrack", "his", "he", "him" };
        string[] names_two        = { "Indiana Jones", "his", "he", "him" };
        string[] names_thr        = { "Amelia Earhart", "her", "she", "her" };
        string[] names_fou        = { "Ada Lovelace", "her", "she", "her" };
        string[] names_fiv        = { "Arsene Cagliostro", "his", "he", "him" };
        string[] names_six        = { "Michelle Obama", "her", "she", "her" };
        string[] names_sev        = { "Matthew Hibbs", "his", "he", "him" };
        string[] names_eig        = { "Hilary Clinton", "her", "she", "her" };
        string[] names_nin        = { "Jesus Christ", "his", "he", "him" };
        string[] names_ten        = { "Kazi Azrul", "her", "she", "her" };
        string[] names_non_object = { "HAL 9000", "its", "it", "it" };

        string[][] names = { names_one, names_two, names_thr, names_fou, names_fiv, names_six,
                             names_sev, names_eig, names_nin, names_ten, names_non_object };
        string[]   items  = { "medallion", "staff", "statute", "ark", "scepter", "sword", "necklace" };
        string[]   gods   = { "Amadeus", "Amaduso", "God", "Shiba", "Shiba Uno", "Pan", "Balphegor", "Hitler" };
        string[]   curses = { "burned alive", "crippled",  "mummified",
                              "stoned",         "calcified", "poked",    "put to sleep","drowned",  "befuddled", "staked", "killed", "abandoned",
                              "forgotten",      "cleaned",   "absorbed", "swallowed",  "pacified", "breast fed by a huge angry god" };
        string[]   minions   = { "minions", "priests", "servants", "zombies", "secret police", "foot-soliders", "altar boys", "vampires", "nazis" };
        string[]   values    = { "millions", "thousands", "tens", "billions", "trillions", "oodles", "piles", "baker's dozens" };
        string[]   locations = { "great desert of mushu",                 "terrible islands of the Skitz",           "magnificent puddles of Elusis",
                                 "temple of Apollo",                        "grave of Jesus",                          "grave of Isaac Newton",                 "one bar in Wyoming with good liquor",
                                 "grave of " + get_random(gods) as string,  "grave of " + get_random(gods) as string,  "grave of " + get_random(gods) as string,
                                 "temple of " + get_random(gods) as string, "temple of " + get_random(gods) as string, "statute to " + get_random(gods) as string };
        string[]   servants  = { "man-bear servant", "shark-headed assistant", "long-nosed manservant", "large headed maid", "submarine the Constitution", "demon" };
        string[]   god_types = { "gods", "devils", "eldtrich horrors" };

        string[] hobbies = { "chess session", "running session", "yoga class", "me time", "underwater basket weaving session" };

        string[] deaths = { "burned alive",                                              "fed to wild dogs",                                            "buried alive in hot, acidic sand", "eaten", "curb stomped", "decapitated", "drowned",
                            "beaten to the music of Mozart",                             "sacrificed to the great god " + get_random(gods) as string,
                            "sacrificed to the great god " + get_random(gods) as string, "slaughtered for the great god " + get_random(gods) as string,
                            "murder for the great god " + get_random(gods) as string,    "mummified for the great god " + get_random(gods) as string,
                            "fed to some random " + get_random(minions) as string,       "beaten by some random " + get_random(minions) as string,
                            "eaten by some random " + get_random(minions) as string };
        string[] abandoned = { "on a deserted island",                    "inside a large volcano",                  "on top a huge mountain", "inside of a pyramid", "in the middle of the desert",
                               "near " + get_random(locations) as string, "near " + get_random(locations) as string, "near " + get_random(locations) as string };
        // Thus ends the options
        string[]      story_pieces = new string[4];
        string[][]    questions    = new string[5][];
        MainCharacter mc           = build_main_character(adjectives, occupations, names, servants, items, gods, locations, hobbies);
        GodReq        god_req      = build_god_req(adjectives, god_types);
        Relic         rel          = build_relic(adjectives, items, gods, curses, minions, values, locations);

        story.artifact = rel.item;
        story.story_1  = generate_opening(mc, rel);
        // Questions and answers possibilities for the first question.
        Question[] questions_opening = { build_question_and_answers("What adjective would you use to describe " + mc.name + "?",      mc.adjective,  adjectives),
                                         build_question_and_answers("What did " + mc.he + " discover?",                               rel.item,      items),
                                         build_question_and_answers("What adjective would you use to describe the " + rel.item + "?", rel.adjective, adjectives) };
        story.question_1 = get_random(questions_opening) as Question;
        if (get_bool())
        {
            story.story_2 = generate_cursed(mc, rel);
            Question[] questions_cursed = { build_question_and_answers("How was the " + mc.servant + " cursed?",    rel.c3,     curses),
                                            build_question_and_answers("Who was most trusted by " + mc.name + " ?", mc.servant, servants) };
            story.question_2 = get_random(questions_cursed) as Question;
            if (get_bool())
            {
                Question[] questions_old = { build_question_and_answers("What kind of " + god_req.gods + " did " + mc.name + " pray to?", god_req.adj,  adjectives),
                                             build_question_and_answers("What did " + mc.he + " pray to?",                                god_req.gods, god_types), };
                story.question_3 = get_random(questions_old) as Question;
                story.story_3    = generate_old(mc, rel, god_req);
            }
            else
            {
                Question[] questions_horrible = { build_question_and_answers("What killed " + mc.name + "?", rel.minions, minions),
                                                  build_question_and_answers("How did " + mc.name + " die?", rel.cf,      curses) };
                story.question_3 = get_random(questions_horrible) as Question;
                story.story_3    = generate_horrible(mc, rel);
            }
            // NEED TO MAKE QUESTION FOR ABANDONED.
            string     minion = get_random(minions) as string;
            string     god    = get_random(gods) as string;
            Question[] questions_abandoned = { build_question_and_answers("What were the servants of " + god + "?",  minion, minions),
                                               build_question_and_answers("Who is in charge of the " + minion + "?", god,    gods) };
            story.question_4 = get_random(questions_abandoned) as Question;

            story.story_4 = generate_abandoned(mc, rel, minion, god, story.title[1]);
        }
        else
        {
            //
            // Putting him in a hole in the ground should be replaced with something.
            //
            story.story_2 = generate_scorned(mc, rel, "putting him in a hole in the ground");
            Question[] questions_scorned = { build_question_and_answers("What hobby does " + mc.name + " have?",          mc.hobby, hobbies),
                                             build_question_and_answers("How much money does the " + rel.item + " cost?", rel.val,  values) };
            story.question_2 = get_random(questions_scorned) as Question;
            if (get_bool())
            {
                string first  = get_random(deaths) as string;
                string second = get_random(deaths) as string;
                int    i      = 0;
                while (second == first)
                {
                    second = get_random(deaths) as string;
                    i     += 1;
                    if (i > 1000)
                    {
                        break;
                    }
                }
                string third = get_random(deaths) as string;
                i = 0;
                while (third == second || third == first)
                {
                    third = get_random(deaths) as string;
                    i    += 1;
                    if (i > 1000)
                    {
                        break;
                    }
                }
                story.story_3 = generate_killed(mc, rel, first, second, third);
                Question[] questions_killed = { build_question_and_answers("Who was most trusted by " + mc.name + " ?", mc.servant, servants),
                                                build_question_and_answers("What fate did " + mc.name + " suffer?",     third,      deaths),
                                                build_question_and_answers("What fate was suggested first?",            first,      deaths),
                                                build_question_and_answers("What fate was suggested second?",           second,     deaths) };
                story.question_3 = get_random(questions_killed) as Question;
            }
            else
            {
                string loc = get_random(abandoned) as string;
                story.story_3 = generate_stranded(mc, rel, loc);
                Question[] questions_stranded = { build_question_and_answers("Where was " + mc.name + " left behind?", loc, abandoned) };
                story.question_3 = get_random(questions_stranded) as Question;
            }
            story.story_4 = generate_lost(mc, rel, story.title[1]);
            Question[] questions_lost = { build_question_and_answers("Where was the " + rel.item + " lost?",                     rel.location, locations),
                                          build_question_and_answers("Where was the " + rel.item + "of " + rel.owner + " lost?", rel.location, locations) };
            story.question_4 = get_random(questions_lost) as Question;
        }
        return(story);
    }