43 lines
1.2 KiB
C#
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;
|
|
}
|