Files
Hasebe/Assets/Code/D/Cleaning/UI/TryapkaWidget.cs
T
2026-09-20 15:26:03 +03:00

43 lines
1.1 KiB
C#

using System;
using System.Collections.Generic;
using System.Linq;
using Code.D.Cleaning.CleanTools;
using R3;
using Reflex.Attributes;
using UnityEngine;
using UnityEngine.UI;
namespace Code.D.Cleaning.UI
{
public class TryapkaWidget : CleanToolWidget
{
[SerializeField] private Image toolImage;
[SerializeField] private Color cleanToolColor;
[SerializeField] private Color dirtyToolColor;
private IDisposable _disposable;
[Inject]
private void Construct(List<CleanTool> cleanTools)
{
Debug.Log("InjectingWidget");
var tool = cleanTools.SingleOrDefault(x => x.ToolType == CleanToolType.Tryapka);
if (tool == null) return;
_disposable = tool.CurrentDirtiness
.Subscribe(SetToolDirtiness);
}
private void OnDestroy()
{
_disposable?.Dispose();
}
public override void SetToolDirtiness(float dirtiness)
{
toolImage.color = Color.Lerp(cleanToolColor, dirtyToolColor, dirtiness);
}
}
}