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
@@ -0,0 +1,52 @@
using UnityEngine;
[DisallowMultipleComponent]
[RequireComponent(typeof(Canvas))]
public sealed class WorldSpaceCanvasCameraBinder : MonoBehaviour
{
[SerializeField] private Canvas targetCanvas;
public Canvas TargetCanvas => targetCanvas;
private void Reset()
{
targetCanvas = GetComponent<Canvas>();
RefreshBinding();
}
private void Awake() => ResolveCanvas();
private void OnEnable()
{
LocalPlayerCameraRegistry.Changed += HandleLocalCameraChanged;
RefreshBinding();
}
private void OnDisable() =>
LocalPlayerCameraRegistry.Changed -= HandleLocalCameraChanged;
public void RefreshBinding()
{
ResolveCanvas();
if (targetCanvas == null || targetCanvas.renderMode != RenderMode.WorldSpace)
return;
targetCanvas.worldCamera = LocalPlayerCameraRegistry.Current;
}
private void ResolveCanvas()
{
if (targetCanvas == null)
targetCanvas = GetComponent<Canvas>();
}
private void HandleLocalCameraChanged(Camera localCamera)
{
if (targetCanvas != null && targetCanvas.renderMode == RenderMode.WorldSpace)
targetCanvas.worldCamera = localCamera;
}
[ContextMenu("Refresh Local Player Camera")]
private void RefreshFromContextMenu() => RefreshBinding();
}