// Token: 0x06000012 RID: 18 RVA: 0x000025CC File Offset: 0x000007CC public static bool Prefix(Terraformer __instance) { SkinnedMeshRenderer[] allComponentsInChildren = __instance.GetAllComponentsInChildren <SkinnedMeshRenderer>(); foreach (SkinnedMeshRenderer skinnedMeshRenderer in allComponentsInChildren) { bool flag = skinnedMeshRenderer.name.Contains("Terraformer_body"); if (flag) { skinnedMeshRenderer.material.color = new Color32(Convert.ToByte(MainPatch.config.Terrafvalue), Convert.ToByte(MainPatch.config.Terrafgvalue), Convert.ToByte(MainPatch.config.Terrabvalue), 1); } bool flag2 = skinnedMeshRenderer.name.Contains("Terraformer_front_01_02"); if (flag2) { skinnedMeshRenderer.material.color = new Color32(Convert.ToByte(MainPatch.config.Terrafvalue), Convert.ToByte(MainPatch.config.Terrafgvalue), Convert.ToByte(MainPatch.config.Terrabvalue), 1); } bool flag3 = skinnedMeshRenderer.name.Contains("Terraformer_front_02_02"); if (flag3) { skinnedMeshRenderer.material.color = new Color32(Convert.ToByte(MainPatch.config.Terrafvalue), Convert.ToByte(MainPatch.config.Terrafgvalue), Convert.ToByte(MainPatch.config.Terrabvalue), 1); } bool flag4 = skinnedMeshRenderer.name.Contains("Terraformer_front"); if (flag4) { skinnedMeshRenderer.material.color = new Color32(Convert.ToByte(MainPatch.config.Terrafvalue), Convert.ToByte(MainPatch.config.Terrafgvalue), Convert.ToByte(MainPatch.config.Terrabvalue), 1); } } return(true); }
public override GameObject getGameObject() { GameObject prefab = CraftHelper.Utils.prefabCopy(TechType.Terraformer); Terraformer trfCmp = prefab.GetComponent <Terraformer>(); BuilderTool bldCmp = prefab.AddComponent <BuilderTool>(); bldCmp.copyFieldsFrom(trfCmp, "rightHandIKTarget", "leftHandIKTarget", "ikAimRightArm", "ikAimLeftArm", "mainCollider", "pickupable", "useLeftAimTargetOnPlayer", "drawSound"); bldCmp.buildSound = trfCmp.placeLoopSound; bldCmp.completeSound = CraftData.GetPrefabForTechType(TechType.Builder).GetComponent <BuilderTool>().completeSound; Object.DestroyImmediate(trfCmp); bldCmp.animator = prefab.getChild("terraformer_anim").GetComponent <Animator>(); bldCmp.powerConsumptionConstruct = bldCmp.powerConsumptionDeconstruct = Main.config.powerConsumption; prefab.AddComponent <TrfBuilderControl>(); CraftHelper.Utils.initVFXFab(prefab, eulerOffset: new Vector3(-10f, 90f, 0f), posOffset: new Vector3(-0.4f, 0.11f, 0f), localMaxY: 0.24f); return(prefab); }
void DetectRemoveVoxel() { if (!Input.GetMouseButtonDown(0)) { return; } RaycastHit hit; if (Physics.Raycast(transform.position, transform.forward, out hit, max_edit_distance)) { Terraformer.SetVoxel(hit, new VoxelAir());//replace with air } }
void DetectPlaceVoxel() { if (!Input.GetMouseButtonDown(1)) { return; } RaycastHit hit; if (Physics.Raycast(transform.position, transform.forward, out hit, max_edit_distance)) { Terraformer.SetVoxel(hit, block_to_place.Clone(), true);//place in adjacent } }
static bool Prefix(Terraformer __instance, out bool __state) { __state = false; if (ClipmapLevelExtensions.isMeshesRebuilding) { return(false); } else { var probe = __instance.GetProbe(); if (probe && !probe.activeSelf) { probe.SetActive(true); } } if (LargeWorld.main == null) { return(false); } if (__instance.GetUsingPlayer() == null) { return(false); } var hasActiveStrokes = __instance.activeStrokes.Count > 0; var isAnyHandHeld = __instance.GetUsingPlayer().GetRightHandHeld() || __instance.GetUsingPlayer().GetLeftHandHeld(); if (__instance.penDown && hasActiveStrokes && !isAnyHandHeld) { __state = true; #if BelowZero if (__instance.type == 14) { Logger.Warning($"Terraformer.type uses undefined material type 14. Resetting to 1"); __instance.type = 1; } #endif } return(true); }
static void Postfix(Terraformer __instance, bool __state) { if (__state) { var type = LargeWorldStreamer.main.GetMaterialTypeOfLastOctreesEditAdd(); if (type > 0) { __instance.type = type; } var streamerV2 = LargeWorldStreamer.main.streamerV2; streamerV2.clipmapStreamer.FlushRangesEdited(streamerV2.octreesStreamer.minLod, streamerV2.octreesStreamer.maxLod); var probe = __instance.GetProbe(); if (probe) { probe.SetActive(false); } } }
public static GameObject GetProbe(this Terraformer terraformer) { return(terraformer.probe); }
public static Stack <GameObject> GetStrokePool(this Terraformer terraformer) { return(terraformer.strokePool); }
public TerraformerTests() { Sut = new Terraformer(Mars); Analyzer = new PlanetAnalyzer(Mars); }
protected void GivenThatIAmTerraformingMars() { CurrentPlanet = Planet.Mars; Sut = new Terraformer(CurrentPlanet); }