Exemple #1
0
        //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

        // string sWord3 = QuestItems( true );

        public static string EpicQuestStory(string QuestItem, string alignment)
        {
            string[] vWord1 = new string[] { "I need you to", "I want you to", "I require you to", "I need someone to", "I want someone to", "I require someone to", "We require you to", "We need someone to", "We want someone to", "We require someone to" };
            string   sWord1 = vWord1[Utility.RandomMinMax(0, (vWord1.Length - 1))];

            string[] vWord2 = new string[] { "go find", "seek out", "search for", "bring me", "find me", "get", "find", "seek", "discover", "locate", "unearth", "look for" };
            string   sWord2 = vWord2[Utility.RandomMinMax(0, (vWord2.Length - 1))];

            string sWord3 = QuestItem;

            string sWord4 = RandomThings.GetRandomName();

            if (Utility.RandomMinMax(1, 4) == 1)
            {
                sWord4 = RandomThings.GetRandomSociety();
            }

            string sWord5 = RandomThings.GetRandomJobTitle(0);

            string sWord6 = "have it destroyed";
            int    nWord6 = Utility.RandomMinMax(1, 16);

            switch (nWord6)
            {
            case 1: sWord6 = "have it destroyed";                   break;

            case 2: sWord6 = "give it to " + sWord4;                break;

            case 3: sWord6 = "give it to " + sWord5;                break;

            case 4: sWord6 = "return it to " + sWord4;              break;

            case 5: sWord6 = "return it to " + sWord5;              break;

            case 6: sWord6 = "hide it";                                     break;

            case 7: sWord6 = "destroy it";                                  break;

            case 8: sWord6 = "keep it safe";                                break;

            case 9: sWord6 = "keep it from " + sWord4;              break;

            case 10: sWord6 = "hide it from " + sWord4;     break;

            case 11: sWord6 = "keep it from " + sWord5;     break;

            case 12: sWord6 = "hide it from " + sWord5;     break;

            case 13: sWord6 = "use it";                                     break;

            case 14: sWord6 = "make use of it";                     break;

            case 15: sWord6 = "fufill the prophecy";                break;

            case 16: sWord6 = "stop the prophecy";                  break;
            }

            string[] vWord7 = new string[] { "finds", "gets", "discovers", "locates", "unearths", "claims", "steals", "acquires", "destroys", "hides", "takes" };
            string   sWord7 = vWord7[Utility.RandomMinMax(0, (vWord7.Length - 1))] + " ";

            string[] vWord8 = new string[] { "eliminate", "slay", "lay waste to", "crush", "destroy" };
            string   sWord8 = vWord8[Utility.RandomMinMax(0, (vWord8.Length - 1))] + " ";

            string[] vWord9 = new string[] { "knights", "priests", "villagers", "heroes", "champions", "paladins", "healers", "gods", "light", "children", "adventurers", "defenders", "guards" };
            string   sWord9 = vWord9[Utility.RandomMinMax(0, (vWord9.Length - 1))] + " ";

            string[] vWord10 = new string[] { "our enemies", "our foes", "the " + sWord9 + "", "my enemies", "my foes", "those that oppose me" };
            string   sWord10 = vWord10[Utility.RandomMinMax(0, (vWord10.Length - 1))] + " ";

            string sWord11 = "so I may " + sWord6;

            if (alignment == "evil" && Utility.RandomMinMax(1, 3) == 1)
            {
                sWord6 = "use it to " + sWord8 + " " + sWord10;
            }
            int nWord11 = Utility.RandomMinMax(1, 20);

            switch (nWord11)
            {
            case 1: sWord11 = "so I may " + sWord6;                                                                 break;

            case 2: sWord11 = "so I can " + sWord6;                                                                 break;

            case 3: sWord11 = "so we may " + sWord6;                                                                break;

            case 4: sWord11 = "so we can " + sWord6;                                                                break;

            case 5: sWord11 = "so I could " + sWord6;                                                               break;

            case 6: sWord11 = "so we could " + sWord6;                                                              break;

            case 7: sWord11 = "so I might " + sWord6;                                                               break;

            case 8: sWord11 = "so we might " + sWord6;                                                              break;

            case 9: sWord11 = "for me so I can " + sWord6;                                                  break;

            case 10: sWord11 = "for us so we can " + sWord6;                                                break;

            case 11: sWord11 = "for me so I may " + sWord6;                                                 break;

            case 12: sWord11 = "for us so we may " + sWord6;                                                break;

            case 13: sWord11 = "for me so I could " + sWord6;                                               break;

            case 14: sWord11 = "for us so we could " + sWord6;                                              break;

            case 15: sWord11 = "before " + sWord4 + " " + sWord7 + " it";                   break;

            case 16: sWord11 = "before " + sWord5 + " " + sWord7 + " it";           break;

            case 17: sWord11 = "before " + sWord4 + " " + sWord7 + " it";                   break;

            case 18: sWord11 = "before " + sWord5 + " " + sWord7 + " it";           break;

            case 19: sWord11 = "before " + sWord4 + " " + sWord7 + " it";                   break;

            case 20: sWord11 = "before " + sWord5 + " " + sWord7 + " it";           break;
            }

            string Quest = sWord1 + " " + sWord2 + " " + sWord3 + " " + sWord11;

            string MoreSentence = "";

            if (Utility.RandomMinMax(1, 3) == 1 && nWord11 < 15)                 // ADD MORE TO THE SENTENCE
            {
                string sWord12 = "before"; if (Utility.RandomMinMax(1, 3) == 1)
                {
                    sWord12 = "after";
                }

                if (Utility.RandomMinMax(1, 2) == 1)                     // EVENT
                {
                    string sWord13 = "starts";
                    int    nWord13 = Utility.RandomMinMax(1, 3);
                    if (alignment == "evil")
                    {
                        nWord13 = Utility.RandomMinMax(4, 6);
                    }
                    switch (nWord13)
                    {
                    case 1: sWord13 = "starts";                             break;

                    case 2: sWord13 = "begins";                             break;

                    case 3: sWord13 = "cannot be stopped";  break;

                    case 4: sWord13 = "can be stopped";             break;

                    case 5: sWord13 = "is stopped";                 break;

                    case 6: sWord13 = "ends";                               break;
                    }

                    string sWord14 = "next season";
                    int    nWord14 = Utility.RandomMinMax(1, 19);
                    switch (nWord14)
                    {
                    case 1: sWord14 = "next season";                                                                                                                        break;

                    case 2: sWord14 = "next phase";                                                                                                                         break;

                    case 3: sWord14 = "next eclipse";                                                                                                                       break;

                    case 4: sWord14 = "constellation of the " + RandomThings.GetRandomThing(0) + " appears";        break;

                    case 5: sWord14 = "stars align into the " + RandomThings.GetRandomThing(0);                                     break;

                    case 6: sWord14 = Server.Misc.RandomThings.GetRandomColorName(0) + " Moon";                                                             break;

                    case 7: sWord14 = "war " + sWord13;                                                                                                                     break;

                    case 8: sWord14 = "famine " + sWord13;                                                                                                          break;

                    case 9: sWord14 = "catastrophe " + sWord13;                                                                                                     break;

                    case 10: sWord14 = "cataclysm " + sWord13;                                                                                                      break;

                    case 11: sWord14 = "apocalypse " + sWord13;                                                                                                     break;

                    case 12: sWord14 = "invasion " + sWord13;                                                                                                       break;

                    case 13: sWord14 = "storm " + sWord13;                                                                                                          break;

                    case 14: sWord14 = "drought " + sWord13;                                                                                                        break;

                    case 15: sWord14 = "flood " + sWord13;                                                                                                          break;

                    case 16: sWord14 = "disease " + sWord13;                                                                                                        break;

                    case 17: sWord14 = "sickness " + sWord13;                                                                                                       break;

                    case 18: sWord14 = "ritual " + sWord13;                                                                                                         break;

                    case 19: sWord14 = "darkness " + sWord13;                                                                                                       break;
                    }

                    MoreSentence = " " + sWord12 + " the " + sWord14;
                }
                else
                {
                    string sWord15 = "king";
                    int    nWord15 = Utility.RandomMinMax(1, 13);
                    if (alignment == "evil")
                    {
                        nWord15 = Utility.RandomMinMax(14, 27);
                    }
                    switch (nWord15)
                    {
                    case 1: sWord15 = "dragon";                             break;

                    case 2: sWord15 = "demon";                              break;

                    case 3: sWord15 = "devil";                              break;

                    case 4: sWord15 = "prince";                             break;

                    case 5: sWord15 = "king";                               break;

                    case 6: sWord15 = "princess";                   break;

                    case 7: sWord15 = "lich";                               break;

                    case 8: sWord15 = "wizard";                             break;

                    case 9: sWord15 = "serpent";                    break;

                    case 10: sWord15 = "wolf";                              break;

                    case 11: sWord15 = "necromancer";               break;

                    case 12: sWord15 = "darkness";                  break;

                    case 13: sWord15 = "giant";                             break;

                    case 14: sWord15 = "priest";                    break;

                    case 15: sWord15 = "healer";                    break;

                    case 16: sWord15 = "knight";                    break;

                    case 17: sWord15 = "paladin";                   break;

                    case 18: sWord15 = "king";                              break;

                    case 19: sWord15 = "prince";                    break;

                    case 20: sWord15 = "princess";                  break;

                    case 21: sWord15 = "angel";                             break;

                    case 22: sWord15 = "god";                               break;

                    case 23: sWord15 = "goddess";                   break;

                    case 24: sWord15 = "light";                             break;

                    case 25: sWord15 = "child";                             break;

                    case 26: sWord15 = "boy";                               break;

                    case 27: sWord15 = "girl";                              break;
                    }

                    string sWord16 = "king";
                    int    nWord16 = Utility.RandomMinMax(1, 8);
                    if (alignment == "evil")
                    {
                        nWord16 = Utility.RandomMinMax(4, 20);
                    }
                    switch (nWord16)
                    {
                    case 1: sWord16 = "dies";                               break;

                    case 2: sWord16 = "is slain";                   break;

                    case 3: sWord16 = "destroys us";                break;

                    case 4: sWord16 = "rises";                              break;

                    case 5: sWord16 = "is born";                    break;

                    case 6: sWord16 = "awakens";                    break;

                    case 7: sWord16 = "returns";                    break;

                    case 8: sWord16 = "is summoned";                break;

                    case 9: sWord16 = "destroys me";                break;

                    case 10: sWord16 = "destroys us";               break;

                    case 11: sWord16 = "kills us";                  break;

                    case 12: sWord16 = "kills me";                  break;

                    case 13: sWord16 = "defeats me";                break;

                    case 14: sWord16 = "defeats us";                break;

                    case 15: sWord16 = "stops us";                  break;

                    case 16: sWord16 = "stops me";                  break;

                    case 17: sWord16 = "ruins my plans";    break;

                    case 18: sWord16 = "foils my plans";    break;

                    case 19: sWord16 = "ruins our plans";   break;

                    case 20: sWord16 = "foils our plans";   break;
                    }

                    MoreSentence = " " + sWord12 + " the " + sWord15 + " " + sWord16;
                }
            }

            Quest = Quest + MoreSentence + ".";

            return(Quest);
        }