public override void DoPostConfigureComplete(GameObject go) { SolidBooster solidBooster = go.AddOrGet <SolidBooster>(); solidBooster.mainEngine = false; solidBooster.efficiency = ROCKETRY.ENGINE_EFFICIENCY.BOOSTER; solidBooster.fuelTag = ElementLoader.FindElementByHash(SimHashes.Iron).tag; Storage storage = go.AddOrGet <Storage>(); storage.SetDefaultStoredItemModifiers(Storage.StandardSealedStorage); storage.capacityKg = 800f; solidBooster.fuelStorage = storage; ManualDeliveryKG manualDeliveryKG = go.AddComponent <ManualDeliveryKG>(); manualDeliveryKG.SetStorage(storage); manualDeliveryKG.requestedItemTag = solidBooster.fuelTag; manualDeliveryKG.refillMass = storage.capacityKg / 2f; manualDeliveryKG.capacity = storage.capacityKg / 2f; manualDeliveryKG.choreTypeIDHash = Db.Get().ChoreTypes.MachineFetch.IdHash; ManualDeliveryKG manualDeliveryKG2 = go.AddComponent <ManualDeliveryKG>(); manualDeliveryKG2.SetStorage(storage); manualDeliveryKG2.requestedItemTag = ElementLoader.FindElementByHash(SimHashes.OxyRock).tag; manualDeliveryKG2.refillMass = storage.capacityKg / 2f; manualDeliveryKG2.capacity = storage.capacityKg / 2f; manualDeliveryKG2.choreTypeIDHash = Db.Get().ChoreTypes.MachineFetch.IdHash; RocketModule rocketModule = go.AddOrGet <RocketModule>(); rocketModule.SetBGKAnim(Assets.GetAnim("rocket_solid_booster_bg_kanim")); EntityTemplates.ExtendBuildingToRocketModule(go); }
public override void ConfigureBuildingTemplate(GameObject go, Tag prefab_tag) { BuildingConfigManager.Instance.IgnoreDefaultKComponent(typeof(RequiresFoundation), prefab_tag); go.AddOrGet <LoopingSounds>(); go.GetComponent <KPrefabID>().AddTag(RoomConstraints.ConstraintTags.IndustrialMachinery, false); RocketModule rocketModule = go.AddOrGet <RocketModule>(); rocketModule.SetBGKAnim(Assets.GetAnim("rocket_command_module_bg_kanim")); LaunchConditionManager launchConditionManager = go.AddOrGet <LaunchConditionManager>(); launchConditionManager.triggerPort = "TriggerLaunch"; launchConditionManager.statusPort = "LaunchReady"; Storage storage = go.AddOrGet <Storage>(); storage.SetDefaultStoredItemModifiers(new List <Storage.StoredItemModifier> { Storage.StoredItemModifier.Hide, Storage.StoredItemModifier.Seal, Storage.StoredItemModifier.Insulate }); go.AddOrGet <CommandModule>(); go.AddOrGet <CommandModuleWorkable>(); go.AddOrGet <MinionStorage>(); go.AddOrGet <ArtifactFinder>(); go.AddOrGet <LaunchableRocket>(); }
public override void DoPostConfigureComplete(GameObject go) { Storage storage = go.AddOrGet <Storage>(); storage.capacityKg = 2700f; storage.allowSublimation = false; storage.SetDefaultStoredItemModifiers(new List <Storage.StoredItemModifier> { Storage.StoredItemModifier.Hide, Storage.StoredItemModifier.Seal, Storage.StoredItemModifier.Insulate }); OxidizerTank oxidizerTank = go.AddOrGet <OxidizerTank>(); oxidizerTank.storage = storage; go.AddOrGet <DropToUserCapacity>(); ConduitConsumer conduitConsumer = go.AddOrGet <ConduitConsumer>(); conduitConsumer.conduitType = ConduitType.Liquid; conduitConsumer.consumptionRate = 10f; conduitConsumer.capacityTag = ElementLoader.FindElementByHash(SimHashes.LiquidOxygen).tag; conduitConsumer.capacityKG = storage.capacityKg; conduitConsumer.forceAlwaysSatisfied = true; conduitConsumer.wrongElementResult = ConduitConsumer.WrongElementResult.Dump; RocketModule rocketModule = go.AddOrGet <RocketModule>(); rocketModule.SetBGKAnim(Assets.GetAnim("rocket_oxidizer_tank_liquid_bg_kanim")); EntityTemplates.ExtendBuildingToRocketModule(go); }
public override void DoPostConfigureComplete(GameObject go) { Storage storage = go.AddOrGet <Storage>(); storage.capacityKg = 2700f; storage.allowSublimation = false; storage.SetDefaultStoredItemModifiers(new List <Storage.StoredItemModifier> { Storage.StoredItemModifier.Hide, Storage.StoredItemModifier.Seal, Storage.StoredItemModifier.Insulate }); OxidizerTank oxidizerTank = go.AddOrGet <OxidizerTank>(); oxidizerTank.storage = storage; go.AddOrGet <DropToUserCapacity>(); ManualDeliveryKG manualDeliveryKG = go.AddOrGet <ManualDeliveryKG>(); manualDeliveryKG.SetStorage(storage); manualDeliveryKG.requestedItemTag = ElementLoader.FindElementByHash(SimHashes.OxyRock).tag; manualDeliveryKG.refillMass = storage.capacityKg; manualDeliveryKG.capacity = storage.capacityKg; manualDeliveryKG.operationalRequirement = FetchOrder2.OperationalRequirement.None; manualDeliveryKG.choreTypeIDHash = Db.Get().ChoreTypes.MachineFetch.IdHash; RocketModule rocketModule = go.AddOrGet <RocketModule>(); rocketModule.SetBGKAnim(Assets.GetAnim("rocket_oxidizer_tank_bg_kanim")); EntityTemplates.ExtendBuildingToRocketModule(go); }
public override void DoPostConfigureComplete(GameObject go) { FuelTank fuelTank = go.AddOrGet <FuelTank>(); fuelTank.capacityKg = fuelTank.minimumLaunchMass; fuelTank.SetDefaultStoredItemModifiers(new List <Storage.StoredItemModifier> { Storage.StoredItemModifier.Hide, Storage.StoredItemModifier.Seal, Storage.StoredItemModifier.Insulate }); go.AddOrGet <DropToUserCapacity>(); ManualDeliveryKG manualDeliveryKG = go.AddOrGet <ManualDeliveryKG>(); manualDeliveryKG.SetStorage(fuelTank); manualDeliveryKG.refillMass = fuelTank.capacityKg; manualDeliveryKG.capacity = fuelTank.capacityKg; manualDeliveryKG.operationalRequirement = FetchOrder2.OperationalRequirement.None; manualDeliveryKG.choreTypeIDHash = Db.Get().ChoreTypes.MachineFetch.IdHash; ConduitConsumer conduitConsumer = go.AddOrGet <ConduitConsumer>(); conduitConsumer.conduitType = ConduitType.Liquid; conduitConsumer.consumptionRate = 10f; conduitConsumer.capacityTag = GameTags.Liquid; conduitConsumer.capacityKG = fuelTank.capacityKg; conduitConsumer.forceAlwaysSatisfied = true; conduitConsumer.wrongElementResult = ConduitConsumer.WrongElementResult.Store; RocketModule rocketModule = go.AddOrGet <RocketModule>(); rocketModule.SetBGKAnim(Assets.GetAnim("rocket_liquid_fuel_tank_bg_kanim")); EntityTemplates.ExtendBuildingToRocketModule(go); }
public override void DoPostConfigureComplete(GameObject go) { RocketEngine rocketEngine = go.AddOrGet <RocketEngine>(); rocketEngine.fuelTag = ElementLoader.FindElementByHash(SimHashes.Petroleum).tag; rocketEngine.efficiency = ROCKETRY.ENGINE_EFFICIENCY.MEDIUM; rocketEngine.explosionEffectHash = SpawnFXHashes.MeteorImpactDust; EntityTemplates.ExtendBuildingToRocketModule(go); RocketModule rocketModule = go.AddOrGet <RocketModule>(); rocketModule.SetBGKAnim(Assets.GetAnim("rocket_petroleum_engine_bg_kanim")); }
public override void DoPostConfigureComplete(GameObject go) { RocketEngine rocketEngine = go.AddOrGet <RocketEngine>(); rocketEngine.fuelTag = ElementLoader.FindElementByHash(SimHashes.LiquidHydrogen).tag; rocketEngine.efficiency = ROCKETRY.ENGINE_EFFICIENCY.STRONG; rocketEngine.explosionEffectHash = SpawnFXHashes.MeteorImpactDust; rocketEngine.exhaustElement = SimHashes.Steam; rocketEngine.exhaustTemperature = 2000f; EntityTemplates.ExtendBuildingToRocketModule(go); RocketModule rocketModule = go.AddOrGet <RocketModule>(); rocketModule.SetBGKAnim(Assets.GetAnim("rocket_hydrogen_engine_bg_kanim")); }
public override void DoPostConfigureComplete(GameObject go) { CargoBay cargoBay = go.AddOrGet <CargoBay>(); cargoBay.storage = go.AddOrGet <Storage>(); cargoBay.storageType = CargoBay.CargoType.solids; cargoBay.storage.capacityKg = 1000f; cargoBay.storage.SetDefaultStoredItemModifiers(Storage.StandardSealedStorage); RocketModule rocketModule = go.AddOrGet <RocketModule>(); rocketModule.SetBGKAnim(Assets.GetAnim("rocket_storage_solid_bg_kanim")); EntityTemplates.ExtendBuildingToRocketModule(go); go.AddOrGet <SolidConduitDispenser>(); }
public override void ConfigureBuildingTemplate(GameObject go, Tag prefab_tag) { BuildingConfigManager.Instance.IgnoreDefaultKComponent(typeof(RequiresFoundation), prefab_tag); go.AddOrGet <LoopingSounds>(); go.GetComponent <KPrefabID>().AddTag(RoomConstraints.ConstraintTags.IndustrialMachinery, false); RocketModule rocketModule = go.AddOrGet <RocketModule>(); rocketModule.SetBGKAnim(Assets.GetAnim("rocket_research_module_bg_kanim")); go.AddOrGet <ResearchModule>(); BuildingAttachPoint buildingAttachPoint = go.AddOrGet <BuildingAttachPoint>(); buildingAttachPoint.points = new BuildingAttachPoint.HardPoint[1] { new BuildingAttachPoint.HardPoint(new CellOffset(0, 5), GameTags.Rocket, null) }; }
public override void DoPostConfigureComplete(GameObject go) { CargoBay cargoBay = go.AddOrGet <CargoBay>(); cargoBay.storage = go.AddOrGet <Storage>(); cargoBay.storageType = CargoBay.CargoType.liquids; cargoBay.storage.capacityKg = 1000f; cargoBay.storage.SetDefaultStoredItemModifiers(Storage.StandardSealedStorage); RocketModule rocketModule = go.AddOrGet <RocketModule>(); rocketModule.SetBGKAnim(Assets.GetAnim("rocket_storage_liquid_bg_kanim")); ConduitDispenser conduitDispenser = go.AddOrGet <ConduitDispenser>(); conduitDispenser.conduitType = ConduitType.Liquid; conduitDispenser.storage = cargoBay.storage; }