public static void EventsMain()
        {
            var events = new List <EventContainer>();

            Console.WriteLine("Define Namespace");
            var _namespace = Console.ReadLine();

            Console.WriteLine("Input number of events to generate");
            var input   = Console.ReadLine();
            int eventno = 1;

            Int32.TryParse(input, out eventno);
            int i = 1;

            while (i <= eventno)
            {
                Console.WriteLine(string.Format("How many options are expected for event {0}?", i));
                int optionno = Convert.ToInt32(Console.ReadLine());
                var _event   = new EventContainer();
                _event.id      = string.Format("{0}.{1}", _namespace, i);
                _event.title   = string.Format("{0}.{1}.t", _namespace, i);
                _event.desc    = string.Format("{0}.{1}.d", _namespace, i);
                _event.options = new List <string> ();
                var j = 0;
                while (j < optionno)
                {
                    var option = String.Format("{0}.{1}.{2}", _namespace, i, Resources.OptionNames[j]);
                    _event.options.Add(option);
                    j++;
                }
                events.Add(_event);
                i++;
            }
            Console.WriteLine("Generating event frameworks...");
            var serialisedobjs = EventGeneration.EventSerialise(events, _namespace);

            Console.WriteLine("Saving output to local folder.");
            FileManagement.SaveEventsToFile(serialisedobjs, _namespace);

            Console.WriteLine("Press Any Key to Kill.");
            Console.ReadKey();
        }
Esempio n. 2
0
        public static void TechLocMain()
        {
            var correctFile = false;
            var filename    = "Foo";

            while (!correctFile)
            {
                Console.WriteLine("Please input filename (CasE-SenSiTiVe) (including extension)");
                var search = Console.ReadLine();
                filename = FileManagement.GetImportFile(search);
                Console.WriteLine("Is the file: {0} ? (y/n)", filename);
                var input = Console.ReadLine();
                correctFile = MainClass.ValidateYesNoInput(input);
            }

            var techtokenKeys = FileManagement.ImportText(filename);
            var output        = TechLocGeneration.GenerateTechLoc(techtokenKeys);

            FileManagement.SaveTechsToFile(output);
            Console.WriteLine("Done");
        }
Esempio n. 3
0
        public static void DefinitionsMain()
        {
            DefinitionContainer container = new DefinitionContainer();

            Console.WriteLine("Input number of provinces requiring definition:");
            var input      = Console.ReadLine();
            int provNumber = 1;

            Int32.TryParse(input, out provNumber);
            container.provNumber = provNumber;

            Console.WriteLine("Start from 1? (y/n):");
            input = Console.ReadLine();
            bool startat1 = MainClass.ValidateYesNoInput(input);

            container.provId = 1;

            if (!startat1)
            {
                int provId = 1;
                Console.WriteLine("Enter start value:");
                input = Console.ReadLine();
                Int32.TryParse(input, out provId);
                container.provId = provId;
            }

            Console.WriteLine("Input upper number of continents:");
            input = Console.ReadLine();
            int continents = 1;

            Int32.TryParse(input, out continents);
            container.continents = continents;

            Console.WriteLine("Input lower number of continents:");
            input = Console.ReadLine();
            int continentsLowerBound = 1;

            Int32.TryParse(input, out continentsLowerBound);
            container.continentsLowerBound = continentsLowerBound;

            int LSLinput = 99;

            Console.WriteLine("Override random generation of Land, Sea and Lakes? (y/n):");
            input = Console.ReadLine();
            bool LSLoverride = MainClass.ValidateYesNoInput(input);

            if (LSLoverride)
            {
                Console.WriteLine("Land (0) Sea (1) Lakes (2):");
                input = Console.ReadLine();
                Int32.TryParse(input, out LSLinput);
                container.LSLinput = LSLinput;
            }

            string filename = string.Empty;

            Console.WriteLine("Save to custom filename? (y/n):");
            input = Console.ReadLine();
            bool nonDefaultFilename = MainClass.ValidateYesNoInput(input);

            if (nonDefaultFilename)
            {
                Console.WriteLine("Enter filename (excluding extension):");
                filename = Console.ReadLine();
            }

            Console.WriteLine("Generating definitions...");
            var definitions = DefinitionGeneration.GenerateDefinitions(container);

            Console.WriteLine("Saving output to local folder.");
            FileManagement.SaveDefinitionstoCsv(definitions, filename);

            Console.WriteLine("Generation of {0} province definitions, complete", container.provNumber);
            Console.WriteLine("Press Any Key to Kill.");
            Console.ReadKey();
        }
Esempio n. 4
0
        public static void StatesMain()
        {
            Console.WriteLine("Input number of states requiring generation:");
            var input = Console.ReadLine();
            int stateNumber;

            Int32.TryParse(input, out stateNumber);

            Console.WriteLine("Start from 1? (y/n):");
            input = Console.ReadLine();
            bool startat1 = MainClass.ValidateYesNoInput(input);
            int  stateId  = 0;

            if (!startat1)
            {
                Console.WriteLine("Enter start value:");
                input = Console.ReadLine();
                Int32.TryParse(input, out stateId);
            }

            StatesContainer container     = new StatesContainer();
            List <string>   importStrings = new List <string> {
                "State Name", "TAG", "Province ID", "New Generation Defaults"
            };

            foreach (var importString in importStrings)
            {
                Console.WriteLine("Import {0} list from local folder? (y/n)", importString);
                input = Console.ReadLine();
                bool import = MainClass.ValidateYesNoInput(input);

                if (import)
                {
                    bool   correctFile = false;
                    string filename    = "foo";
                    while (!correctFile)
                    {
                        Console.WriteLine("Please input filename (CasE-SenSiTiVe) (including extension)");
                        var search = Console.ReadLine();
                        filename = FileManagement.GetImportFile(search);
                        Console.WriteLine("Is the file: {0} ? (y/n)", filename);
                        input       = Console.ReadLine();
                        correctFile = MainClass.ValidateYesNoInput(input);
                    }

                    if (correctFile)
                    {
                        switch (importString)
                        {
                        case "State Name":
                            container.ImportedNames = FileManagement.ImportText(filename);
                            break;

                        case "TAG":
                            container.ImportedTAGs = FileManagement.ImportText(filename);
                            break;

                        case "Province ID":
                            container.ImportedProvinces = FileManagement.ImportText(filename);
                            break;

                        case "New Generation Defaults":
                            container.ImportedDefaults = FileManagement.ImportText(filename);
                            break;
                        }
                    }
                }
            }

            Console.WriteLine("Do you want to generate multiple core owners for one state (y/n)");
            Console.WriteLine("WARNING: second tag is randomly assigned from the list imported - advised you import a limited selection of TAGs if you do this.");
            Console.WriteLine("If you didn't import a TAG list, or the random assignment of TAG is the same twice, you'll only get one row, no matter what you pick here.");
            input = Console.ReadLine();
            container.TwoCores = MainClass.ValidateYesNoInput(input);

            int counter = 0;

            while (counter < stateNumber)
            {
                Console.WriteLine("Generating states...");
                State newState = StateGeneration.GenerateState(counter, stateId, container);
                Console.WriteLine("State: {0} generated", newState.StateName);
                Console.WriteLine("Saving output to local folder.");
                FileManagement.SaveStatetoTextFile(newState, container.ImportedProvinces);
                if (stateId != 0)
                {
                    stateId++;
                }
                counter++;
            }
            Console.WriteLine("Generation of {0} states, complete", counter);
            Console.WriteLine("Press Any Key to Kill.");
            Console.ReadKey();
        }