public static void RemoveVesselModuleFromList(VesselModuleSave vsmModule) //remove vesselmodule from list of loaded modules, called in VSM.destroy { if (VesselModulesLoaded.Contains(vsmModule)) //module should only be in the list once so check { VesselModulesLoaded.Remove(vsmModule); } }
//add vesselmodule to list of loaded modules, called in VSM.Start public static void AddVesselModuleToList(VesselModuleSave vsmModule) { if (!VesselModulesLoaded.Contains(vsmModule)) //module should only be in the list once so check { VesselModulesLoaded.Add(vsmModule); } }
public static void AddVesselModuleToList(VesselModuleSave vsmModule) //add vesselmodule to list of loaded modules, called in VSM.Start { if (!VesselModulesLoaded.Contains(vsmModule)) //module should only be in the list once so check { VesselModulesLoaded.Add(vsmModule); } }
public static ConfigNode GetSaveNode(VesselModuleSave vsm) //return the correct node for an instance of a VesselModuleSave { if (VesselModuleConfigNodes.Where(d => d.Key == vsm.IDType()).Count() >= 1) //does this Mod have a node? { ConfigNode modNode = VesselModuleConfigNodes.Where(d => d.Key == vsm.IDType()).First().Value; if (modNode.HasNode(vsm.Vessel.id.ToString())) //does this vessel exist? { return(modNode.GetNode(vsm.Vessel.id.ToString())); } } return(new ConfigNode("Empty")); //vessel does not exist }
public static void SaveNodeData(VesselModuleSave vsm, ConfigNode node) //take data from VSM module Save routine and write to static data { ConfigNode modNode = new ConfigNode(vsm.IDType()); //make our mod node, name is IDType if (VesselModuleConfigNodes.ContainsKey(vsm.IDType())) //do we already have an entry for this mod? { modNode = VesselModuleConfigNodes[vsm.IDType()]; //yes, refer to existing node } else { VesselModuleConfigNodes.Add(vsm.IDType(), modNode); //no, add mod to our mod list } if (modNode.HasNode(vsm.Vessel.id.ToString())) //is this vessel already existant? { modNode.RemoveNodes(vsm.Vessel.id.ToString()); //remove vessel if it exists, static node has old data in it } node.name = vsm.Vessel.id.ToString(); modNode.AddNode(node); //add node to static data, this adds to VesselModuleConfigNodes via reference }
//take data from VSM module Save routine and write to static data public static void SaveNodeData(VesselModuleSave vsm, ConfigNode node) { ConfigNode modNode = new ConfigNode(vsm.IDType()); //make our mod node, name is IDType if (VesselModuleConfigNodes.ContainsKey(vsm.IDType())) //do we already have an entry for this mod? { modNode = VesselModuleConfigNodes[vsm.IDType()]; //yes, refer to existing node } else { VesselModuleConfigNodes.Add(vsm.IDType(), modNode); //no, add mod to our mod list } if (modNode.HasNode(vsm.vessel.id.ToString())) //is this vessel already existant? { modNode.RemoveNodes(vsm.vessel.id.ToString()); //remove vessel if it exists, static node has old data in it } node.name = vsm.vessel.id.ToString(); modNode.AddNode(node); //add node to static data, this adds to VesselModuleConfigNodes via reference }
//remove vesselmodule from list of loaded modules, called in VSM.destroy public static void RemoveVesselModuleFromList(VesselModuleSave vsmModule) { if (VesselModulesLoaded.Contains(vsmModule)) //module should only be in the list once so check { VesselModulesLoaded.Remove(vsmModule); } }
//return the correct node for an instance of a VesselModuleSave public static ConfigNode GetSaveNode(VesselModuleSave vsm) { if (VesselModuleConfigNodes.Where(d => d.Key == vsm.IDType()).Count() >= 1) //does this Mod have a node? { ConfigNode modNode = VesselModuleConfigNodes.Where(d => d.Key == vsm.IDType()).First().Value; if (modNode.HasNode(vsm.vessel.id.ToString())) //does this vessel exist? { return modNode.GetNode(vsm.vessel.id.ToString()); } } return new ConfigNode("Empty"); //vessel does not exist }