ClientServer/Client/Assets/Scripts/Player/PlayerUIRenderer.cs
TG9six 03a642d635 first push
first push
2025-09-06 17:17:39 +04:00

43 lines
1.2 KiB
C#

using UnityEngine;
public class PlayerUIRenderer : MonoBehaviour
{
private Camera cam;
private GameObject inventoryCanvas;
private GameObject bankVaultCanvas;
private void Awake()
{
cam = GetComponent<Camera>();
}
private void Start()
{
inventoryCanvas = UIManager.Instance.Inventory;
bankVaultCanvas = UIManager.Instance.BankVaultCanvas;
cam.enabled = false; // camera needs to be disabled, we will render manually.
}
private void FixedUpdate()
{
Client.Instance.UnderWaterEffectEnabled = false;
// only render the camera if menus that use it are open.
if (CharacterRenderMenusOpen())
{
cam.Render();
}
if (Client.Instance.CheckIfPlayerIsUnderWater()) { Client.Instance.UnderWaterEffectEnabled = true; }
}
private bool CharacterRenderMenusOpen()
{
return inventoryCanvas.activeInHierarchy || bankVaultCanvas.activeInHierarchy || UIManager.Instance.CharacterSelectCanvas.activeInHierarchy;
}
public bool CharacterSelectCanvasOpen() => UIManager.Instance.CharacterSelectCanvas.activeInHierarchy;
public Camera GetCamera() => cam;
}