Angepasste Garage, verbessertes Icon Asset system, range der türme vorschau beim ziehen

This commit is contained in:
PBM2H25BEB committed 2026-11-05 07:52:47 +01:00
1 parent 5486444dde
commit 5af8655c97
59 files changed
+12079 -457

No files matched your search

@@ -0,0 +1,35 @@
using UnityEngine;
using UnityEngine.UI;
namespace DepthsOfGreed.HandbookUI
{
// Only rendering and input change; all GameObjects and gameplay keep running.
public sealed class BasementRoomView : MonoBehaviour
{
public Canvas roomCanvas;
public GraphicRaycaster roomRaycaster;
public Camera roomCamera;
public RectTransform[] horizontalSurfaces;
public RectTransform leftBoundary,rightBoundary;
public Vector2 referenceSize=new Vector2(1920,1080);
public bool IsVisible {get;private set;}
public void SetVisible(bool visible)
{
IsVisible=visible;
roomCanvas.enabled=visible;roomRaycaster.enabled=visible;roomCamera.enabled=visible;
Fit();
}
void Awake()=>SetVisible(false);
void LateUpdate(){if(IsVisible)Fit();}
void Fit()
{
float scale=Mathf.Abs(roomCanvas.transform.lossyScale.y);
roomCamera.orthographicSize=Mathf.Max(referenceSize.y*.5f,referenceSize.x*.5f/Mathf.Max(.1f,roomCamera.aspect))*scale;
float width=Mathf.Max(referenceSize.x,roomCamera.orthographicSize*2*roomCamera.aspect/Mathf.Max(.00001f,scale));
((RectTransform)roomCanvas.transform).sizeDelta=new Vector2(width,referenceSize.y);
if(horizontalSurfaces!=null)foreach(var surface in horizontalSurfaces)if(surface)surface.sizeDelta=new Vector2(width,surface.sizeDelta.y);
if(leftBoundary)leftBoundary.anchoredPosition=new Vector2(-width*.5f+10,leftBoundary.anchoredPosition.y);
if(rightBoundary)rightBoundary.anchoredPosition=new Vector2(width*.5f-10,rightBoundary.anchoredPosition.y);
}
}
}