Added UI to Furnance, fixed carry and drag obj and added fish

This commit is contained in:
2026-08-12 12:04:54 +03:00
parent 73069d8242
commit 487e0d72ff
73 changed files with 13209 additions and 15923 deletions
@@ -20,6 +20,8 @@ public sealed class FurnacePanelUIController : MonoBehaviour, IGlobalUISectionCo
if (furnace != null)
furnace.Changed += Refresh;
if (view != null)
view.StartRequested += StartSmelting;
GlobalUIController.Instance?.Register(this);
@@ -30,6 +32,8 @@ public sealed class FurnacePanelUIController : MonoBehaviour, IGlobalUISectionCo
{
if (furnace != null)
furnace.Changed -= Refresh;
if (view != null)
view.StartRequested -= StartSmelting;
GlobalUIController.Instance?.Unregister(this);
}
@@ -1,3 +1,4 @@
using System;
using TMPro;
using UnityEngine;
using UnityEngine.UI;
@@ -12,6 +13,20 @@ public sealed class FurnacePanelUIView : MonoBehaviour
[SerializeField] private Image progressImage;
[SerializeField] private Button startButton;
public event Action StartRequested;
private void OnEnable()
{
if (startButton != null)
startButton.onClick.AddListener(HandleStartClicked);
}
private void OnDisable()
{
if (startButton != null)
startButton.onClick.RemoveListener(HandleStartClicked);
}
public void Render(
float storedMetal,
float metalCapacity,
@@ -48,4 +63,6 @@ public sealed class FurnacePanelUIView : MonoBehaviour
if (startButton != null)
startButton.interactable = canStart;
}
private void HandleStartClicked() => StartRequested?.Invoke();
}