From 12e2bfa74050417d4afe1a6bac5ae192e4f3ac86 Mon Sep 17 00:00:00 2001 From: kimura Date: Fri, 15 Oct 2021 15:57:32 +0900 Subject: [PATCH] =?UTF-8?q?=E3=83=95=E3=83=83=E3=82=BF=E3=83=BC=E3=81=A7?= =?UTF-8?q?=E4=BB=8A=E3=81=84=E3=82=8B=E3=82=B7=E3=83=BC=E3=83=B3=E3=81=B8?= =?UTF-8?q?=E3=81=AE=E9=81=B7=E7=A7=BB=E3=83=9C=E3=82=BF=E3=83=B3=E3=82=92?= =?UTF-8?q?=E6=8A=BC=E3=81=9B=E3=81=AA=E3=81=84=E3=82=88=E3=81=86=E3=81=AB?= =?UTF-8?q?=E3=81=97=E3=81=9F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Scenes/Main/Prefabs/UI/Footer.prefab | 10 +-- .../Assets/MyGame/Scripts/FooterManager.cs | 63 +++++++++++-------- 2 files changed, 42 insertions(+), 31 deletions(-) diff --git a/popcorn/Assets/MyGame/Scenes/Main/Prefabs/UI/Footer.prefab b/popcorn/Assets/MyGame/Scenes/Main/Prefabs/UI/Footer.prefab index b341531c..c5321400 100644 --- a/popcorn/Assets/MyGame/Scenes/Main/Prefabs/UI/Footer.prefab +++ b/popcorn/Assets/MyGame/Scenes/Main/Prefabs/UI/Footer.prefab @@ -392,7 +392,7 @@ MonoBehaviour: m_SelectOnDown: {fileID: 0} m_SelectOnLeft: {fileID: 0} m_SelectOnRight: {fileID: 0} - m_Transition: 1 + m_Transition: 0 m_Colors: m_NormalColor: {r: 1, g: 1, b: 1, a: 1} m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} @@ -884,7 +884,7 @@ MonoBehaviour: m_SelectOnDown: {fileID: 0} m_SelectOnLeft: {fileID: 0} m_SelectOnRight: {fileID: 0} - m_Transition: 1 + m_Transition: 0 m_Colors: m_NormalColor: {r: 1, g: 1, b: 1, a: 1} m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} @@ -1095,7 +1095,7 @@ MonoBehaviour: m_SelectOnDown: {fileID: 0} m_SelectOnLeft: {fileID: 0} m_SelectOnRight: {fileID: 0} - m_Transition: 1 + m_Transition: 0 m_Colors: m_NormalColor: {r: 1, g: 1, b: 1, a: 1} m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} @@ -1232,7 +1232,7 @@ MonoBehaviour: m_SelectOnDown: {fileID: 0} m_SelectOnLeft: {fileID: 0} m_SelectOnRight: {fileID: 0} - m_Transition: 1 + m_Transition: 0 m_Colors: m_NormalColor: {r: 1, g: 1, b: 1, a: 1} m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} @@ -1517,7 +1517,7 @@ MonoBehaviour: m_SelectOnDown: {fileID: 0} m_SelectOnLeft: {fileID: 0} m_SelectOnRight: {fileID: 0} - m_Transition: 1 + m_Transition: 0 m_Colors: m_NormalColor: {r: 1, g: 1, b: 1, a: 1} m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} diff --git a/popcorn/Assets/MyGame/Scripts/FooterManager.cs b/popcorn/Assets/MyGame/Scripts/FooterManager.cs index 119c9d39..917a5918 100644 --- a/popcorn/Assets/MyGame/Scripts/FooterManager.cs +++ b/popcorn/Assets/MyGame/Scripts/FooterManager.cs @@ -1,6 +1,7 @@ using System; using UniRx; using UnityEngine; +using UnityEngine.SceneManagement; using UnityEngine.UI; public class FooterManager : MonoBehaviour @@ -10,34 +11,44 @@ public class FooterManager : MonoBehaviour [SerializeField] private Button stockButton; [SerializeField] private Button saleButton; [SerializeField] private Button productManagementButton; - private BoolReactiveProperty shareGate = new BoolReactiveProperty(true); private void Start() { - kitchenButton.BindToOnClick(shareGate, _ => - { - TransitionManager.Instance.LoadScene(GameScenes.Main); - return Observable.Timer(TimeSpan.FromSeconds(.5f)).AsUnitObservable(); - }).AddTo(this); - fieldButton.BindToOnClick(shareGate, _ => - { - TransitionManager.Instance.LoadScene(GameScenes.CornField); - return Observable.Timer(TimeSpan.FromSeconds(.5f)).AsUnitObservable(); - }).AddTo(this); - stockButton.BindToOnClick(shareGate, _ => - { - TransitionManager.Instance.LoadScene(GameScenes.shopping); - return Observable.Timer(TimeSpan.FromSeconds(.5f)).AsUnitObservable(); - }).AddTo(this); - saleButton.BindToOnClick(shareGate, _ => - { - TransitionManager.Instance.LoadScene(GameScenes.marketing); - return Observable.Timer(TimeSpan.FromSeconds(.5f)).AsUnitObservable(); - }).AddTo(this); - productManagementButton.BindToOnClick(shareGate, _ => - { - TransitionManager.Instance.LoadScene(GameScenes.ProductManagement); - return Observable.Timer(TimeSpan.FromSeconds(.5f)).AsUnitObservable(); - }).AddTo(this); + var currentSceneName = SceneManager.GetActiveScene().name; + kitchenButton.interactable = currentSceneName != GameScenes.Main.ToString(); + fieldButton.interactable = currentSceneName != GameScenes.CornField.ToString(); + stockButton.interactable = currentSceneName != GameScenes.shopping.ToString(); + saleButton.interactable = currentSceneName != GameScenes.marketing.ToString(); + productManagementButton.interactable = currentSceneName != GameScenes.ProductManagement.ToString(); + kitchenButton.OnClickAsObservable() + .ThrottleFirst(TimeSpan.FromSeconds(.5f)) + .Subscribe(_ => + { + TransitionManager.Instance.LoadScene(GameScenes.Main); + }).AddTo(this); + fieldButton.OnClickAsObservable() + .ThrottleFirst(TimeSpan.FromSeconds(.5f)) + .Subscribe(_ => + { + TransitionManager.Instance.LoadScene(GameScenes.CornField); + }).AddTo(this); + stockButton.OnClickAsObservable() + .ThrottleFirst(TimeSpan.FromSeconds(.5f)) + .Subscribe(_ => + { + TransitionManager.Instance.LoadScene(GameScenes.shopping); + }).AddTo(this); + saleButton.OnClickAsObservable() + .ThrottleFirst(TimeSpan.FromSeconds(.5f)) + .Subscribe(_ => + { + TransitionManager.Instance.LoadScene(GameScenes.marketing); + }).AddTo(this); + productManagementButton.OnClickAsObservable() + .ThrottleFirst(TimeSpan.FromSeconds(.5f)) + .Subscribe(_ => + { + TransitionManager.Instance.LoadScene(GameScenes.ProductManagement); + }).AddTo(this); } } \ No newline at end of file