public override void Launch(EditMain _editmain) { base.Launch(_editmain); Util.FindIfNotSet(this, ref terrain); Util.FindIfNotSet(this, ref terrainRendering); Util.FindIfNotSet(this, ref undoStack); Util.FindIfNotSet(this, ref createTerrainPreview); editTerrainTool.Setup(); terrainToolSettings = editMain.GetTerrainSidebar(); terrainToolSettings.onModeChange = SetMode; terrainToolSettings.onShapeChange = SetShape; terrainToolSettings.onDirectionChange = SetDirection; terrainToolSettings.onEditCopy = editTerrainTool.CopySelection; terrainToolSettings.onEditPaint = editTerrainTool.PaintSelection; terrainToolSettings.onEditDelete = editTerrainTool.DeleteSelection; terrainToolSettings.RequestOpen(); SetMode(terrainToolSettings.GetMode()); SetShape(terrainToolSettings.GetBlockShape()); SetDirection(terrainToolSettings.GetBlockDirection()); createTerrainPreview.SetTint(editMain.GetAvatarTint()); createToolRay.SetLocalRayOriginTransform(emissionAnchor); createToolRay.SetTint(editMain.GetAvatarTint()); editMain.SetCameraFollowingActor(false); editMain.TryEscapeOutOfCameraView(); RefreshPreviewVisibility(); }
private void SetShape(BlockShape blockShape) { createTerrainPreview.UpdatePreviewBlock(blockShape, terrainToolSettings.GetBlockDirection()); }