391 lines
8.4 KiB
C#
391 lines
8.4 KiB
C#
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<MainGameScene>();
|
|
isResidence = Object.FindObjectOfType<Residence>();
|
|
LoadingStuffPanel.SetActive(value: false);
|
|
if (!FScriptsHandler.Instance)
|
|
{
|
|
speakerImage.gameObject.SetActive(value: true);
|
|
}
|
|
else
|
|
{
|
|
speakerImage.gameObject.SetActive(value: false);
|
|
}
|
|
musicPlaying = Singleton<SaveDataManager>.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<EquipmentManager>() != null)
|
|
{
|
|
sceneType = 1;
|
|
}
|
|
else if (Object.FindObjectOfType<ShopManager>() != null)
|
|
{
|
|
sceneType = 2;
|
|
}
|
|
else if (Object.FindObjectOfType<LocationMap>() != null)
|
|
{
|
|
sceneType = 3;
|
|
}
|
|
else if (Object.FindObjectOfType<SettingsManager>() != null)
|
|
{
|
|
sceneType = 4;
|
|
}
|
|
else if (Object.FindObjectOfType<HelpManager>() != null)
|
|
{
|
|
sceneType = 5;
|
|
}
|
|
else if (Object.FindObjectOfType<EscapeMenu>() != null)
|
|
{
|
|
sceneType = 6;
|
|
}
|
|
else if (Object.FindObjectOfType<Residence>() != null)
|
|
{
|
|
sceneType = 7;
|
|
}
|
|
else if (Object.FindObjectOfType<QuestManager>() != null)
|
|
{
|
|
sceneType = 8;
|
|
}
|
|
else if (Object.FindObjectOfType<SkillManager>() != null)
|
|
{
|
|
sceneType = 9;
|
|
}
|
|
else if (Object.FindObjectOfType<FishPediaManager>() != null)
|
|
{
|
|
sceneType = 10;
|
|
}
|
|
else if (Object.FindObjectOfType<FishPersonalRecord>() != null)
|
|
{
|
|
sceneType = 11;
|
|
}
|
|
else if (Object.FindObjectOfType<RankingManager>() != null)
|
|
{
|
|
sceneType = 12;
|
|
}
|
|
else if (Object.FindObjectOfType<TournamentScene>() != null)
|
|
{
|
|
sceneType = 13;
|
|
}
|
|
else if (Object.FindObjectOfType<MultiplayerAddectiveScene>() != 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<EquipmentManager>();
|
|
ItemsViewer itemsViewer = Object.FindObjectOfType<ItemsViewer>();
|
|
Home home = Object.FindObjectOfType<Home>();
|
|
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<SaveDataManager>.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<AudioSource>();
|
|
musicPlaying = Singleton<SaveDataManager>.Instance.SettingsData.IsBackgroundMusicEnabled;
|
|
audioSource.mute = !musicPlaying;
|
|
if (musicPlaying)
|
|
{
|
|
speakerImage.sprite = speakerSprites[0];
|
|
}
|
|
else
|
|
{
|
|
speakerImage.sprite = speakerSprites[1];
|
|
}
|
|
}
|
|
}
|