public static void AlignToolsClicked(UIComponent c, UIMouseEventParameter p) { switch (c.name) { case "MoveIt_AlignToolsBtn": if (AlignToolsPanel.isVisible) { AlignToolsPanel.isVisible = false; } else { AlignToolsPanel.isVisible = true; } UpdateAlignTools(); break; case "MoveIt_AlignHeightBtn": MIT.ProcessAligning(MoveItTool.AlignModes.Height); break; case "MoveIt_AlignTerrainHeightBtn": MIT.AlignMode = MoveItTool.AlignModes.TerrainHeight; if (MIT.ToolState == MoveItTool.ToolStates.Cloning || MIT.ToolState == MoveItTool.ToolStates.RightDraggingClone) { MIT.StopCloning(); } AlignTerrainHeightAction atha = new AlignTerrainHeightAction(); ActionQueue.instance.Push(atha); ActionQueue.instance.Do(); if (MoveItTool.autoCloseAlignTools) { AlignToolsPanel.isVisible = false; } MoveItTool.instance.DeactivateAlignTool(); break; case "MoveIt_AlignSlopeBtn": if (Input.GetKey(KeyCode.LeftAlt) || Input.GetKey(KeyCode.RightAlt)) { MIT.AlignMode = MoveItTool.AlignModes.SlopeNode; if (MIT.ToolState == MoveItTool.ToolStates.Cloning || MIT.ToolState == MoveItTool.ToolStates.RightDraggingClone) { MIT.StopCloning(); } AlignSlopeAction asa = new AlignSlopeAction(); asa.followTerrain = MoveItTool.followTerrain; asa.IsQuick = true; ActionQueue.instance.Push(asa); ActionQueue.instance.Do(); if (MoveItTool.autoCloseAlignTools) { AlignToolsPanel.isVisible = false; } MIT.DeactivateAlignTool(); break; } MIT.ProcessAligning(MoveItTool.AlignModes.Slope); break; case "MoveIt_AlignIndividualBtn": MIT.ProcessAligning(MoveItTool.AlignModes.Inplace); break; case "MoveIt_AlignGroupBtn": MIT.ProcessAligning(MoveItTool.AlignModes.Group); break; case "MoveIt_AlignRandomBtn": MIT.AlignMode = MoveItTool.AlignModes.Random; if (MIT.ToolState == MoveItTool.ToolStates.Cloning || MIT.ToolState == MoveItTool.ToolStates.RightDraggingClone) { MIT.StopCloning(); } AlignRandomAction ara = new AlignRandomAction(); ara.followTerrain = MoveItTool.followTerrain; ActionQueue.instance.Push(ara); ActionQueue.instance.Do(); if (MoveItTool.autoCloseAlignTools) { AlignToolsPanel.isVisible = false; } MoveItTool.instance.DeactivateAlignTool(); break; default: Debug.Log($"Invalid Align Tools call ({c.name})"); break; } //Debug.Log($"{c.name} clicked, mode is {MoveItTool.alignMode}"); }