Files
FlaxEngine/Source/Editor/Progress/Handlers/NavMeshBuildingProgress.cs
2023-01-10 15:29:37 +01:00

48 lines
1.2 KiB
C#

// Copyright (c) 2012-2023 Wojciech Figat. All rights reserved.
using FlaxEngine;
namespace FlaxEditor.Progress.Handlers
{
/// <summary>
/// Navigation mesh building progress reporting handler.
/// </summary>
/// <seealso cref="FlaxEditor.Progress.ProgressHandler" />
public sealed class NavMeshBuildingProgress : ProgressHandler
{
private bool _isActive;
/// <summary>
/// Initializes a new instance of the <see cref="NavMeshBuildingProgress"/> class.
/// </summary>
public NavMeshBuildingProgress()
{
FlaxEngine.Scripting.Update += OnUpdate;
}
private void OnUpdate()
{
bool isActive = Navigation.IsBuildingNavMesh;
if (_isActive != isActive)
{
_isActive = isActive;
if (isActive)
{
OnStart();
}
else
{
OnEnd();
}
}
if (isActive)
{
OnUpdate(Navigation.NavMeshBuildingProgress, "Building navmesh...");
}
}
}
}