Got the close button working; now converting from a cached anonymous method to an inherited method. TODO: VOID_ConfigModule.
[VOID.git] / API / VOIDCore.cs
blob:a/API/VOIDCore.cs -> blob:b/API/VOIDCore.cs
--- a/API/VOIDCore.cs
+++ b/API/VOIDCore.cs
@@ -30,7 +30,6 @@
 using KSP;
 using System;
 using System.Collections.Generic;
-using ToadicusTools;
 using UnityEngine;
 
 namespace VOID
@@ -40,48 +39,50 @@
 		public const double Constant_G = 6.674e-11;
 		public const int CONFIG_VERSION = 2;
 
-		public abstract int configVersion { get; }
+		public abstract int ConfigVersion { get; }
 		public virtual bool configNeedsUpdate { get; set; }
 
-		public abstract int windowID { get; }
+		public abstract string SceneKey { get; }
+
+		public abstract int WindowID { get; }
 		public abstract bool configDirty { get; set; }
 		public abstract bool powerAvailable	{ get; protected set; }
 
-		public abstract List<IVOID_Module> Modules { get; }
+		public abstract IList<IVOID_Module> Modules { get; }
 
-		public abstract float updateTimer { get; protected set; }
-		public abstract double updatePeriod { get; }
+		public abstract float UpdateTimer { get; protected set; }
+		public abstract double UpdatePeriod { get; }
 
 		public virtual float saveTimer { get; protected set; }
 
 		public abstract GUISkin Skin { get; }
 
 		public abstract CelestialBody HomeBody { get; }
-		public abstract List<CelestialBody> allBodies { get; }
-		public abstract List<CelestialBody> sortedBodyList { get; protected set; }
+		public abstract IList<CelestialBody> AllBodies { get; }
+		public abstract List<CelestialBody> SortedBodyList { get; protected set; }
 
-		public abstract List<VesselType> allVesselTypes { get; }
-
+		public abstract VesselType[] AllVesselTypes { get; protected set; }
 		public abstract Stage LastStage { get; protected set; }
 		public abstract Stage[] Stages { get; protected set; }
 
+		public abstract VOID_TimeScale TimeScale { get; protected set; }
+
 		public abstract event VOIDEventHandler onApplicationQuit;
 		public abstract event VOIDEventHandler onSkinChanged;
+		public abstract event VOIDEventHandler onUpdate;
 
 		public virtual void OnGUI() {}
 
 		public override void LoadConfig()
 		{
-			var config = KSP.IO.PluginConfiguration.CreateForType<VOIDCore>(null);
-
 			base.LoadConfig();
 		}
 
 		public abstract void SaveConfig();
 
-		public override void _SaveToConfig(KSP.IO.PluginConfiguration config)
+		public override void Save(KSP.IO.PluginConfiguration config, string sceneKey)
 		{
-			base._SaveToConfig(config);
+			base.Save(config, sceneKey);
 		}
 	}