public StarSystem(Configuration configuration, string primaryDescriptor) { _configuration = configuration; Information = new TravInfo(_configuration); var ComLumAddFromPrim = 0.0; SystemHabitability = 0; systemType = SystemType.SOLO; Primary = new Star(configuration, Star.CharToType(primaryDescriptor[0]), primaryDescriptor[1], primaryDescriptor[2]); Primary.BuildSystem(ComLumAddFromPrim); FleshOut(); }
public StarSystem(Configuration configuration) { _configuration = configuration; Information = new TravInfo(_configuration); SystemHabitability = 0; var ComLumAddFromPrimary = 0.0; if (_configuration.Generation == GenerationType.FULL) { systemType = Nature(false); Primary = new Star(configuration); if (systemType == SystemType.TRINARY) { Primary.NumCompanions = 2; } else if (systemType == SystemType.BINARY) { Primary.NumCompanions = 1; } Primary.BuildSystem(ComLumAddFromPrimary); for (var i = 0; i < Primary.NumCompanions; i++) { var companion = new CompanionStar(configuration); Primary.Companions.Add(companion); var retry = false; do { for (var j = 0; j < i - 1; j++) { if (Primary.Companions[i].OrbitNum == Primary.Companions[j].OrbitNum) { Primary.Companions.Remove(companion); companion = new CompanionStar(configuration); Primary.Companions.Add(companion); retry = true; } } } while (retry); Primary.AvaialbleOribits(i); } FleshOut(); // Get the BG string BG = string.Format("{0}{1}", Primary.Count(Planet.WorldType.PLANETOID), Primary.Count(Planet.WorldType.LGG) + Primary.Count(Planet.WorldType.SGG)); } else { Generate(); } }
public StarSystem(Configuration configuration, string primaryDescriptor, string secondaryDescriptor) { _configuration = configuration; Information = new TravInfo(_configuration); var ComLumAddFromPrim = 0.0; SystemHabitability = 0; systemType = SystemType.BINARY; Primary = new Star(configuration, Star.CharToType(primaryDescriptor[0]), primaryDescriptor[1], primaryDescriptor[2]); Primary.BuildSystem(ComLumAddFromPrim); Primary.NumCompanions = 1; var companion = new CompanionStar(configuration, Star.CharToType(secondaryDescriptor[0]), secondaryDescriptor[1], secondaryDescriptor[2]); Primary.Companions.Add(companion); Primary.AvaialbleOribits(0); FleshOut(); }
public StarSystem(Configuration configuration, string primaryDescriptor, string secondaryDescriptor, string trinaryDescriptor) { _configuration = configuration; Information = new TravInfo(_configuration); var ComLumAddFromPrim = 0.0; SystemHabitability = 0; systemType = SystemType.TRINARY; Primary = new Star(configuration, Star.CharToType(primaryDescriptor[0]), primaryDescriptor[1], primaryDescriptor[2]); Primary.BuildSystem(ComLumAddFromPrim); Primary.NumCompanions = 2; var companion = new CompanionStar(configuration, Star.CharToType(secondaryDescriptor[0]), secondaryDescriptor[1], secondaryDescriptor[2]); Primary.Companions.Add(companion); companion = new CompanionStar(configuration, Star.CharToType(trinaryDescriptor[0]), trinaryDescriptor[1], trinaryDescriptor[2]); Primary.Companions.Add(companion); var retry = false; { retry = false; // Stop two companions existing iu the same orbit if (Primary.Companions[0].OrbitNum == Primary.Companions[1].OrbitNum) { Primary.Companions.RemoveAt(1); companion = new CompanionStar(configuration, Star.CharToType(trinaryDescriptor[0]), trinaryDescriptor[1], trinaryDescriptor[2]); Primary.Companions.Add(companion); retry = true; } } while (retry) { ; } Primary.AvaialbleOribits(0); }