Added contextual UI switching depending on level type
This commit is contained in:
@@ -670,10 +670,13 @@ MonoBehaviour:
|
||||
m_Script: {fileID: 11500000, guid: f97ef53b4012e4149b61bbd63c298b6f, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier: '::'
|
||||
currentUIMode: 0
|
||||
landscapeObject: {fileID: 7681264016039674288}
|
||||
portraitObject: {fileID: 2258532551510216878}
|
||||
cinematicsParentObject: {fileID: 5598823553633962789}
|
||||
CinematicBackground: {fileID: 1256355336041814197}
|
||||
appSwitcher: {fileID: 3087409191859087859}
|
||||
eagleEye: {fileID: 8093509920149135307}
|
||||
cinematicSprites: {fileID: 0}
|
||||
cinematicBackgroundSprites: {fileID: 0}
|
||||
currentCinematicPlayer: {fileID: 0}
|
||||
@@ -1058,6 +1061,11 @@ RectTransform:
|
||||
m_CorrespondingSourceObject: {fileID: 5445689290567702089, guid: 428a0feafda9d6d4e87ecf43ad41dc20, type: 3}
|
||||
m_PrefabInstance: {fileID: 1192924796845315568}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
--- !u!1 &8093509920149135307 stripped
|
||||
GameObject:
|
||||
m_CorrespondingSourceObject: {fileID: 6980564769726958139, guid: 428a0feafda9d6d4e87ecf43ad41dc20, type: 3}
|
||||
m_PrefabInstance: {fileID: 1192924796845315568}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
--- !u!1001 &4473383355500896076
|
||||
PrefabInstance:
|
||||
m_ObjectHideFlags: 0
|
||||
@@ -1186,6 +1194,11 @@ PrefabInstance:
|
||||
insertIndex: -1
|
||||
addedObject: {fileID: 1247411094983283289}
|
||||
m_SourcePrefab: {fileID: 100100000, guid: ccd858c7962d48147b0233c1bf1382f5, type: 3}
|
||||
--- !u!1 &3087409191859087859 stripped
|
||||
GameObject:
|
||||
m_CorrespondingSourceObject: {fileID: 1498581815400593087, guid: ccd858c7962d48147b0233c1bf1382f5, type: 3}
|
||||
m_PrefabInstance: {fileID: 4473383355500896076}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
--- !u!224 &3194400469127591113 stripped
|
||||
RectTransform:
|
||||
m_CorrespondingSourceObject: {fileID: 1315170081792486277, guid: ccd858c7962d48147b0233c1bf1382f5, type: 3}
|
||||
|
||||
@@ -9,11 +9,17 @@ using Core.Lifecycle;
|
||||
|
||||
public class PlayerHudManager : ManagedBehaviour
|
||||
{
|
||||
public enum UIMode { Overworld, Puzzle, Minigame, HideAll };
|
||||
|
||||
public UIMode currentUIMode;
|
||||
private AppSwitcher _appSwitcher;
|
||||
public GameObject landscapeObject;
|
||||
public GameObject portraitObject;
|
||||
public GameObject cinematicsParentObject;
|
||||
public GameObject CinematicBackground;
|
||||
public GameObject appSwitcher;
|
||||
public GameObject eagleEye;
|
||||
|
||||
|
||||
[HideInInspector] public Image cinematicSprites;
|
||||
[HideInInspector] public Image cinematicBackgroundSprites;
|
||||
@@ -30,6 +36,7 @@ public class PlayerHudManager : ManagedBehaviour
|
||||
public static PlayerHudManager Instance => _instance;
|
||||
private new void Awake()
|
||||
{
|
||||
base.Awake();
|
||||
if (Instance != null)
|
||||
{
|
||||
Destroy(this);
|
||||
@@ -39,6 +46,26 @@ public class PlayerHudManager : ManagedBehaviour
|
||||
_instance = this;
|
||||
|
||||
InitializeReferences();
|
||||
|
||||
|
||||
}
|
||||
|
||||
protected override void OnManagedAwake()
|
||||
{
|
||||
if (SceneManagerService.Instance != null)
|
||||
{
|
||||
SceneManagerService.Instance.SceneLoadCompleted += NewSceneLoaded;
|
||||
}
|
||||
if (SceneManagerService.Instance.CurrentGameplayScene == "AppleHillsOverworld")
|
||||
{
|
||||
NewSceneLoaded("AppleHillsOverworld");
|
||||
}
|
||||
if (SceneManagerService.Instance.CurrentGameplayScene == "StartingScene")
|
||||
{
|
||||
// TODO: Hide all UI until cinematics have played
|
||||
NewSceneLoaded("AppleHillsOverworld");
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
private void InitializeReferences()
|
||||
@@ -67,4 +94,47 @@ public class PlayerHudManager : ManagedBehaviour
|
||||
UpateCinematicReferences(landscapeObject);
|
||||
}
|
||||
}
|
||||
|
||||
public void NewSceneLoaded(string sceneName)
|
||||
{
|
||||
switch (sceneName)
|
||||
{
|
||||
case "AppleHillsOverworld":
|
||||
UpdateUIMode(UIMode.Overworld);
|
||||
break;
|
||||
case "Quarry":
|
||||
UpdateUIMode(UIMode.Puzzle);
|
||||
break;
|
||||
case "DivingForPictures":
|
||||
UpdateUIMode(UIMode.Minigame);
|
||||
break;
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
public void UpdateUIMode(UIMode mode)
|
||||
{
|
||||
switch (mode)
|
||||
{
|
||||
case UIMode.Overworld:
|
||||
// Show app switcher
|
||||
appSwitcher.SetActive(true);
|
||||
// Hide eagle eye
|
||||
eagleEye.SetActive(false);
|
||||
break;
|
||||
case UIMode.Puzzle:
|
||||
// Hide app switcher
|
||||
appSwitcher.SetActive(false);
|
||||
// show eagle eye
|
||||
eagleEye.SetActive(true);
|
||||
break;
|
||||
case UIMode.Minigame:
|
||||
// Hide app switcher
|
||||
appSwitcher.SetActive(false);
|
||||
// Hide birds eye
|
||||
eagleEye.SetActive(false);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user