using System; using Cysharp.Threading.Tasks; namespace DanieleMarotta.RiversongCodeShowcase { public class EditingState : IDisposable { public BuildTool BuildTool { get; set; } public DeleteTool DeleteTool { get; set; } public RoadTool RoadTool { get; set; } public EditTool ActiveTool { get; set; } public async UniTask InitializeAsync() { await BuildTool.InitializeAsync(); await DeleteTool.InitializeAsync(); await RoadTool.InitializeAsync(); } public void Dispose() { BuildTool.Dispose(); DeleteTool.Dispose(); RoadTool.Dispose(); } } }