private static List <ISpaceCraft> BuildFalconHeavy(IMassiveBody planet, MissionConfig config, string craftDirectory) { var demoSat = new DemoSat(craftDirectory, planet.Position + new DVector2(0, -planet.SurfaceRadius) + config.PositionOffset, planet.Velocity + new DVector2(-400, 0) + config.VelocityOffset, config.PayloadMass); var fairingLeft = new Fairing(craftDirectory, demoSat.Position, DVector2.Zero, true); var fairingRight = new Fairing(craftDirectory, demoSat.Position, DVector2.Zero, false); demoSat.AttachFairings(fairingLeft, fairingRight); var fhS1 = new FHS1(craftDirectory, DVector2.Zero, DVector2.Zero); var fhS2 = new FHS2(craftDirectory, DVector2.Zero, DVector2.Zero); var fhLeftBooster = new FHBooster(craftDirectory, 1, DVector2.Zero, DVector2.Zero); var fhRightBooster = new FHBooster(craftDirectory, 2, DVector2.Zero, DVector2.Zero); demoSat.AddChild(fhS2); fhS2.SetParent(demoSat); fhS2.AddChild(fhS1); fhS1.SetParent(fhS2); fhS1.AddChild(fhLeftBooster); fhS1.AddChild(fhRightBooster); fhLeftBooster.SetParent(fhS1); fhRightBooster.SetParent(fhS1); return(new List <ISpaceCraft> { demoSat, fhS2, fhS1, fhLeftBooster, fhRightBooster }); }
private static List <ISpaceCraft> BuildGenericF9(IMassiveBody planet, MissionConfig config, string craftDirectory) { var demoSat = new DemoSat(craftDirectory, planet.Position + new DVector2(0, -planet.SurfaceRadius) + config.PositionOffset, planet.Velocity, config.PayloadMass); var fairingLeft = new Fairing(craftDirectory, demoSat.Position, DVector2.Zero, true); var fairingRight = new Fairing(craftDirectory, demoSat.Position, DVector2.Zero, false); demoSat.AttachFairings(fairingLeft, fairingRight); var f9S1 = new F9S1(craftDirectory, DVector2.Zero, DVector2.Zero); var f9S2 = new F9S2(craftDirectory, DVector2.Zero, DVector2.Zero, 11.2); demoSat.AddChild(f9S2); f9S2.SetParent(demoSat); f9S2.AddChild(f9S1); f9S1.SetParent(f9S2); return(new List <ISpaceCraft> { demoSat, f9S2, f9S1, fairingLeft, fairingRight }); }