From 4a597e39542a1d2bb932e3efb7729f9124d54992 Mon Sep 17 00:00:00 2001 From: francois Date: Fri, 16 Mar 2018 03:00:43 +0100 Subject: [PATCH] =?UTF-8?q?Ajout=20gestion=20d'=20attente=20de=20l'autre?= =?UTF-8?q?=20joueur=20apr=C3=A8s=20hi?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Assets/Scripts/HighscoreLetterManager.cs | 11 +++--- Assets/Scripts/HighscoreRecordMenuManager.cs | 37 +++++++++++++++++--- Assets/Scripts/ScrollBarButtonScript.cs | 1 - Assets/Scripts/SelectorBehavior.cs | 2 -- 4 files changed, 37 insertions(+), 14 deletions(-) diff --git a/Assets/Scripts/HighscoreLetterManager.cs b/Assets/Scripts/HighscoreLetterManager.cs index 7605d13..f08d4f8 100644 --- a/Assets/Scripts/HighscoreLetterManager.cs +++ b/Assets/Scripts/HighscoreLetterManager.cs @@ -51,8 +51,6 @@ public class HighscoreLetterManager : BaseInputBehavior private Image upButtonImage; private Image downButtonImage; private bool letterIsChanging; - private bool upButtonPressed; - private bool downButtonPressed; //private DateTime lastInput; //public int InputDelay = 500; private bool _isActive; @@ -146,17 +144,13 @@ public class HighscoreLetterManager : BaseInputBehavior if (letterIsChanging) return; lastInput = DateTime.Now; letterIsChanging = true; - upButtonPressed = false; - downButtonPressed = false; if (plus) { CurrentIndex++; - upButtonPressed = true; } else { CurrentIndex--; - downButtonPressed = true; } if (CurrentIndex < 0) CurrentIndex = Alphanumerics.Count - 1; else if (CurrentIndex >= Alphanumerics.Count) CurrentIndex = 0; @@ -171,5 +165,8 @@ public class HighscoreLetterManager : BaseInputBehavior return move; } - + private void Awake() + { + CurrentIndex = 0; + } } diff --git a/Assets/Scripts/HighscoreRecordMenuManager.cs b/Assets/Scripts/HighscoreRecordMenuManager.cs index 4a77fe5..60a06c9 100644 --- a/Assets/Scripts/HighscoreRecordMenuManager.cs +++ b/Assets/Scripts/HighscoreRecordMenuManager.cs @@ -7,8 +7,10 @@ using UnityEngine.UI; public class HighscoreRecordMenuManager : BaseInputBehavior { public GameObject[] Letters; + private static HighscoreRecordMenuManager[] Recorders = new HighscoreRecordMenuManager[2]; public Text PseudoText; public Text TimeText; + public Text WaitText; public Image TransportImage; public string XAxisName { @@ -33,15 +35,17 @@ public class HighscoreRecordMenuManager : BaseInputBehavior private int _selectionIndex = 0; private bool selectionChanging; - - + private bool waitFor; public HighscoreEntry Entry { get; private set; } + public bool Finished { get; private set; } - + public int PlayerIndex { get { return Player2 ? 1 : 0; } } + public int OtherPlayerIndex { get { return Player2 ? 0 : 1; } } // Use this for initialization void Start() { + Recorders[PlayerIndex] = this; if (Letters != null && Letters.Any()) { var manager = Letters[0].GetComponent(); @@ -53,6 +57,16 @@ public class HighscoreRecordMenuManager : BaseInputBehavior // Update is called once per frame void Update() { + if (Finished) + { + if (waitFor) + { + if(WaitText!=null) WaitText.text = "En attente du joueur " + (Player2 ? "2" : "1"); + if (Recorders[OtherPlayerIndex].Finished) + GameManager.Instance.DisplayMenu(); + } + return; + } if (PseudoText != null) PseudoText.text = GetPseudo(); if (TransportImage != null && Entry != null && GameManager.Instance.Transports != null && Entry.transport < GameManager.Instance.Transports.Count) @@ -76,17 +90,32 @@ public class HighscoreRecordMenuManager : BaseInputBehavior Entry.pseudo = GetPseudo(); HighscoresManager.Current.AddNewEntry(Entry); } - GameManager.Instance.DisplayMenu(); + Finish(); + //GameManager.Instance.DisplayMenu(); } } } } + private void Finish() + { + Finished = true; + if (!Recorders[OtherPlayerIndex].Finished) + { + waitFor = true; + } + + } + private void Awake() { + Finished = false; + waitFor = false; + //on récupère le highscore du joueur Entry = Player2 ? GameManager.Instance.EntryP2 : GameManager.Instance.EntryP1; CheckEntry(); + } private void CheckEntry() diff --git a/Assets/Scripts/ScrollBarButtonScript.cs b/Assets/Scripts/ScrollBarButtonScript.cs index 6da2bce..804fa5f 100644 --- a/Assets/Scripts/ScrollBarButtonScript.cs +++ b/Assets/Scripts/ScrollBarButtonScript.cs @@ -45,6 +45,5 @@ public class ScrollBarButtonScript : MonoBehaviour // Update is called once per frame void Update() { - } } diff --git a/Assets/Scripts/SelectorBehavior.cs b/Assets/Scripts/SelectorBehavior.cs index b879edb..d6659f3 100644 --- a/Assets/Scripts/SelectorBehavior.cs +++ b/Assets/Scripts/SelectorBehavior.cs @@ -161,7 +161,6 @@ public class SelectorBehavior : BaseInputBehavior //Resources.Load("suit_life_meter_2"); var imageName = CurrentTransport.GetChild(0).gameObject.GetComponent().mainTexture.name; imageName = imageName.Substring(0, imageName.IndexOf('_')) + "_320x320"; - Debug.Log(imageName); PlayerPanelImage.sprite = Resources.Load("Images/"+imageName); PlayerPanelImage.color = Selected ? SelectorColor : NormalColor; PlayerPanelImage.preserveAspect = true; @@ -180,7 +179,6 @@ public class SelectorBehavior : BaseInputBehavior if (!string.IsNullOrEmpty(YAxisName) && !Selected) { var verticalAxis = Input.GetAxis(YAxisName); - Debug.Log(" "+Input.GetAxis(YAxisName)); if (Math.Abs(verticalAxis) == 1) { bool? move = IsPositiveMove(verticalAxis);