Files
AppleHillsProduction/Assets/Scripts/UI/PlayerHudManager.cs

71 lines
1.8 KiB
C#
Raw Normal View History

2025-11-07 16:47:10 +01:00
using Bootstrap;
using Cinematics;
using UnityEngine;
using Core;
using System;
using UnityEngine.UI;
using UnityEngine.Playables;
2025-11-07 17:08:02 +01:00
using Core.Lifecycle;
2025-11-07 16:47:10 +01:00
2025-11-07 17:08:02 +01:00
public class PlayerHudManager : ManagedBehaviour
2025-11-07 16:47:10 +01:00
{
private AppSwitcher _appSwitcher;
public GameObject landscapeObject;
public GameObject portraitObject;
public GameObject cinematicsParentObject;
public GameObject CinematicBackground;
[HideInInspector] public Image cinematicSprites;
[HideInInspector] public Image cinematicBackgroundSprites;
[HideInInspector] public GameObject currentCinematicPlayer;
[HideInInspector] public PlayableDirector playableDirector;
private static PlayerHudManager _instance;
public static PlayerHudManager Instance => _instance;
2025-11-07 17:08:02 +01:00
private new void Awake()
2025-11-07 16:47:10 +01:00
{
if (Instance != null)
{
Destroy(this);
return;
}
_instance = this;
InitializeReferences();
2025-11-07 16:47:10 +01:00
}
private void InitializeReferences()
{
currentCinematicPlayer = landscapeObject;
playableDirector = cinematicsParentObject.GetComponent<PlayableDirector>();
2025-11-07 16:47:10 +01:00
cinematicSprites = currentCinematicPlayer.GetComponent<Image>();
cinematicBackgroundSprites = CinematicBackground.GetComponent<Image>();
}
private void UpateCinematicReferences(GameObject newCinematicPlayer)
2025-11-07 16:47:10 +01:00
{
currentCinematicPlayer = newCinematicPlayer;
cinematicSprites = currentCinematicPlayer.GetComponent<Image>();
2025-11-07 16:47:10 +01:00
}
2025-11-07 16:47:10 +01:00
public void SetPortraitMode(bool portraitModeEnable)
{
if (portraitModeEnable)
{
UpateCinematicReferences(portraitObject);
2025-11-07 16:47:10 +01:00
}
else
{
UpateCinematicReferences(landscapeObject);
2025-11-07 16:47:10 +01:00
}
}
}