|
|
- using System.Collections;
- using System.Collections.Generic;
- using UnityEngine;
- using UnityEngine.Networking;
- using Networking;
- using Networking.Client;
- using UnityEngine.UI;
-
- public class NetworkedUIManager : PlayerUIManager
- {
- [SerializeField]
- private ClientObject Client;
- [SerializeField]
- private TMPro.TextMeshProUGUI TimeText;
- [SerializeField]
- private RectTransform Title;
- [SerializeField]
- private TMPro.TextMeshProUGUI LivesText;
-
- [Header("Debug")]
- [SerializeField]
- private bool isTimePaused;
-
- public Image backgroundColour;
- public Image animalSprite;
- private float StartTime;
- private BlockReader reader;
-
- protected override void Awake()
- {
- base.Awake();
- reader = new BlockReader();
- TrayUI.SetBlockReader(reader);
- StartTime = Time.time;
- ShowPosition.y -= Title.rect.height;
- LivesText.text = "Lives: " + Client.RemainingLives;
- backgroundColour.color = Client.PlayerColor;
- animalSprite.sprite = Resources.Load<Sprite>(Client.PlayerAnimal.ToString());
- OnClick_Show();
- }
-
- private void Update()
- {
- if (!isTimePaused)
- {
- TimeText.text = ((int)(Client.RoundTime - (Time.time - StartTime))).ToString();
-
- if (Time.time - StartTime > Client.RoundTime)
- OnClick_Play();
- }
- }
-
- public override void OnClick_Play()
- {
- OnClick_Hide();
- LogicProtocols.LogicMsg msg = new LogicProtocols.LogicMsg(reader.LogicChain.ToArray());
-
- Debug.Log("sending on " + LogicProtocols.SendLogicList);
- Client.client.SendByChannel(LogicProtocols.SendLogicList, msg, TransportConfigure.ReliableFragmented);
- UnityEngine.SceneManagement.SceneManager.LoadScene("WaitScene");
- }
-
- public void On_ClickPauseTime()
- {
- isTimePaused = !isTimePaused;
-
- if (isTimePaused)
- TimeText.color = Color.grey;
- else
- TimeText.color = Color.black;
- }
- }
|