Editor/Tools/SetHeightTool.cs
// Copyright (c) 2026 SubZero Studios LLC. All rights reserved.

using Sandbox;

namespace Editor.SubTerrain;

/// <summary>
/// Flatten to Target Height. Alt-click the ground to load that Z.
/// </summary>
[Title( "Set Height" )]
[Icon( "straighten" )]
[Alias( "subterrain_set_height" )]
[Group( "1" )]
[Order( 7 )]
public class SubSetHeightTool : SubTerrainBaseBrushTool
{
	public SubSetHeightTool( SubTerrainTool parent ) : base( parent )
	{
		Mode = SubTerrainSculptMode.Flatten;
		AllowHeightSample = true;
	}

	protected override void OnPaint( Terrain terrain, SubTerrainPaintParameters paint )
	{
		paint.FlattenHeight = paint.BrushSettings.TargetHeight / terrain.Storage.TerrainHeight;
		base.OnPaint( terrain, paint );
	}
}