public override void DoPostConfigureComplete(GameObject go) { GeneratedBuildings.MakeBuildingAlwaysOperational(go); GeneratedBuildings.RegisterLogicPorts(go, OUTPUT_PORT); LogicPressureSensor logicPressureSensor = go.AddOrGet <LogicPressureSensor>(); logicPressureSensor.rangeMin = 0f; logicPressureSensor.rangeMax = 20f; logicPressureSensor.Threshold = 1f; logicPressureSensor.ActivateAboveThreshold = false; logicPressureSensor.manuallyControlled = false; logicPressureSensor.desiredState = Element.State.Gas; }
public override void ConfigureBuildingTemplate(GameObject go, Tag prefab_tag) { GeneratedBuildings.MakeBuildingAlwaysOperational(go); BuildingConfigManager.Instance.IgnoreDefaultKComponent(typeof(RequiresFoundation), prefab_tag); SimCellOccupier simCellOccupier = go.AddOrGet <SimCellOccupier>(); simCellOccupier.setTransparent = true; simCellOccupier.strengthMultiplier = 10f; simCellOccupier.notifyOnMelt = true; go.AddOrGet <TileTemperature>(); go.AddOrGet <KAnimGridTileVisualizer>().blockTileConnectorID = GlassTileConfig.BlockTileConnectorID; go.AddOrGet <BuildingHP>().destroyOnDamaged = true; go.GetComponent <KPrefabID>().AddTag(GameTags.Window, false); }
public override void ConfigureBuildingTemplate(GameObject go, Tag prefab_tag) { GeneratedBuildings.MakeBuildingAlwaysOperational(go); SimCellOccupier simCellOccupier = go.AddOrGet <SimCellOccupier>(); simCellOccupier.doReplaceElement = true; go.AddOrGet <TileTemperature>(); KAnimGridTileVisualizer kAnimGridTileVisualizer = go.AddOrGet <KAnimGridTileVisualizer>(); kAnimGridTileVisualizer.blockTileConnectorID = BlockTileConnectorID; BuildingHP buildingHP = go.AddOrGet <BuildingHP>(); buildingHP.destroyOnDamaged = true; }
public override void ConfigureBuildingTemplate(GameObject go, Tag prefab_tag) { GeneratedBuildings.MakeBuildingAlwaysOperational(go); // varioius configs stolen from meshtile BuildingConfigManager.Instance.IgnoreDefaultKComponent(typeof(RequiresFoundation), prefab_tag); var sco = go.AddOrGet <SimCellOccupier>(); sco.notifyOnMelt = true; sco.doReplaceElement = DrainOptions.Instance.UseSolidDrain; go.AddOrGet <TileTemperature>(); go.AddOrGet <BuildingHP>().destroyOnDamaged = true; // where you add the state machine, i think go.AddOrGet <Drain>(); }
public override void ConfigureBuildingTemplate(GameObject go, Tag prefab_tag) { GeneratedBuildings.MakeBuildingAlwaysOperational(go); LadderHatch ladder = go.AddOrGet <LadderHatch>(); ladder.upwardsMovementSpeedMultiplier = 1f; ladder.downwardsMovementSpeedMultiplier = 1f; BuildingConfigManager.Instance.IgnoreDefaultKComponent(typeof(RequiresFoundation), prefab_tag); SimCellOccupier simCellOccupier = go.AddOrGet <SimCellOccupier>(); simCellOccupier.doReplaceElement = false; go.AddOrGet <AnimTileable>(); }
public override void ConfigureBuildingTemplate(GameObject go, Tag prefab_tag) { GeneratedBuildings.MakeBuildingAlwaysOperational(go); BuildingConfigManager.Instance.IgnoreDefaultKComponent(typeof(RequiresFoundation), prefab_tag); ValveBase valveBase = go.AddOrGet <ValveBase>(); valveBase.conduitType = CONDUIT_TYPE; valveBase.maxFlow = 10f; go.AddOrGet <Valve>(); Workable workable = go.AddOrGet <Workable>(); workable.workTime = 5f; }
public override void ConfigureBuildingTemplate(GameObject go, Tag prefab_tag) { GeneratedBuildings.MakeBuildingAlwaysOperational(go); go.AddOrGet <ConveyorDropoff>(); go.AddOrGet <SolidConduitConsumer>(); var defaultStorage = BuildingTemplates.CreateDefaultStorage(go); defaultStorage.capacityKg = 100f; defaultStorage.showInUI = false; defaultStorage.allowItemRemoval = false; go.AddOrGet <SimpleVent>(); }
public override void DoPostConfigureComplete(GameObject go) { GeneratedBuildings.MakeBuildingAlwaysOperational(go); LogicPorts logicPorts = go.AddOrGet <LogicPorts>(); logicPorts.inputPortInfo = null; logicPorts.outputPortInfo = new LogicPorts.Port[1] { OUTPUT_PORT }; LogicScheduleSensor logicScheduleSensor = go.AddOrGet <LogicScheduleSensor>(); logicScheduleSensor.manuallyControlled = false; }
public override void ConfigureBuildingTemplate(GameObject go, Tag prefab_tag) { GeneratedBuildings.MakeBuildingAlwaysOperational(go); BuildingConfigManager.Instance.IgnoreDefaultKComponent(typeof(RequiresFoundation), prefab_tag); SimCellOccupier simCellOccupier = go.AddOrGet <SimCellOccupier>(); simCellOccupier.doReplaceElement = true; simCellOccupier.strengthMultiplier = 1.5f; simCellOccupier.movementSpeedMultiplier = DUPLICANTSTATS.MOVEMENT.BONUS_2; simCellOccupier.notifyOnMelt = true; go.AddOrGet <ForceFieldTile>(); //go.AddOrGet<KAnimGridTileVisualizer>().blockTileConnectorID = TileConfig.BlockTileConnectorID; go.AddOrGet <BuildingHP>().destroyOnDamaged = true; }
public override void ConfigureBuildingTemplate(GameObject go, Tag prefab_tag) { GeneratedBuildings.MakeBuildingAlwaysOperational(go); BuildingConfigManager.Instance.IgnoreDefaultKComponent(typeof(RequiresFoundation), prefab_tag); SimCellOccupier simCellOccupier = go.AddOrGet <SimCellOccupier>(); simCellOccupier.doReplaceElement = false; go.AddOrGet <TileTemperature>(); KAnimGridTileVisualizer kAnimGridTileVisualizer = go.AddOrGet <KAnimGridTileVisualizer>(); kAnimGridTileVisualizer.blockTileConnectorID = BlockTileConnectorID; BuildingHP buildingHP = go.AddOrGet <BuildingHP>(); buildingHP.destroyOnDamaged = true; }
// Token: 0x06000018 RID: 24 RVA: 0x00002620 File Offset: 0x00000820 public override void ConfigureBuildingTemplate(GameObject go, Tag prefabTag) { GeneratedBuildings.MakeBuildingAlwaysOperational(go); ConduitConsumer conduitConsumer = go.AddOrGet <ConduitConsumer>(); conduitConsumer.conduitType = ConduitType.Liquid; conduitConsumer.consumptionRate = 10f; conduitConsumer.capacityKG = 20f; conduitConsumer.forceAlwaysSatisfied = true; SolidConduitDispenser solidConduitDispenser = go.AddOrGet <SolidConduitDispenser>(); solidConduitDispenser.alwaysDispense = true; solidConduitDispenser.elementFilter = null; BuildingTemplates.CreateDefaultStorage(go); }
public override void ConfigureBuildingTemplate(GameObject go, Tag prefab_tag) { go.AddOrGet <ZTransporter>().SetLocalAndExpectedID("SolidSender", "SolidRecver"); go.AddOrGet <ZConfigButton>(); go.AddOrGet <OperationalGlueShimThing>(); GeneratedBuildings.MakeBuildingAlwaysOperational(go); go.AddOrGet <SolidConduitConsumer>(); Storage defaultStorage = BuildingTemplates.CreateDefaultStorage(go, false); defaultStorage.capacityKg = 100f; defaultStorage.showInUI = true; defaultStorage.allowItemRemoval = false; go.AddOrGet <ObjectSender>().autoSend = true; }
public override void ConfigureBuildingTemplate(GameObject go, Tag prefab_tag) { GeneratedBuildings.MakeBuildingAlwaysOperational(go); BuildingConfigManager.Instance.IgnoreDefaultKComponent(typeof(RequiresFoundation), prefab_tag); SimCellOccupier simCellOccupier = go.AddOrGet <SimCellOccupier>(); simCellOccupier.movementSpeedMultiplier = DUPLICANTSTATS.MOVEMENT.BONUS_3; simCellOccupier.notifyOnMelt = true; go.AddOrGet <TileTemperature>(); KAnimGridTileVisualizer kAnimGridTileVisualizer = go.AddOrGet <KAnimGridTileVisualizer>(); kAnimGridTileVisualizer.blockTileConnectorID = BlockTileConnectorID; BuildingHP buildingHP = go.AddOrGet <BuildingHP>(); buildingHP.destroyOnDamaged = true; }
public static void ConfigureTileBuildingTemplate(GameObject go, Tag prefab_tag) { GeneratedBuildings.MakeBuildingAlwaysOperational(go); BuildingConfigManager.Instance.IgnoreDefaultKComponent(typeof(RequiresFoundation), prefab_tag); SimCellOccupier simCellOccupier = go.AddOrGet <SimCellOccupier>(); simCellOccupier.movementSpeedMultiplier = DUPLICANTSTATS.MOVEMENT.BONUS_2; simCellOccupier.strengthMultiplier = 1.5f; simCellOccupier.doReplaceElement = true; simCellOccupier.setTransparent = true; go.AddOrGet <TileTemperature>(); go.AddOrGet <KAnimGridTileVisualizer>().blockTileConnectorID = GlassTileConfig.BlockTileConnectorID; go.AddOrGet <BuildingHP>().destroyOnDamaged = true; go.GetComponent <KPrefabID>().AddTag(GameTags.Window, false); }
public static void ConfigureBuildingTemplate(GameObject go, Tag prefab_tag, bool makeSimpleDef = true) { GeneratedBuildings.MakeBuildingAlwaysOperational(go); BuildingConfigManager.Instance.IgnoreDefaultKComponent(typeof(RequiresFoundation), prefab_tag); SimCellOccupier simCellOccupier = go.AddOrGet <SimCellOccupier>(); if (!makeSimpleDef) { simCellOccupier.setLiquidImpermeable = true; simCellOccupier.setGasImpermeable = true; } simCellOccupier.doReplaceElement = makeSimpleDef; simCellOccupier.notifyOnMelt = true; go.AddOrGet <Insulator>(); go.AddOrGet <TileTemperature>(); go.AddOrGet <BuildingHP>().destroyOnDamaged = true; }
public override void ConfigureBuildingTemplate(GameObject go, Tag prefab_tag) { GeneratedBuildings.MakeBuildingAlwaysOperational(go); go.AddOrGet <LoopingSounds>(); go.AddOrGet <Exhaust>(); Vent vent = go.AddOrGet <Vent>(); vent.conduitType = ConduitType.Gas; vent.endpointType = Endpoint.Sink; vent.overpressureMass = 400f; ConduitConsumer conduitConsumer = go.AddOrGet <ConduitConsumer>(); conduitConsumer.conduitType = ConduitType.Gas; conduitConsumer.ignoreMinMassCheck = true; BuildingTemplates.CreateDefaultStorage(go, false).showInUI = true; go.AddOrGet <SimpleVent>(); }
public override void ConfigureBuildingTemplate(GameObject go, Tag prefab_tag) { GeneratedBuildings.MakeBuildingAlwaysOperational(go); BuildingConfigManager.Instance.IgnoreDefaultKComponent(typeof(RequiresFoundation), prefab_tag); ValveBase valveBase = go.AddOrGet<ValveBase>(); valveBase.conduitType = ConduitType.Liquid; valveBase.maxFlow = 10f; valveBase.animFlowRanges = new ValveBase.AnimRangeInfo[3] { new ValveBase.AnimRangeInfo(3f, "lo"), new ValveBase.AnimRangeInfo(7f, "med"), new ValveBase.AnimRangeInfo(10f, "hi") }; go.AddOrGet<Valve>(); Workable workable = go.AddOrGet<Workable>(); workable.workTime = 5f; }
public override void ConfigureBuildingTemplate(GameObject go, Tag prefab_tag) { go.AddOrGet <ZTransporter>().SetLocalAndExpectedID("SolidRecver", "SolidSender"); go.AddOrGet <ZConfigButton>(); go.AddOrGet <OperationalGlueShimThing>(); GeneratedBuildings.MakeBuildingAlwaysOperational(go); Storage storage = go.AddOrGet <Storage>(); storage.capacityKg = 1000f; storage.showInUI = true; storage.showDescriptor = true; storage.onlyTransferFromLowerPriority = true; storage.allowItemRemoval = true; }
public override void ConfigureBuildingTemplate(GameObject go, Tag prefab_tag) { GeneratedBuildings.MakeBuildingAlwaysOperational(go); // where you add the state machine, i think var rh = go.AddOrGet <RadiatesHeat>(); rh.emissivity = .77f; rh.surface_area = 1f; // tile stuff BuildingConfigManager.Instance.IgnoreDefaultKComponent(typeof(RequiresFoundation), prefab_tag); var simCellOccupier = go.AddOrGet <SimCellOccupier>(); simCellOccupier.doReplaceElement = true; simCellOccupier.strengthMultiplier = 1.5f; simCellOccupier.movementSpeedMultiplier = DUPLICANTSTATS.MOVEMENT.BONUS_2; simCellOccupier.notifyOnMelt = true; go.AddOrGet <TileTemperature>(); go.AddOrGet <KAnimGridTileVisualizer>().blockTileConnectorID = TileConfig.BlockTileConnectorID; go.AddOrGet <BuildingHP>().destroyOnDamaged = true; }
public override void ConfigureBuildingTemplate(GameObject go, Tag prefab_tag) { GeneratedBuildings.MakeBuildingAlwaysOperational(go); BuildingConfigManager.Instance.IgnoreDefaultKComponent(typeof(RequiresFoundation), prefab_tag); ValveBase valveBase = go.AddOrGet <ValveBase>(); valveBase.conduitType = CONDUIT_TYPE; //Begin with a maxFlow of 1KG as if the pressurized integration was not a part of this building. The proper flow will be set through Harmony on spawn. valveBase.maxFlow = 3f; valveBase.animFlowRanges = new ValveBase.AnimRangeInfo[3] { new ValveBase.AnimRangeInfo((0.25f * 3f), "lo"), new ValveBase.AnimRangeInfo((0.5f * 3f), "med"), new ValveBase.AnimRangeInfo((0.75f * 3f), "hi") }; go.AddOrGet <TogglableValve>(); Workable workable = go.AddOrGet <Workable>(); workable.workTime = 5f; }
public override void ConfigureBuildingTemplate(GameObject go, Tag prefab_tag) { GeneratedBuildings.MakeBuildingAlwaysOperational(go); BuildingConfigManager.Instance.IgnoreDefaultKComponent(typeof(RequiresFoundation), prefab_tag); SimCellOccupier simCellOccupier = go.AddOrGet <SimCellOccupier>(); simCellOccupier.doReplaceElement = true; simCellOccupier.notifyOnMelt = true; go.AddOrGet <TileTemperature>(); BuildingTemplates.CreateDefaultStorage(go, false).SetDefaultStoredItemModifiers(Storage.StandardSealedStorage); PlantablePlot plantablePlot = go.AddOrGet <PlantablePlot>(); plantablePlot.occupyingObjectRelativePosition = new Vector3(0.0f, 1f, 0.0f); plantablePlot.AddDepositTag(GameTags.CropSeed); plantablePlot.AddDepositTag(GameTags.WaterSeed); plantablePlot.SetFertilizationFlags(true, false); go.AddOrGet <CopyBuildingSettings>().copyGroupTag = GameTags.Farm; go.AddOrGet <AnimTileable>(); Prioritizable.AddRef(go); }
public static bool Prefix(GameObject go, Tag prefab_tag) { GeneratedBuildings.MakeBuildingAlwaysOperational(go); BuildingConfigManager.Instance.IgnoreDefaultKComponent(typeof(RequiresFoundation), prefab_tag); var valveBase = go.AddOrGet <ValvePressure>(); valveBase.conduitType = ConduitType.Gas; valveBase.maxFlow = CustomizeBuildingsState.StateManager.State.PipeGasMaxPressure; valveBase.animFlowRanges = new ValveBase.AnimRangeInfo[] { new ValveBase.AnimRangeInfo(3f, "lo"), new ValveBase.AnimRangeInfo(7f, "med"), new ValveBase.AnimRangeInfo(10f, "hi") }; go.AddOrGet <Valve>(); Workable workable = go.AddOrGet <Workable>(); workable.workTime = 5f; return(false); }
public override void ConfigureBuildingTemplate(GameObject go, Tag prefab_tag) { GeneratedBuildings.MakeBuildingAlwaysOperational(go); BuildingConfigManager.Instance.IgnoreDefaultKComponent(typeof(RequiresFoundation), prefab_tag); ValveBase valveBase = go.AddOrGet <ValveBase>(); valveBase.conduitType = CONDUIT_TYPE; valveBase.maxFlow = 10f; valveBase.animFlowRanges = new ValveBase.AnimRangeInfo[3] { new ValveBase.AnimRangeInfo((10f * 0.25f), "lo"), new ValveBase.AnimRangeInfo((10f * 0.5f), "med"), new ValveBase.AnimRangeInfo((10f * 0.75f), "hi") }; go.AddOrGet <Valve>(); Tintable tint = go.AddOrGet <Tintable>(); Tintable.AddToTintTable(ID, new Color32(255, 40, 40, 255)); Workable workable = go.AddOrGet <Workable>(); workable.workTime = 5f; }
public override void ConfigureBuildingTemplate(GameObject go, Tag prefab_tag) { go.AddOrGet <ZTransporter>().SetLocalAndExpectedID("SolidRecver", "SolidSender"); go.AddOrGet <ZConfigButton>(); go.AddOrGet <OperationalGlueShimThing>(); List <Tag> tagList = new List <Tag>(); tagList.AddRange((IEnumerable <Tag>)STORAGEFILTERS.NOT_EDIBLE_SOLIDS); tagList.AddRange((IEnumerable <Tag>)STORAGEFILTERS.FOOD); Storage storage = go.AddOrGet <Storage>(); storage.capacityKg = 100f; storage.showInUI = true; storage.showDescriptor = true; storage.storageFilters = tagList; storage.allowItemRemoval = false; GeneratedBuildings.MakeBuildingAlwaysOperational(go); go.AddOrGet <ObjectRecver>(); }
public override void ConfigureBuildingTemplate(GameObject go, Tag prefab_tag) { BuildingConfigManager.Instance.IgnoreDefaultKComponent(typeof(RequiresFoundation), prefab_tag); GeneratedBuildings.MakeBuildingAlwaysOperational(go); }
public override void DoPostConfigureComplete(GameObject go) { GeneratedBuildings.MakeBuildingAlwaysOperational(go); go.AddOrGet <LogicMemory>(); GeneratedBuildings.RegisterLogicPorts(go, INPUT_PORTS, OUTPUT_PORTS); }
public override void DoPostConfigureComplete(GameObject go) { GeneratedBuildings.MakeBuildingAlwaysOperational(go); }
public override void ConfigureBuildingTemplate(GameObject go, Tag prefab_tag) { GeneratedBuildings.MakeBuildingAlwaysOperational(go); go.AddOrGet <Stair>(); go.AddOrGet <AnimStairs>(); }
public override void ConfigureBuildingTemplate(GameObject go, Tag prefab_tag) { GeneratedBuildings.MakeBuildingAlwaysOperational(go); }
public override void ConfigureBuildingTemplate(GameObject go, Tag prefab_tag) { GeneratedBuildings.MakeBuildingAlwaysOperational(go); // where you add the state machine, i think go.AddOrGet<Radiator>(); }