public static void printObj(object obj)
 {
     using (KSP.IO.TextWriter writer = TextWriter.CreateForType <string>("obj.cs"))
     {
         string str = printProperties(obj, TypeDescriptor.GetProperties(obj), 0);
         writer.Write(str);
         MonoBehaviour.print(str);
     }
 }
Beispiel #2
0
        public void SavePartTags()
        {
            TextWriter file = TextWriter.CreateForType <PartCatalog>("catalog.txt");

            foreach (PartTag tag in RootTag.ChildTags)
            {
                tag.writeToFile(file);
            }
            file.Flush();
            file.Close();
        }
Beispiel #3
0
        public static void printPartInfo(AvailablePart part)
        {
            TextWriter file = TextWriter.CreateForType <PartCatalog>("catalogConfig.txt");

            //UnityEngine.Debug.Log(part.partPrefab.);
            //printConfigNode(GameDatabase.Instance.GetConfigNode(part.partUrl),"",file);
            UrlDir.UrlConfig[] configs = GameDatabase.Instance.GetConfigs("PART");
            UrlDir.UrlConfig   config  = Array.Find <UrlDir.UrlConfig>(configs, (c => part.name == c.name.Replace('_', '.')));

            file.WriteLine("New Config: " + config.name);
            file.WriteLine("URL : " + config.url);
            printConfigNode(config.config, " ", file);
            file.Flush();
            file.Close();
        }
Beispiel #4
0
        public static void saveTape(String name, Int32[] tape)
        {
            //find the file and load it. Return false if it does not exist
            //this function will call insertMedia to do the final stuff with the stuff
            TextWriter t = TextWriter.CreateForType <TapeDrive>(name);
            //find the last line that is non-zero
            int index = 1024 * 256 - 1;

            while (tape[index] == 0)
            {
                --index;
            }
            for (int i = 0; i <= index; ++i)
            {
                t.WriteLine(tape[i]);
            }
            t.Close();
        }
        private static void SaveState()
        {
            var writer = TextWriter.CreateForType <Core>("OrbitState.txt");

            foreach (var body in FlightGlobals.Bodies.Where(body => body.orbitDriver != null))
            {
                MonoBehaviour.print("Saving " + body.bodyName);
                var orbit = body.orbit;
                var s     = body.bodyName + " ";
                s += orbit.inclination + " ";
                s += orbit.eccentricity + " ";
                s += orbit.semiMajorAxis + " ";
                s += orbit.LAN + " ";
                s += orbit.argumentOfPeriapsis + " ";
                s += orbit.meanAnomalyAtEpoch + " ";
                s += orbit.epoch + " ";
                s += orbit.referenceBody.bodyName;
                writer.WriteLine(s);
            }
            writer.Flush();
            writer.Close();
            writer.Dispose();
            MonoBehaviour.print("Done saving planetary state");
        }