public void DumpPartToBuffer(StringBuilder buffer, String prefix, List<PartSim> allParts = null)
{
buffer.Append(prefix);
buffer.Append(name);
buffer.AppendFormat(":[id = {0:d}, decouple = {1:d}, invstage = {2:d}", partId, decoupledInStage, inverseStage);
buffer.AppendFormat(", vesselName = '{0}'", vesselName);
buffer.AppendFormat(", vesselType = {0}", SimManager.GetVesselTypeString(vesselType));
buffer.AppendFormat(", initialVesselName = '{0}'", initialVesselName);
buffer.AppendFormat(", fuelCF = {0}", fuelCrossFeed);
buffer.AppendFormat(", noCFNKey = '{0}'", noCrossFeedNodeKey);
buffer.AppendFormat(", isSep = {0}", isSepratron);
foreach (int type in resources.Types)
buffer.AppendFormat(", {0} = {1:g6}", ResourceContainer.GetResourceName(type), resources[type]);
if (attachNodes.Count > 0)
{
buffer.Append(", attached = <");
attachNodes[0].DumpToBuffer(buffer);
for (int i = 1; i < attachNodes.Count; i++)
{
buffer.Append(", ");
attachNodes[i].DumpToBuffer(buffer);
}
buffer.Append(">");
}
// Add more info here
buffer.Append("]\n");
if (allParts != null)
{
String newPrefix = prefix + " ";
foreach (PartSim partSim in allParts)
{
if (partSim.parent == this)
partSim.DumpPartToBuffer(buffer, newPrefix, allParts);
}
}
}