using DarkTonic.MasterAudio; using UnityEngine; using UnityEngine.UI; public class BottomBar : MonoBehaviour { public GameObject backToMainmenuButton; private int sceneType; public GameObject LoadingStuffPanel; private Residence isResidence; [SerializeField] private Image speakerImage; [SerializeField] private Sprite[] speakerSprites; [SerializeField] private bool musicPlaying = true; [SerializeField] private AudioSource audioSource; private MainGameScene mainGameScene; private void Start() { GetSceneType(); if ((bool)FScriptsHandler.Instance) { backToMainmenuButton.SetActive(value: true); } else if (sceneType == 6 || sceneType == 7) { backToMainmenuButton.SetActive(value: true); } else { backToMainmenuButton.SetActive(value: false); } mainGameScene = Object.FindObjectOfType(); isResidence = Object.FindObjectOfType(); LoadingStuffPanel.SetActive(value: false); if (!FScriptsHandler.Instance) { speakerImage.gameObject.SetActive(value: true); } else { speakerImage.gameObject.SetActive(value: false); } musicPlaying = Singleton.Instance.SettingsData.IsBackgroundMusicEnabled; if (!FScriptsHandler.Instance) { if (musicPlaying) { MasterAudio.UnmuteGroup("kornev_music_-_lounge_piano_background_ambient_(full_version)"); speakerImage.sprite = speakerSprites[0]; } else { MasterAudio.MuteGroup("kornev_music_-_lounge_piano_background_ambient_(full_version)"); speakerImage.sprite = speakerSprites[1]; } speakerImage.gameObject.SetActive(value: true); } if (musicPlaying) { speakerImage.sprite = speakerSprites[0]; } else { speakerImage.sprite = speakerSprites[1]; } } private void GetSceneType() { if (Object.FindObjectOfType() != null) { sceneType = 1; } else if (Object.FindObjectOfType() != null) { sceneType = 2; } else if (Object.FindObjectOfType() != null) { sceneType = 3; } else if (Object.FindObjectOfType() != null) { sceneType = 4; } else if (Object.FindObjectOfType() != null) { sceneType = 5; } else if (Object.FindObjectOfType() != null) { sceneType = 6; } else if (Object.FindObjectOfType() != null) { sceneType = 7; } else if (Object.FindObjectOfType() != null) { sceneType = 8; } else if (Object.FindObjectOfType() != null) { sceneType = 9; } else if (Object.FindObjectOfType() != null) { sceneType = 10; } else if (Object.FindObjectOfType() != null) { sceneType = 11; } else if (Object.FindObjectOfType() != null) { sceneType = 12; } else if (Object.FindObjectOfType() != null) { sceneType = 13; } else if (Object.FindObjectOfType() != null) { sceneType = 14; } } private void Update() { if (GameManager.Instance.messageBoxStack.Count == 0 && (GameManager.Instance.player.GetButtonDown("exitKey") || GameManager.Instance.player.GetButtonDown("B"))) { BackButton(); } if (isResidence != null) { backToMainmenuButton.SetActive(value: true); } if (GameManager.Instance._playerData.currentPlayerProfileIndex == -1) { speakerImage.gameObject.SetActive(value: false); } } public void BackButton() { GetSceneType(); EquipmentManager equipmentManager = Object.FindObjectOfType(); ItemsViewer itemsViewer = Object.FindObjectOfType(); Home home = Object.FindObjectOfType(); Debug.Log("BackButton: " + sceneType); if (sceneType != 10 && (bool)itemsViewer) { itemsViewer.Exit(); return; } switch (sceneType) { case 0: if ((bool)mainGameScene && mainGameScene.homeController.lastDisplayedContent == 0) { if (GameObject.Find("FreeFishing") == null) { mainGameScene.ExitButton(); } else { mainGameScene.ShowContent(MainGameScene.Content.Home); } } break; case 1: if (equipmentManager != null) { if (equipmentManager.viewMode == EquipmentManager.ViewMode.Popup) { equipmentManager.HidePopupByBtn(); } else if ((bool)mainGameScene) { mainGameScene.BackToLastContent(); } else { GameManager.Instance.UnloadAddectiveScene(); } } break; case 2: if ((bool)mainGameScene) { mainGameScene.BackToLastContent(); } else if (FScriptsHandler.Instance != null) { GameManager.Instance.UnloadAddectiveScene(); } else { GameManager.Instance.UnloadAddectiveScene(); } break; case 3: GameManager.Instance.UnloadAddectiveScene(); break; case 4: if ((bool)mainGameScene) { mainGameScene.BackToLastContent(); } else if (FScriptsHandler.Instance != null) { GameManager.Instance.UnloadAddectiveScene(); } else { GameManager.Instance.UnloadAddectiveScene(); } break; case 5: if ((bool)mainGameScene) { mainGameScene.ShowContent(MainGameScene.Content.Home); } else if (FScriptsHandler.Instance != null) { GameManager.Instance.UnloadAddectiveScene(); } else { GameManager.Instance.UnloadAddectiveScene(); } break; case 6: if (home.lastDisplayedContent == 0) { GameManager.Instance.UnloadAddectiveScene(); } break; case 7: GameManager.Instance.UnloadAddectiveScene(); break; case 8: if ((bool)mainGameScene) { mainGameScene.ShowContent(MainGameScene.Content.Home); } else if (FScriptsHandler.Instance != null) { GameManager.Instance.UnloadAddectiveScene(); } else { GameManager.Instance.UnloadAddectiveScene(); } break; case 9: if ((bool)mainGameScene) { mainGameScene.ShowContent(MainGameScene.Content.Home); } else if (FScriptsHandler.Instance != null) { GameManager.Instance.UnloadAddectiveScene(); } else { GameManager.Instance.UnloadAddectiveScene(); } break; case 10: if ((bool)mainGameScene) { mainGameScene.ShowContent(MainGameScene.Content.Records); } else if (FScriptsHandler.Instance != null) { GameManager.Instance.UnloadAddectiveScene(); } else { GameManager.Instance.UnloadAddectiveScene(); } break; case 11: if ((bool)mainGameScene) { mainGameScene.ShowContent(MainGameScene.Content.Home); } else if (FScriptsHandler.Instance != null) { GameManager.Instance.UnloadAddectiveScene(); } else { GameManager.Instance.UnloadAddectiveScene(); } break; case 12: if ((bool)mainGameScene) { mainGameScene.ShowContent(MainGameScene.Content.Records); } else if (FScriptsHandler.Instance != null) { GameManager.Instance.UnloadAddectiveScene(); } else { GameManager.Instance.UnloadAddectiveScene(); } break; case 13: if ((bool)mainGameScene) { mainGameScene.BackToLastContent(); } break; case 14: if ((bool)mainGameScene) { mainGameScene.ShowContent(MainGameScene.Content.Home); } break; } } public void BackToMainMenu() { GameManager.Instance.UnloadAddectiveScene(); GameManager.Instance.LoadScene("Startowa", goToMenu: true); } public void CloseFirstHelp() { GameManager.Instance.PlayOnClickSound(); GameManager.Instance.UnloadAddectiveScene(); } public void RunLinkTest() { Application.OpenURL("https://linktr.ee/ufs2"); } public void MuteMusicButton() { _ = mainGameScene.gameObject; musicPlaying = !musicPlaying; Singleton.Instance.SettingsData.IsBackgroundMusicEnabled = musicPlaying; if (musicPlaying) { MasterAudio.UnmuteGroup("kornev_music_-_lounge_piano_background_ambient_(full_version)"); speakerImage.sprite = speakerSprites[0]; } else { MasterAudio.MuteGroup("kornev_music_-_lounge_piano_background_ambient_(full_version)"); speakerImage.sprite = speakerSprites[1]; } speakerImage.gameObject.SetActive(value: true); } public void InitializeBackgroundMusic() { speakerImage.gameObject.SetActive(value: true); GameObject gameObject = mainGameScene.gameObject; audioSource = gameObject.GetComponent(); musicPlaying = Singleton.Instance.SettingsData.IsBackgroundMusicEnabled; audioSource.mute = !musicPlaying; if (musicPlaying) { speakerImage.sprite = speakerSprites[0]; } else { speakerImage.sprite = speakerSprites[1]; } } }