void init(int TurnsBeforeGame)
        {
            int RT = TurnsBeforeGame;

            SideWriter.Write("Tienes " + TurnsBeforeGame.ToString() + " turnos sin usar antes del inicio del juego");
            SideWriter.Write("A Continuacion se preguntara como esos turnos fueron aprovechados en cuanto a construccion de instalaciones");
            SideWriter.Write("Algunas instalaciones tienen capacidad quasi exponencial con respecto al tiempo usado en su produccion, dado que se usa MetaFactoria para hacer la instalacion en si");
            SideWriter.Write("Turnos a asignar " + RT.ToString());
            List <int> l = Reader.ReadIntList(conf.ExtensionNames);
            int        i = 0;

            SideWriter.WriteFromFile("AGIunitsexplanation.txt");
            while (RT > 0)
            {
                RT -= l[i];
                if (RT >= 0)
                {
                    Build(l[i], conf.ExtensionNames[i]);
                    expan.Add(iteminprod.Clone());
                    iteminprod = null;
                    TTC        = 0;
                    selfimprove();
                    i++;
                }
                if (i >= conf.ExtensionNames.Count)
                {
                    i = 0;
                }
            }
        }
        public void DO()
        {
            string r = " ";

            while (!((r == "a" && lv < conf.AGIMaxLevel) || r == "u"))
            {
                Sidewriter.write("Elige a:automejora, u: construir unidad");
                r = Console.ReadLine();
                if (r == "a")
                {
                    if (lv < conf.AGIMaxLevel)
                    {
                        selfimprove();
                    }
                    else
                    {
                        Sidewriter.write("AGI ya esta en su maximo nivel");
                        r = "u";
                    }
                }
                if (r == "u")
                {
                    SideWriter.Write("AGI: Menu de Produccion");
                    SideWriter.WriteFromFile("AGIunitsexplanation.txt");
                    string t = Reader.TakeAChoice(conf.ShortExtensionNames);
                    SideWriter.Write("Elige el multiplo de tiempo de produccion como double, a mayor tiempo," +
                                     " mayor el nivel (En algunos casos el tiempo de produccion real puede ser muy largo)");
                    double ttc = Reader.ReadDouble();
                    Build(ttc, t);
                }
            }
        }