Esempio n. 1
0
        //==CONSTRUCTOR
        public Treasure_Hoard_Tables(short challengeRating)
        {
            /*We instanciate the objects (Dice & Tables: Gem, Art & Magic)*/
            this.twoD6   = new Dice(2, 6);
            this.twoD4   = new Dice(2, 4);
            this.oneD6   = new Dice(1, 6);
            this.oneD4   = new Dice(1, 4);
            this.threeD6 = new Dice(3, 6);
            this.threeD4 = new Dice(3, 4);
            this.oneD10  = new Dice(1, 10);
            this.oneD8   = new Dice(1, 8);
            this.oneD1   = new Dice(1, 1);

            this.gemstones10   = new Gemstones_Tables(10);
            this.gemstones50   = new Gemstones_Tables(50);
            this.gemstones100  = new Gemstones_Tables(100);
            this.gemstones500  = new Gemstones_Tables(500);
            this.gemstones1000 = new Gemstones_Tables(1000);
            this.gemstones5000 = new Gemstones_Tables(5000);

            this.artObject25   = new Art_Objects_Tables(25);
            this.artObject250  = new Art_Objects_Tables(250);
            this.artObject750  = new Art_Objects_Tables(750);
            this.artObject2500 = new Art_Objects_Tables(2500);
            this.artObject7500 = new Art_Objects_Tables(7500);

            this.magicItemTable_A = new Magic_Item_Tables("A");
            this.magicItemTable_B = new Magic_Item_Tables("B");
            this.magicItemTable_C = new Magic_Item_Tables("C");
            this.magicItemTable_D = new Magic_Item_Tables("D");
            this.magicItemTable_E = new Magic_Item_Tables("E");
            this.magicItemTable_F = new Magic_Item_Tables("F");
            this.magicItemTable_G = new Magic_Item_Tables("G");
            this.magicItemTable_H = new Magic_Item_Tables("H");
            this.magicItemTable_I = new Magic_Item_Tables("I");

            /*After instanciate those objects (Dice & Tables: Gem, Art & Magic) then We call them.*/
            this.ChallengeRating = challengeRating;
            this.rndNbr          = new Random(DateTime.Now.Millisecond);
            this.Treasure        = this.challengeRating.ToString();
        }
        static void Main(string[] args)
        {
            #region The CODE WRITER AREA
            /// <EXPLANATION> on how codeCreator is working here !
            /// 1*] codeWriterItemTableI is instanciated with the adresse of the file (default file) where the content
            ///     must be taken: name of the object ( object's name or description, number of time it appears in the table).
            /// 2*] Next, codeWriterItemTableI.CodeCreator is used to generate the code and write it in a .txt file which file path is specified
            ///     in the first parameter of codeWriterItemTableI.CodeCreator().
            ///     (normally in the default file location is named: "Default_Content").
            /// </EXPLANATION>

            /// 1*]
            Table_Manager codeWriterItemTableI = new Table_Manager(AppDomain.CurrentDomain.BaseDirectory + @"\Ressources\Default_Content\Magic_Item_Tables\Table_I.txt");
            /// 2*]
            codeWriterItemTableI.CodeCreator(AppDomain.CurrentDomain.BaseDirectory + @"\Ressources\Default_Content\Magic_Item_Tables", @"Table_I.txt", "magicItemTableI");


            //GEMSTONES CODEWRITER
            Table_Manager codeWriterGem10 = new Table_Manager(AppDomain.CurrentDomain.BaseDirectory + @"\Ressources\Default_Content\Gemstones_Tables\Gemstones_10GP.txt");
            codeWriterGem10.CodeCreator(AppDomain.CurrentDomain.BaseDirectory + @"\Ressources\Default_Content\Gemstones_Tables\", @"Gemstones_10GPcode.txt", "gemstones10");

            Table_Manager codeWriterGem50 = new Table_Manager(AppDomain.CurrentDomain.BaseDirectory + @"\Ressources\Default_Content\Gemstones_Tables\Gemstones_50GP.txt");
            codeWriterGem50.CodeCreator(AppDomain.CurrentDomain.BaseDirectory + @"\Ressources\Default_Content\Gemstones_Tables\", @"Gemstones_50GPcode.txt", "gemstones50");

            Table_Manager codeWriterGem100 = new Table_Manager(AppDomain.CurrentDomain.BaseDirectory + @"\Ressources\Default_Content\Gemstones_Tables\Gemstones_100GP.txt");
            codeWriterGem100.CodeCreator(AppDomain.CurrentDomain.BaseDirectory + @"\Ressources\Default_Content\Gemstones_Tables\", @"Gemstones_100GPcode.txt", "gemstones100");

            Table_Manager codeWriterGem500 = new Table_Manager(AppDomain.CurrentDomain.BaseDirectory + @"\Ressources\Default_Content\Gemstones_Tables\Gemstones_500GP.txt");
            codeWriterGem500.CodeCreator(AppDomain.CurrentDomain.BaseDirectory + @"\Ressources\Default_Content\Gemstones_Tables\", @"Gemstones_500GPcode.txt", "gemstones500");

            Table_Manager codeWriterGem1000 = new Table_Manager(AppDomain.CurrentDomain.BaseDirectory + @"\Ressources\Default_Content\Gemstones_Tables\Gemstones_1000GP.txt");
            codeWriterGem1000.CodeCreator(AppDomain.CurrentDomain.BaseDirectory + @"\Ressources\Default_Content\Gemstones_Tables\", @"Gemstones_1000GPcode.txt", "gemstones1000");

            Table_Manager codeWriterGem5000 = new Table_Manager(AppDomain.CurrentDomain.BaseDirectory + @"\Ressources\Default_Content\Gemstones_Tables\Gemstones_5000GP.txt");
            codeWriterGem5000.CodeCreator(AppDomain.CurrentDomain.BaseDirectory + @"\Ressources\Default_Content\Gemstones_Tables\", @"Gemstones_5000GPcode.txt", "gemstones5000");


            //ART OBJECTS CODEWRITER
            Table_Manager codeWriterArtObject25 = new Table_Manager(AppDomain.CurrentDomain.BaseDirectory + @"\Ressources\Default_Content\Art_Objects_Tables\Art_Objects_25GP.txt");
            codeWriterArtObject25.CodeCreator(AppDomain.CurrentDomain.BaseDirectory + @"\Ressources\Default_Content\Art_Objects_Tables\", @"Art_Objects_25GPcode.txt", "artObject25");

            Table_Manager codeWriterArtObject250 = new Table_Manager(AppDomain.CurrentDomain.BaseDirectory + @"\Ressources\Default_Content\Art_Objects_Tables\Art_Objects_250GP.txt");
            codeWriterArtObject250.CodeCreator(AppDomain.CurrentDomain.BaseDirectory + @"\Ressources\Default_Content\Art_Objects_Tables\", @"Art_Objects_250GPcode.txt", "artObject250");

            Table_Manager codeWriterArtObject750 = new Table_Manager(AppDomain.CurrentDomain.BaseDirectory + @"\Ressources\Default_Content\Art_Objects_Tables\Art_Objects_750GP.txt");
            codeWriterArtObject750.CodeCreator(AppDomain.CurrentDomain.BaseDirectory + @"\Ressources\Default_Content\Art_Objects_Tables\", @"Art_Objects_750GPcode.txt", "artObject750");

            Table_Manager codeWriterArtObject2500 = new Table_Manager(AppDomain.CurrentDomain.BaseDirectory + @"\Ressources\Default_Content\Art_Objects_Tables\Art_Objects_2500GP.txt");
            codeWriterArtObject2500.CodeCreator(AppDomain.CurrentDomain.BaseDirectory + @"\Ressources\Default_Content\Art_Objects_Tables\", @"Art_Objects_2500GPcode.txt", "artObject2500");

            Table_Manager codeWriterArtObject7500 = new Table_Manager(AppDomain.CurrentDomain.BaseDirectory + @"\Ressources\Default_Content\Art_Objects_Tables\Art_Objects_7500GP.txt");
            codeWriterArtObject7500.CodeCreator(AppDomain.CurrentDomain.BaseDirectory + @"\Ressources\Default_Content\Art_Objects_Tables\", @"Art_Objects_7500GPcode.txt", "artObject7500");

            #endregion

            #region  The Dnd5e tables: INDIVIDUAL TREASURE. (.TXT)

            //==INDIVIDUAL TREASURES TABLES
            //CR 0-4                            [Dnd5e]
            Table_Manager individualTreasureCR0_4 = new Table_Manager(AppDomain.CurrentDomain.BaseDirectory + @"\Ressources\Individual_Treasure\Individual_Treasure_CR0-4.txt");

            individualTreasureCR0_4.DeleteAll();
            individualTreasureCR0_4.AddLine("3d6 (10) CP ;", 30);
            individualTreasureCR0_4.AddLine("4d6 (14) SP ;", 30);
            individualTreasureCR0_4.AddLine("3d6 (10) EP ;", 10);
            individualTreasureCR0_4.AddLine("3d6 (10) GP ;", 15);
            individualTreasureCR0_4.AddLine("ld6 (3) PP ;", 5);

            //CR 5-10                            [Dnd5e]
            Table_Manager individualTreasureCR5_10 = new Table_Manager(AppDomain.CurrentDomain.BaseDirectory + @"\Ressources\Individual_Treasure\Individual_Treasure_CR5-10.txt");

            individualTreasureCR5_10.DeleteAll();
            individualTreasureCR5_10.AddLine("4d6 x 100 (l ,400) CP and ld6 x 10 (35) EP ;", 30);
            individualTreasureCR5_10.AddLine("6d6 x 10 (210) SP and 2d6 x 10 (70) GP ;", 30);
            individualTreasureCR5_10.AddLine("3d6 x 10 (105) EP and 2d6 x 10 (70) GP ;", 10);
            individualTreasureCR5_10.AddLine("4d6 x 10 (140) GP ;", 15);
            individualTreasureCR5_10.AddLine("2d6 x 10 (70) GP and 3d6 (10) PP ;", 15);

            //CR 11-16                            [Dnd5e]
            Table_Manager individualTreasureCR11_16 = new Table_Manager(AppDomain.CurrentDomain.BaseDirectory + @"\Ressources\Individual_Treasure\Individual_Treasure_CR11-16.txt");

            individualTreasureCR11_16.DeleteAll();
            individualTreasureCR11_16.AddLine("4d6 x l 00 (l ,400) SP and ld6 x 100 (350) GP ;", 20);
            individualTreasureCR11_16.AddLine("ld6 x 1 00 (350) EP and ld6 x 1 00 (350) GP ;", 15);
            individualTreasureCR11_16.AddLine("2d6 x 100 (700) GP and ld6 x 10 (35) PP ;", 40);
            individualTreasureCR11_16.AddLine("2d6 x 100 (700)  GP and 2d6 x 10 (70)  PP ;", 25);

            //CR 17+                              [Dnd5e]
            Table_Manager individualTreasureCR17plus = new Table_Manager(AppDomain.CurrentDomain.BaseDirectory + @"\Ressources\Individual_Treasure\Individual_Treasure_CR17+.txt");

            individualTreasureCR17plus.DeleteAll();
            individualTreasureCR17plus.AddLine("2d6 x 1 ,000 (7,000) EP and 8d6 x 1 00 (2,800) GP ;", 15);
            individualTreasureCR17plus.AddLine("ld6 x 1 ,000 (3,500) GP and ld6 x 1 00 (350) PP ;", 40);
            individualTreasureCR17plus.AddLine("ld6 x 1 ,000 (3,500) GP and 2d6 x 1 00 (700) PP ;", 45);

            #endregion

            #region  The Dnd5e tables: MAGIC ITEM TABLES. (.TXT)

            //TABLE A
            Table_Manager magicItemTableA = new Table_Manager(AppDomain.CurrentDomain.BaseDirectory + @"\Ressources\Magic_Item_Tables\Table_A.txt");

            magicItemTableA.DeleteAll();
            magicItemTableA.AddLine("Potion of healing;", 50);
            magicItemTableA.AddLine("Spell scroll (cantrip);", 10);
            magicItemTableA.AddLine("Potion of climbing;", 10);
            magicItemTableA.AddLine("Spell scroll (1st level);", 20);
            magicItemTableA.AddLine("Spell scroll (2nd level);", 5);
            magicItemTableA.AddLine("Potion of greater healing;", 4);
            magicItemTableA.AddLine("Bag of holding;", 1);
            magicItemTableA.AddLine("Driftglobe;", 1);

            //TABLE B
            Table_Manager magicItemTableB = new Table_Manager(AppDomain.CurrentDomain.BaseDirectory + @"\Ressources\Magic_Item_Tables\Table_B.txt");
            magicItemTableB.DeleteAll();
            magicItemTableB.AddLine("Potion of greater healing;", 15);
            magicItemTableB.AddLine("Potion of fire breath;", 7);
            magicItemTableB.AddLine("Potion of resistance;", 7);
            magicItemTableB.AddLine("Ammunition, +l;", 5);
            magicItemTableB.AddLine("Potion of animal friendship;", 5);
            magicItemTableB.AddLine("Potion of hill giant strength;", 5);
            magicItemTableB.AddLine("Potion of growth;", 5);
            magicItemTableB.AddLine("Potion of water breathing;", 5);
            magicItemTableB.AddLine("Spell scroll (2nd level);", 5);
            magicItemTableB.AddLine("Spell scroll (3rd level);", 5);
            magicItemTableB.AddLine("Bag of holding;", 3);
            magicItemTableB.AddLine("Keoghtom's ointment;", 3);
            magicItemTableB.AddLine("Oil of slipperiness;", 3);
            magicItemTableB.AddLine("Dust of disappearance;", 2);
            magicItemTableB.AddLine("Dust of dryness;", 2);
            magicItemTableB.AddLine("Dust of sneezing and choking;", 2);
            magicItemTableB.AddLine("Elemental gem;", 2);
            magicItemTableB.AddLine("Philter of love;", 2);
            magicItemTableB.AddLine("Alchemy jug;", 1);
            magicItemTableB.AddLine("Cap of water breathing;", 1);
            magicItemTableB.AddLine("Cloak of the manta ray;", 1);
            magicItemTableB.AddLine("Driftglobe;", 1);
            magicItemTableB.AddLine("Goggles of night;", 1);
            magicItemTableB.AddLine("Helm of comprehending languages;", 1);
            magicItemTableB.AddLine("Immovable rod;", 1);
            magicItemTableB.AddLine("Lantern of revealing;", 1);
            magicItemTableB.AddLine("Mariner's armor;", 1);
            magicItemTableB.AddLine("Mithral armor;", 1);
            magicItemTableB.AddLine("Potion of poison;", 1);
            magicItemTableB.AddLine("Ring of swimming;", 1);
            magicItemTableB.AddLine("Robe of useful items;", 1);
            magicItemTableB.AddLine("Rope of climbing;", 1);
            magicItemTableB.AddLine("Saddle of the cavalier;", 1);
            magicItemTableB.AddLine("Wand of magic detection;", 1);
            magicItemTableB.AddLine("Wand of secrets;", 1);

            //TABLE C
            Table_Manager magicItemTableC = new Table_Manager(AppDomain.CurrentDomain.BaseDirectory + @"\Ressources\Magic_Item_Tables\Table_C.txt");
            magicItemTableC.DeleteAll();
            magicItemTableC.AddLine("Potion of superior healing;", 15);
            magicItemTableC.AddLine("Spell scroll (4th level);", 7);
            magicItemTableC.AddLine("Ammunition, +2;", 5);
            magicItemTableC.AddLine("Potion of clairvoyance;", 5);
            magicItemTableC.AddLine("Potion of diminution;", 5);
            magicItemTableC.AddLine("Potion of gaseous form;", 5);
            magicItemTableC.AddLine("Potion of frost giant strength;", 5);
            magicItemTableC.AddLine("Potion of stone giant strength;", 5);
            magicItemTableC.AddLine("Potion of heroism;", 5);
            magicItemTableC.AddLine("Potion of invulnerabil ity;", 5);
            magicItemTableC.AddLine("Potion of mind reading;", 5);
            magicItemTableC.AddLine("Spell scroll (5th level);", 5);
            magicItemTableC.AddLine("Elixir of health;", 3);
            magicItemTableC.AddLine("Oil of etherealness;", 3);
            magicItemTableC.AddLine("Potion of fire giant strength;", 3);
            magicItemTableC.AddLine("Quaal's feather token;", 3);
            magicItemTableC.AddLine("Scroll of protection;", 3);
            magicItemTableC.AddLine("Bag of beans;", 2);
            magicItemTableC.AddLine("Bead of force;", 2);
            magicItemTableC.AddLine("Chime of opening;", 1);
            magicItemTableC.AddLine("Decanter of endless water;", 1);
            magicItemTableC.AddLine("Eyes of minute seeing;", 1);
            magicItemTableC.AddLine("Folding boat;", 1);
            magicItemTableC.AddLine("Heward's handy haversack;", 1);
            magicItemTableC.AddLine("Horseshoes of speed;", 1);
            magicItemTableC.AddLine("Necklace of fireballs;", 1);
            magicItemTableC.AddLine("Peria pt of health;", 1);
            magicItemTableC.AddLine("Sending stones;", 1);


            //TABLE D
            Table_Manager magicItemTableD = new Table_Manager(AppDomain.CurrentDomain.BaseDirectory + @"\Ressources\Magic_Item_Tables\Table_D.txt");
            magicItemTableD.DeleteAll();
            magicItemTableD.AddLine("Potion of supreme healing;", 20);
            magicItemTableD.AddLine("Potion of invisibi lity;", 10);
            magicItemTableD.AddLine("Potion of speed;", 10);
            magicItemTableD.AddLine("Spell scroll (6th level);", 10);
            magicItemTableD.AddLine("Spell scroll (7th level) ;", 7);
            magicItemTableD.AddLine("Ammunition, +3;", 5);
            magicItemTableD.AddLine("Oil of sharpness;", 5);
            magicItemTableD.AddLine("Potion of flying;", 5);
            magicItemTableD.AddLine("Potion of cloud giant strength;", 5);
            magicItemTableD.AddLine("Potion of longevity;", 5);
            magicItemTableD.AddLine("Potion of vitality;", 5);
            magicItemTableD.AddLine("Spell scroll (8th level);", 5);
            magicItemTableD.AddLine("Horseshoes of a zephyr;", 3);
            magicItemTableD.AddLine("Nolzur's marvelous pigments;", 3);
            magicItemTableD.AddLine("Bag of devouring;", 1);
            magicItemTableD.AddLine("Portable hole;", 1);


            //TABLE E
            Table_Manager magicItemTableE = new Table_Manager(AppDomain.CurrentDomain.BaseDirectory + @"\Ressources\Magic_Item_Tables\Table_E.txt");
            magicItemTableE.DeleteAll();
            magicItemTableE.AddLine("Spell scroll (8th level);", 30);
            magicItemTableE.AddLine("Potion of storm giant strength;", 15);
            magicItemTableE.AddLine("Potion of supreme healing;", 15);
            magicItemTableE.AddLine("Spell scroll (9th level);", 15);
            magicItemTableE.AddLine("Universal solvent;", 8);
            magicItemTableE.AddLine("Arrow of slaying;", 5);
            magicItemTableE.AddLine("Sovereign glue;", 2);

            //TABLE F
            Table_Manager magicItemTableF = new Table_Manager(AppDomain.CurrentDomain.BaseDirectory + @"\Ressources\Magic_Item_Tables\Table_F.txt");
            magicItemTableF.DeleteAll();
            magicItemTableF.AddLine("Weapon, +l;", 15);
            magicItemTableF.AddLine("Shield, +;", 3);
            magicItemTableF.AddLine("Sentinel shield;", 3);
            magicItemTableF.AddLine("Amulet of proof against detection and location;", 2);
            magicItemTableF.AddLine("Boots of elvenkind;", 2);
            magicItemTableF.AddLine("Boots of striding and springing;", 2);
            magicItemTableF.AddLine("Bracers of archery;", 2);
            magicItemTableF.AddLine("Brooch of shielding;", 2);
            magicItemTableF.AddLine("Broom of flying;", 2);
            magicItemTableF.AddLine("Cloak of elven kind;", 2);
            magicItemTableF.AddLine("Cloak of protection;", 2);
            magicItemTableF.AddLine("Gauntlets of ogre power;", 2);
            magicItemTableF.AddLine("Hat of disguise;", 2);
            magicItemTableF.AddLine("Javel in of lightning;", 2);
            magicItemTableF.AddLine("Pearl of power;", 2);
            magicItemTableF.AddLine("Rod of the pact keeper, +1;", 2);
            magicItemTableF.AddLine("Slippers of spider climbing;", 2);
            magicItemTableF.AddLine("Staff of the adder;", 2);
            magicItemTableF.AddLine("Staff of the python;", 2);
            magicItemTableF.AddLine("Sword of vengeance;", 2);
            magicItemTableF.AddLine("Trident of fish command;", 2);
            magicItemTableF.AddLine("Wand of magic missiles;", 2);
            magicItemTableF.AddLine("Wand of the war mage, + ;", 2);
            magicItemTableF.AddLine("Wand of web;", 2);
            magicItemTableF.AddLine("Weapon of warning;", 2);
            magicItemTableF.AddLine("Adamantine armor (chain mail);", 2);
            magicItemTableF.AddLine("Adamantine armor (chain shirt);", 2);
            magicItemTableF.AddLine("Adamantine armor (scale mail);", 2);
            magicItemTableF.AddLine("Bag of tricks (gray);", 1);
            magicItemTableF.AddLine("Bag of tricks (rust);", 1);
            magicItemTableF.AddLine("Bag of tricks (tan);", 1);
            magicItemTableF.AddLine("Boots of the winterlands;", 1);
            magicItemTableF.AddLine("Circlet of blasting;", 1);
            magicItemTableF.AddLine("Deck of illusions;", 1);
            magicItemTableF.AddLine("Eversmoking bottle;", 1);
            magicItemTableF.AddLine("Eyes of charming;", 1);
            magicItemTableF.AddLine("Eyes of the eagle;", 1);
            magicItemTableF.AddLine("Figurine of wondrous power (silver raven);", 1);
            magicItemTableF.AddLine("Gem of brightness;", 1);
            magicItemTableF.AddLine("Gloves of missile snaring;", 1);
            magicItemTableF.AddLine("Gloves of swimming and climbing;", 1);
            magicItemTableF.AddLine("Gloves of thievery;", 1);
            magicItemTableF.AddLine("Headband of intellect;", 1);
            magicItemTableF.AddLine("Helm of telepathy;", 1);
            magicItemTableF.AddLine("Instrument of the bards (Doss l ute;", 1);
            magicItemTableF.AddLine("Instrument of the bards (Fochlucan bandore);", 1);
            magicItemTableF.AddLine("Instrument of the bards (Mac- Fuimidh cittern);", 1);
            magicItemTableF.AddLine("Medallion of thoughts;", 1);
            magicItemTableF.AddLine("Necklace of adaptation;", 1);
            magicItemTableF.AddLine("Periapt of wound closure;", 1);
            magicItemTableF.AddLine("Pipes of haunting;", 1);
            magicItemTableF.AddLine("Pipes of the sewers;", 1);
            magicItemTableF.AddLine("Ring of jumping;", 1);
            magicItemTableF.AddLine("Ring of mind shielding;", 1);
            magicItemTableF.AddLine("Ring of warmth;", 1);
            magicItemTableF.AddLine("Ring of water walking;", 1);
            magicItemTableF.AddLine("Quiver of Ehlonna;", 1);
            magicItemTableF.AddLine("Stone of good luck;", 1);
            magicItemTableF.AddLine("Wind fan;", 1);
            magicItemTableF.AddLine("Winged boots;", 1);

            //TABLE G
            Table_Manager      magicItemTableG = new Table_Manager(AppDomain.CurrentDomain.BaseDirectory + @"\Ressources\Magic_Item_Tables\Table_G.txt");
            SpecificItemPicker figurine        = new SpecificItemPicker();
            magicItemTableG.DeleteAll();
            magicItemTableG.AddLine("Weapon, +2;", 11);
            magicItemTableG.AddLine(figurine.FigPicker(), 2);
            magicItemTableG.AddLine("Adamantine armor (breastplate);", 1);
            magicItemTableG.AddLine("Adamantine armor (splint);", 1);
            magicItemTableG.AddLine("Amulet of health;", 1);
            magicItemTableG.AddLine("Armor of vulnerability;", 1);
            magicItemTableG.AddLine("Arrow-catching shield;", 1);
            magicItemTableG.AddLine("Belt of dwarvenkind;", 1);
            magicItemTableG.AddLine("Belt of hill giant strength;", 1);
            magicItemTableG.AddLine("Berserker axe;", 1);
            magicItemTableG.AddLine("Boots of levitation;", 1);
            magicItemTableG.AddLine("Boots of speed;", 1);
            magicItemTableG.AddLine("Bowl of commanding water elementals;", 1);
            magicItemTableG.AddLine("Bracers of defense;", 1);
            magicItemTableG.AddLine("Brazier of commanding fire elementals;", 1);
            magicItemTableG.AddLine("Cape of the mountebank;", 1);
            magicItemTableG.AddLine("Censer of controlling air elementals;", 1);
            magicItemTableG.AddLine("Armor, +l chain mail;", 1);
            magicItemTableG.AddLine("Armor of resistance (chain mail);", 1);
            magicItemTableG.AddLine("Armor, + l chain shirt;", 1);
            magicItemTableG.AddLine("Armor of resistance (chain shirt);", 1);
            magicItemTableG.AddLine("Cloak of displacement;", 1);
            magicItemTableG.AddLine("Cloak of the bat;", 1);
            magicItemTableG.AddLine("Cube of force;", 1);
            magicItemTableG.AddLine("Daern's instant fortress;", 1);
            magicItemTableG.AddLine("Dagger of venom;", 1);
            magicItemTableG.AddLine("Dimensional shackles;", 1);
            magicItemTableG.AddLine("Dragon slayer;", 1);
            magicItemTableG.AddLine("Elven chain;", 1);
            magicItemTableG.AddLine("Flame tongue;", 1);
            magicItemTableG.AddLine("Gem of seeing;", 1);
            magicItemTableG.AddLine("Giant slayer;", 1);
            magicItemTableG.AddLine("Glamoured studded leather;", 1);
            magicItemTableG.AddLine("Helm of teleportation;", 1);
            magicItemTableG.AddLine("Horn of blasting;", 1);
            magicItemTableG.AddLine("Horn of Valhalla (silver or brass);", 1);
            magicItemTableG.AddLine("Instrument of the bards (Canaith mandolin);", 1);
            magicItemTableG.AddLine("Instrument of the bards (Clilyre);", 1);
            magicItemTableG.AddLine("loun stone (awareness);", 1);
            magicItemTableG.AddLine("loun stone (protection);", 1);
            magicItemTableG.AddLine("loun stone (reserve);", 1);
            magicItemTableG.AddLine("loun stone (sustenance);", 1);
            magicItemTableG.AddLine("Iron bands of Bilarro;", 1);
            magicItemTableG.AddLine("Armor, + l leather;", 1);
            magicItemTableG.AddLine("Armor of resistance (leather);", 1);
            magicItemTableG.AddLine("Mace of disruption;", 1);
            magicItemTableG.AddLine("Mace of smiting;", 1);
            magicItemTableG.AddLine("Mace of terror;", 1);
            magicItemTableG.AddLine("Mantle of spell resistance;", 1);
            magicItemTableG.AddLine("Necklace of prayer beads;", 1);
            magicItemTableG.AddLine("Periapt of proof against poison;", 1);
            magicItemTableG.AddLine("Ring of animal influence;", 1);
            magicItemTableG.AddLine("Ring of evasion;", 1);
            magicItemTableG.AddLine("Ring of feather falling;", 1);
            magicItemTableG.AddLine("Ring of free action;", 1);
            magicItemTableG.AddLine("Ring of protection;", 1);
            magicItemTableG.AddLine("Ring of resistance;", 1);
            magicItemTableG.AddLine("Ring of spell storing;", 1);
            magicItemTableG.AddLine("Ring of the ram;", 1);
            magicItemTableG.AddLine("Ring of X-ray vision;", 1);
            magicItemTableG.AddLine("Robe of eyes;", 1);
            magicItemTableG.AddLine("Rod of rulership;", 1);
            magicItemTableG.AddLine("Rod of the pact keeper, +2;", 1);
            magicItemTableG.AddLine("Rope of entanglement;", 1);
            magicItemTableG.AddLine("Armor, + l scale mail;", 1);
            magicItemTableG.AddLine("Armor of resistance (scale mail);", 1);
            magicItemTableG.AddLine("Shield, +2;", 1);
            magicItemTableG.AddLine("Shield of missile attraction;", 1);
            magicItemTableG.AddLine("Staff of charming;", 1);
            magicItemTableG.AddLine("Staff of healing;", 1);
            magicItemTableG.AddLine("Staff of swarming insects;", 1);
            magicItemTableG.AddLine("Staff of the woodlands;", 1);
            magicItemTableG.AddLine("Staff of withering;", 1);
            magicItemTableG.AddLine("Stone of controlling earth elementals;", 1);
            magicItemTableG.AddLine("Sun blade;", 1);
            magicItemTableG.AddLine("Sword of life stealing;", 1);
            magicItemTableG.AddLine("Sword of wounding;", 1);
            magicItemTableG.AddLine("Tentacle rod;", 1);
            magicItemTableG.AddLine("Vicious weapon;", 1);
            magicItemTableG.AddLine("Wand of binding;", 1);
            magicItemTableG.AddLine("Wand of enemy detection;", 1);
            magicItemTableG.AddLine("Wand of fear;", 1);
            magicItemTableG.AddLine("Wand of fireballs;", 1);
            magicItemTableG.AddLine("Wand of lightning bolts;", 1);
            magicItemTableG.AddLine("Wand of paralysis;", 1);
            magicItemTableG.AddLine("Wand of the war mage, +2;", 1);
            magicItemTableG.AddLine("Wand of wonder;", 1);
            magicItemTableG.AddLine("Wings of flying;", 1);

            //TABLE H
            Table_Manager magicItemTableH = new Table_Manager(AppDomain.CurrentDomain.BaseDirectory + @"\Ressources\Magic_Item_Tables\Table_H.txt");
            magicItemTableH.DeleteAll();
            magicItemTableH.AddLine("Weapon , +3;", 10);
            magicItemTableH.AddLine("Amulet of the planes;", 2);
            magicItemTableH.AddLine("Carpet of flying;", 2);
            magicItemTableH.AddLine("Crystal ball (very rare version);", 2);
            magicItemTableH.AddLine("Ring of regeneration;", 2);
            magicItemTableH.AddLine("Ring of shooting stars;", 2);
            magicItemTableH.AddLine("Ring of telekinesis;", 2);
            magicItemTableH.AddLine("Robe of scintil lating colors;", 2);
            magicItemTableH.AddLine("Robe of stars;", 2);
            magicItemTableH.AddLine("Rod of absorption;", 2);
            magicItemTableH.AddLine("Rod of alertness;", 2);
            magicItemTableH.AddLine("Rod of security;", 2);
            magicItemTableH.AddLine("Rod of the pact keeper, +3;", 2);
            magicItemTableH.AddLine("Scimitar of speed;", 2);
            magicItemTableH.AddLine("Shield, +3;", 2);
            magicItemTableH.AddLine("Staff of fire;", 2);
            magicItemTableH.AddLine("Staff of frost;", 2);
            magicItemTableH.AddLine("Staff of power;", 2);
            magicItemTableH.AddLine("Staff of striking;", 2);
            magicItemTableH.AddLine("Staff of thunder and lightning;", 2);
            magicItemTableH.AddLine("Sword of sharpness;", 2);
            magicItemTableH.AddLine("Wand of polymorph;", 2);
            magicItemTableH.AddLine("Wand of the war mage, +3;", 2);
            magicItemTableH.AddLine("Adamantine armor (half plate);", 1);
            magicItemTableH.AddLine("Adamantine armor (plate);", 1);
            magicItemTableH.AddLine("Animated shield;", 1);
            magicItemTableH.AddLine("Belt of fire giant strength;", 1);
            magicItemTableH.AddLine("Belt of frost (or stone) giant strength;", 1);
            magicItemTableH.AddLine("Armor, + l breastplate;", 1);
            magicItemTableH.AddLine("Armor of resistance (breastplate);", 1);
            magicItemTableH.AddLine("Candle of invocation;", 1);
            magicItemTableH.AddLine("Armor, +2 chain mail;", 1);
            magicItemTableH.AddLine("Armor, +2 chain shirt;", 1);
            magicItemTableH.AddLine("Cloak of arach nida;", 1);
            magicItemTableH.AddLine("Dancing sword;", 1);
            magicItemTableH.AddLine("Demon armor;", 1);
            magicItemTableH.AddLine("Dragon scale mail;", 1);
            magicItemTableH.AddLine("Dwarven plate;", 1);
            magicItemTableH.AddLine("Dwarven thrower;", 1);
            magicItemTableH.AddLine("Efreeti bottle;", 1);
            magicItemTableH.AddLine("Figurine of wondrous power (obsidian steed);", 1);
            magicItemTableH.AddLine("Frost brand;", 1);
            magicItemTableH.AddLine("Helm of brilliance;", 1);
            magicItemTableH.AddLine("Horn of Valhalla (bronze);", 1);
            magicItemTableH.AddLine("Instrument of the bards (Anstruth harp);", 1);
            magicItemTableH.AddLine("loun stone (absorption);", 1);
            magicItemTableH.AddLine("loun stone (agility);", 1);
            magicItemTableH.AddLine("loun stone (fortitude);", 1);
            magicItemTableH.AddLine("Ioun stone (insight);", 1);
            magicItemTableH.AddLine("loun stone (intellect);", 1);
            magicItemTableH.AddLine("loun stone (leadership);", 1);
            magicItemTableH.AddLine("loun stone (strength);", 1);
            magicItemTableH.AddLine("Armor, +2 leather;", 1);
            magicItemTableH.AddLine("Manual of bodily health;", 1);
            magicItemTableH.AddLine("Manual of gainful exercise;", 1);
            magicItemTableH.AddLine("Manual of golems;", 1);
            magicItemTableH.AddLine("Manual of quickness of action;", 1);
            magicItemTableH.AddLine("Mirror of life trapping;", 1);
            magicItemTableH.AddLine("Nine lives stealer;", 1);
            magicItemTableH.AddLine("Oath bow;", 1);
            magicItemTableH.AddLine("Armor, +2 scale mail;", 1);
            magicItemTableH.AddLine("Spellguard shield;", 1);
            magicItemTableH.AddLine("Armor, + l splint;", 1);
            magicItemTableH.AddLine("Armor of resistance (splint);", 1);
            magicItemTableH.AddLine("Armor, + l studded leather;", 1);
            magicItemTableH.AddLine("Armor of resistance (studded leather);", 1);
            magicItemTableH.AddLine("Tome of clear thought;", 1);
            magicItemTableH.AddLine("Tome of leadership and influence;", 1);
            magicItemTableH.AddLine("Tome of understanding;", 1);

            //TABLE I
            Table_Manager      magicItemTableI         = new Table_Manager(AppDomain.CurrentDomain.BaseDirectory + @"\Ressources\Magic_Item_Tables\Table_I.txt");
            SpecificItemPicker SpecificItemPickerArmor = new SpecificItemPicker();
            magicItemTableI.DeleteAll();

            magicItemTableI.AddLine("Defender;", 5);
            magicItemTableI.AddLine("Hammer of thunderbolts;", 5);
            magicItemTableI.AddLine("Luck blade;", 5);
            magicItemTableI.AddLine("Sword of answering;", 5);
            magicItemTableI.AddLine("Holy avenger;", 3);
            magicItemTableI.AddLine("Ring of djinni summoning;", 3);
            magicItemTableI.AddLine("Ring of invisibility;", 3);
            magicItemTableI.AddLine("Ring of spell turning;", 3);
            magicItemTableI.AddLine("Rod of lordly might;", 3);
            magicItemTableI.AddLine("Staff of the magi;", 3);
            magicItemTableI.AddLine("Vorpal sword;", 3);
            magicItemTableI.AddLine("Belt of cloud giant strength;", 2);
            magicItemTableI.AddLine("Armor, +2 breastplate;", 2);
            magicItemTableI.AddLine("Armor, +3 chain mail;", 2);
            magicItemTableI.AddLine("Armor, +3 chain shirt;", 2);
            magicItemTableI.AddLine("Cloak of invisibility;", 2);
            magicItemTableI.AddLine("Crystal ball (legendary version);", 2);
            magicItemTableI.AddLine("Armor, + 1 half plate;", 2);
            magicItemTableI.AddLine("Iron flask;", 2);
            magicItemTableI.AddLine("Armor, +3 leather;", 2);
            magicItemTableI.AddLine("Armor, + 1 plate;", 2);
            magicItemTableI.AddLine("Robe of the arch magi;", 2);
            magicItemTableI.AddLine("Rod of resurrection;", 2);
            magicItemTableI.AddLine("Armor, +l scale mail;", 2);
            magicItemTableI.AddLine("Scarab of protection;", 2);
            magicItemTableI.AddLine("Armor, +2 splint;", 2);
            magicItemTableI.AddLine("Armor, +2 studded leather;", 2);
            magicItemTableI.AddLine("Well of many worlds;", 2);
            magicItemTableI.AddLine(SpecificItemPickerArmor.ArmorPicker(), 1);
            magicItemTableI.AddLine("Apparatus of Kwalish;", 1);
            magicItemTableI.AddLine("Armor of invul nerability;", 1);
            magicItemTableI.AddLine("Belt of storm giant strength;", 1);
            magicItemTableI.AddLine("Cubic gate;", 1);
            magicItemTableI.AddLine("Deck of many things;", 1);
            magicItemTableI.AddLine("Efreeti chain;", 1);
            magicItemTableI.AddLine("Armor of resistance (half plate);", 1);
            magicItemTableI.AddLine("Horn of Valhalla (iron);", 1);
            magicItemTableI.AddLine("Instrument of the bards (Ollamh harp);", 1);
            magicItemTableI.AddLine("loun stone (greater absorption);", 1);
            magicItemTableI.AddLine("loun stone (mastery);", 1);
            magicItemTableI.AddLine("loun stone (regeneration);", 1);
            magicItemTableI.AddLine("Plate armor of etherealness;", 1);
            magicItemTableI.AddLine("Plate armor of resistance;", 1);
            magicItemTableI.AddLine("Ring of air elemental command;", 1);
            magicItemTableI.AddLine("Ring of earth elemental command;", 1);
            magicItemTableI.AddLine("Ring of fire elemental command;", 1);
            magicItemTableI.AddLine("Ring of three wishes;", 1);
            magicItemTableI.AddLine("Ring of water elemental command;", 1);
            magicItemTableI.AddLine("Sphere of annihi lation;", 1);
            magicItemTableI.AddLine("Talisman of pure good;", 1);
            magicItemTableI.AddLine("Talisman of the sphere;", 1);
            magicItemTableI.AddLine("Talisman of ultimate evil;", 1);
            magicItemTableI.AddLine("Tome of the stilled tongue ;", 1);

            #endregion

            #region  The Dnd5e tables: GEMSTONES TABLES. (.TXT)
            //GEMSTONES WORTH 10 GP
            Table_Manager gemstones10 = new Table_Manager(AppDomain.CurrentDomain.BaseDirectory + @"\Ressources\Gemstones_Tables\Gemstones_10GP.txt");
            gemstones10.DeleteAll();
            gemstones10.AddLine("Azurite (opaque mottled deep blue);", 1);
            gemstones10.AddLine("Banded agate (translucent striped brown, blue, white, or red);", 1);
            gemstones10.AddLine("Blue quartz (transparent pale blue);", 1);
            gemstones10.AddLine("Eye agate (transl ucent circles of gray, white, brown,blue, or green);", 1);
            gemstones10.AddLine("Hematite (opaque gray-black);", 1);
            gemstones10.AddLine("Lapis lazuli (opaque light and dark blue with yellow flecks);", 1);
            gemstones10.AddLine("Malachite (opaque striated light and dark green);", 1);
            gemstones10.AddLine("Moss agate (translucent pink or yellow-white with mossy gray or green markings);", 1);
            gemstones10.AddLine("Obsidian (opaque black);", 1);
            gemstones10.AddLine("Rhodochrosite (opaque light pink);", 1);
            gemstones10.AddLine("Tiger eye (translucent brown with golden center);", 1);
            gemstones10.AddLine("Turquoise (opaque light blue-green);", 1);

            //GEMSTONES WORTH 50 GP
            Table_Manager gemstones50 = new Table_Manager(AppDomain.CurrentDomain.BaseDirectory + @"\Ressources\Gemstones_Tables\Gemstones_50GP.txt");
            gemstones50.DeleteAll();
            gemstones50.AddLine("Bloodstone (opaque dark gray with red flecks);", 1);
            gemstones50.AddLine("Carnelian (opaque orange to red-brown);", 1);
            gemstones50.AddLine("Chalcedony (opaque white);", 1);
            gemstones50.AddLine("Chrysoprase (translucent green);", 1);
            gemstones50.AddLine("Citrine (transparent pale yellow-brown);", 1);
            gemstones50.AddLine("jasper (opaque blue, black, or brown);", 1);
            gemstones50.AddLine("Moonstone (translucent white with pale blue glow);", 1);
            gemstones50.AddLine("Onyx (opaque bands of black and white, or pure back or white);", 1);
            gemstones50.AddLine("Quartz (transparent white, smoky gray, or yellow);", 1);
            gemstones50.AddLine("Sardonyx (opaque bands of red and white);", 1);
            gemstones50.AddLine("Star rose quartz (translucent rosy stone with white;", 1);
            gemstones50.AddLine("star-shaped center);", 1);
            gemstones50.AddLine("Zircon (transparent pale blue-green);", 1);

            //GEMSTONES WORTH 100GP
            Table_Manager gemstones100 = new Table_Manager(AppDomain.CurrentDomain.BaseDirectory + @"\Ressources\Gemstones_Tables\Gemstones_100GP.txt");

            gemstones100.DeleteAll();

            gemstones100.AddLine("Amber (transparent watery gold to rich gold);", 1);
            gemstones100.AddLine("Amethyst (transparent deep purple);", 1);
            gemstones100.AddLine("Chrysoberyl (transparent yel low-green to pale green);", 1);
            gemstones100.AddLine("Coral (opaque crimson);", 1);
            gemstones100.AddLine("Garnet (transparent red, brown-green, or violet);", 1);
            gemstones100.AddLine("jade (translucent light green, deep green, or white);", 1);
            gemstones100.AddLine("jet (opaque deep black);", 1);
            gemstones100.AddLine("Pearl (opaque lustrous white, yellow, or pink);", 1);
            gemstones100.AddLine("Spinel (transparent red, red-brown, or deep green);", 1);
            gemstones100.AddLine("Tourmaline (transparent pale green, blue, brown, or red);", 1);

            //GEMSTONES WORTH 500GP
            Table_Manager gemstones500 = new Table_Manager(AppDomain.CurrentDomain.BaseDirectory + @"\Ressources\Gemstones_Tables\Gemstones_500GP.txt");

            gemstones500.DeleteAll();

            gemstones500.AddLine("Alexandrite (transparent dark green);", 1);
            gemstones500.AddLine("Aquamarine (transparent pale blue-green);", 1);
            gemstones500.AddLine("Black pearl (opaque pure black);", 1);
            gemstones500.AddLine("Blue spinel (transparent deep blue);", 1);
            gemstones500.AddLine("Peridot (transparent rich ol ive green);", 1);
            gemstones500.AddLine("Topaz (transparent golden yellow);", 1);

            //GEMSTONES WORTH 1000GP
            Table_Manager gemstones1000 = new Table_Manager(AppDomain.CurrentDomain.BaseDirectory + @"\Ressources\Gemstones_Tables\Gemstones_1000GP.txt");

            gemstones1000.DeleteAll();

            gemstones1000.AddLine("Black opal (translucent dark green with black mottling and golden flecks);", 1);
            gemstones1000.AddLine("Blue sapphire (transparent blue-white to medium blue);", 1);
            gemstones1000.AddLine("Emerald (transparent deep bright green);", 1);
            gemstones1000.AddLine("Fire opal (translucent fiery red);", 1);
            gemstones1000.AddLine("Opal (transl ucent pale blue with green and golden mottling);", 1);
            gemstones1000.AddLine("Star ruby (translucent ruby with white star-shaped center);", 1);
            gemstones1000.AddLine("Star sapphire (translucent blue sapphire with white star-shaped center);", 1);
            gemstones1000.AddLine("Yellow sapphire (transparent fiery yellow or yellowgreen);", 1);
            //GEMSTONES WORTH 5000GP
            Table_Manager gemstones5000 = new Table_Manager(AppDomain.CurrentDomain.BaseDirectory + @"\Ressources\Gemstones_Tables\Gemstones_5000GP.txt");
            gemstones5000.DeleteAll();

            gemstones5000.AddLine("Black sapphire (translucent lustrous black withglowing highlights);", 1);
            gemstones5000.AddLine("Diamond (transparent bl ue-white, canary, pink, brown, or blue);", 1);
            gemstones5000.AddLine("Jacinth (transparent fiery orange);", 1);
            gemstones5000.AddLine("Ruby (transparent clear red to deep crimson);", 1);

            #endregion

            #region  The Dnd5e tables: ART OBJECTS TABLES. (.TXT)
            //ART OBJECT WORTH 25GP
            Table_Manager artObject25 = new Table_Manager(AppDomain.CurrentDomain.BaseDirectory + @"\Ressources\Art_Objects_Tables\Art_Objects_25GP.txt");
            artObject25.DeleteAll();
            artObject25.AddLine("Silver ewer;", 1);
            artObject25.AddLine("Carved bone statuette;", 1);
            artObject25.AddLine("Small gold bracelet;", 1);
            artObject25.AddLine("Cloth-of-gold vestments;", 1);
            artObject25.AddLine("Black velvet mask stitched with silver thread;", 1);
            artObject25.AddLine("Copper chalice with silver filigree;", 1);
            artObject25.AddLine("Pair of engraved bone dice;", 1);
            artObject25.AddLine("Small mirror set in a painted wooden frame;", 1);
            artObject25.AddLine("Embroidered silk handkerchief;", 1);
            artObject25.AddLine("Gold locket with a painted portrait inside;", 1);

            //ART OBJECT WORTH 250GP
            Table_Manager artObject250 = new Table_Manager(AppDomain.CurrentDomain.BaseDirectory + @"\Ressources\Art_Objects_Tables\Art_Objects_250GP.txt");
            artObject250.DeleteAll();
            artObject250.AddLine("Gold ring set with bloodstones;", 1);
            artObject250.AddLine("Carved ivory statuette;", 1);
            artObject250.AddLine("Large gold bracelet;", 1);
            artObject250.AddLine("Silver necklace with a gemstone pendant;", 1);
            artObject250.AddLine("Bronze crown;", 1);
            artObject250.AddLine("Silk robe with gold embroidery;", 1);
            artObject250.AddLine("Large well-made tapestry;", 1);
            artObject250.AddLine("Brass mug with jade in lay;", 1);
            artObject250.AddLine("Box of turquoise animal figurines;", 1);
            artObject250.AddLine("Gold bird cage with electrum filigree;", 1);

            //ART OBJECT WORTH 750GP
            Table_Manager artObject750 = new Table_Manager(AppDomain.CurrentDomain.BaseDirectory + @"\Ressources\Art_Objects_Tables\Art_Objects_750GP.txt");
            artObject750.DeleteAll();
            artObject750.AddLine("Silver chalice set with moonstones;", 1);
            artObject750.AddLine("Silver-plated steel longsword with jet set in hilt;", 1);
            artObject750.AddLine("Carved harp of exotic wood with ivory inlay and zircon gems;", 1);
            artObject750.AddLine("Small gold idol;", 1);
            artObject750.AddLine("Gold dragon comb set with red garnets as eyes;", 1);
            artObject750.AddLine("Bottle stopper cork embossed with gold leaf and set with amethysts;", 1);
            artObject750.AddLine("Ceremonial electrum dagger with a black pearl in the pommel;", 1);
            artObject750.AddLine("Silver and gold brooch;", 1);
            artObject750.AddLine("Obsidian statuette with gold fittings and inlay;", 1);
            artObject750.AddLine("Painted gold war mask;", 1);

            //ART OBJECT WORTH 2500GP
            Table_Manager artObject2500 = new Table_Manager(AppDomain.CurrentDomain.BaseDirectory + @"\Ressources\Art_Objects_Tables\Art_Objects_2500GP.txt");
            artObject2500.DeleteAll();
            artObject2500.AddLine("Fine gold chain set with a fire opal;", 1);
            artObject2500.AddLine("Old masterpiece painting;", 1);
            artObject2500.AddLine("Embroidered silk and velvet mantle set with numerous moonstones;", 1);
            artObject2500.AddLine("Platinum bracelet set with a sapphire;", 1);
            artObject2500.AddLine("Embroidered glove set with jewel chips;", 1);
            artObject2500.AddLine("Jeweled anklet;", 1);
            artObject2500.AddLine("Gold music box;", 1);
            artObject2500.AddLine("Gold circlet set with four aquamarines;", 1);
            artObject2500.AddLine("Eye patch with a mock eye set in blue sapphire and moonstone;", 1);
            artObject2500.AddLine("A necklace string of small pink pearls;", 1);

            //ART OBJECT WORTH 7500GP
            Table_Manager artObject7500 = new Table_Manager(AppDomain.CurrentDomain.BaseDirectory + @"\Ressources\Art_Objects_Tables\Art_Objects_7500GP.txt");
            artObject7500.DeleteAll();
            artObject7500.AddLine("Jeweled gold crown;", 1);
            artObject7500.AddLine("Jeweled platinum ring;", 1);
            artObject7500.AddLine("Small gold statuette set with rubies;", 1);
            artObject7500.AddLine("Gold cup set with emeralds;", 1);
            artObject7500.AddLine("Gold jewelry box with platinum filigree;", 1);
            artObject7500.AddLine("Painted gold child's sarcophagus;", 1);
            artObject7500.AddLine("Jade game board with solid gold playing pieces;", 1);
            artObject7500.AddLine("Bejeweled ivory drinking horn with gold filigree;", 1);

            #endregion

            #region UI


            string userGenerationSelection = "";
            short  userCR = 0;
            string userMagicItemLetter = "";
            int    lootAndShoot        = 0;

            Console.WriteLine("Dnd5e Treasure Generator App: What do you want to generate ?\n" +
                              "-----------------------------------------------------------");
            Console.WriteLine("(A) for an INDIVIDUAL TREASURE   generation    (FANTASY / Dnd5e).\n" +
                              "(B) for a  TREASURE HOARD        generation    (FANTASY / Dnd5e).\n" +
                              "(C) for a  MAGIC ITEM            generation    (FANTASY / Dnd5e).\n" +
                              "(D) for a SCI-FI WEAPON          generation    (SCI-FI  / UM5e ).");

            Console.WriteLine("|A piece of advice about loot|\n\n" +
                              "How many loot by campaign:\n" +
                              "-------------------------\n" +
                              "You can hand out as much or as little treasure as you want.\n" +
                              "But over the course of a typical campaign, a party finds treasure hoards amounting to \n" +
                              "** (7)  seven rolls     on the Challenge 0 - 4 table, \n" +
                              "**(18) eighteen rolls   on the Challenge 5 - 10 table, \n" +
                              "**(12) twelve rolls     on the Challenge 11 - 16 table and\n" +
                              "** (8)  eight rolls     on the Challenge 17 + table. \n");
            userGenerationSelection = Console.ReadLine();

            do
            {
                Console.Clear();

                Console.WriteLine("(A) for an INDIVIDUAL TREASURE generation (FANTASY / Dnd5e).\n" +
                                  "(B) for an TREASURE HOARD generation      (FANTASY / Dnd5e).\n" +
                                  "(C) for a  MAGIC ITEM            generation    (FANTASY / Dnd5e).\n" +
                                  "(D) for a SCI-FI WEAPON          generation    (SCI-FI  / UM5e )." +
                                  "(Z)to close the app.\n");

                if (userGenerationSelection.ToUpper() == "A")
                {
                    do
                    {
                        Console.Write("Choose the Challenge Rating (between 1 and 30): ");
                        userCR = Convert.ToInt16(Console.ReadLine());
                    } while (userCR < 0 || userCR > 30);

                    Individual_Treasure indivTreasure = new Individual_Treasure(userCR);
                    Console.WriteLine(indivTreasure.GenerateTreasure());
                }
                else if (userGenerationSelection.ToUpper() == "B")
                {
                    do
                    {
                        Console.Write("Choose the Challenge Rating (between 1 and 30): ");
                        userCR = Convert.ToInt16(Console.ReadLine());
                    } while (userCR < 0 || userCR > 30);

                    Treasure_Hoard_Tables treasureHoard = new Treasure_Hoard_Tables(userCR);
                    Console.WriteLine(treasureHoard.Treasure);
                }
                else if (userGenerationSelection.ToUpper() == "C")
                {
                    do
                    {
                        Console.Write("Choose the table of the magic item (between A and I): ");
                        userMagicItemLetter = Console.ReadLine();
                    } while (!Regex.Match(userMagicItemLetter.ToUpper(), "^[A-I]{1}$").Success);

                    Magic_Item_Tables magicIt = new Magic_Item_Tables(userMagicItemLetter.ToUpper());
                    Console.WriteLine(magicIt.PickMagicItem());
                }
                else if (userGenerationSelection.ToUpper() == "D")
                {
                    do
                    {
                        Console.Write("Encode the level of your character (between 1 and 20): ");
                        lootAndShoot = Convert.ToInt16(Console.ReadLine());
                    } while (lootAndShoot < 1 || lootAndShoot > 20);

                    LootAndShoot lAndS = new LootAndShoot(lootAndShoot);
                    Console.WriteLine(lAndS.GenerateWeapon());
                }
                Console.Write("\n---------------------------------\n" +
                              "Another generation? Pick a letter: ");
                userGenerationSelection = Console.ReadLine();
            } while (userGenerationSelection.ToUpper() != "Z");

            #endregion
        }