diff options
Diffstat (limited to 'Client/Assembly-CSharp/MainMenuManager.cs')
-rw-r--r-- | Client/Assembly-CSharp/MainMenuManager.cs | 66 |
1 files changed, 66 insertions, 0 deletions
diff --git a/Client/Assembly-CSharp/MainMenuManager.cs b/Client/Assembly-CSharp/MainMenuManager.cs new file mode 100644 index 0000000..c3a2054 --- /dev/null +++ b/Client/Assembly-CSharp/MainMenuManager.cs @@ -0,0 +1,66 @@ +using System; +using System.Collections; +using System.Collections.Generic; +using UnityEngine; +using UnityEngine.Analytics; + +public class MainMenuManager : MonoBehaviour +{ + public DataCollectScreen DataPolicy; + + public AdDataCollectScreen AdsPolicy; + + public AnnouncementPopUp Announcement; + + public UnlockPopUp UnlockPop; + + private static bool SentTelemetry; + + public void Start() + { + if (!MainMenuManager.SentTelemetry && SaveManager.SendTelemetry) + { + MainMenuManager.SentTelemetry = true; + DateTime utcNow = DateTime.UtcNow; + if (SaveManager.LastStartDate != DateTime.MinValue && SaveManager.LastStartDate < utcNow) + { + TimeSpan timeSpan = utcNow - SaveManager.LastStartDate; + Analytics.CustomEvent("GameOpened", new Dictionary<string, object> + { + { + "TotalMinutes", + timeSpan.TotalMinutes + } + }); + } + SaveManager.LastStartDate = utcNow; + } + base.StartCoroutine(this.Announcement.Init()); + base.StartCoroutine(this.RunStartUp()); + } + + private IEnumerator RunStartUp() + { + yield return this.DataPolicy.Show(); + yield return this.Announcement.Show(); + yield return this.UnlockPop.Show(); + DateTime utcNow = DateTime.UtcNow; + for (int i = 0; i < DestroyableSingleton<HatManager>.Instance.AllHats.Count; i++) + { + HatBehaviour hatBehaviour = DestroyableSingleton<HatManager>.Instance.AllHats[i]; + if ((hatBehaviour.LimitedMonth == utcNow.Month || hatBehaviour.LimitedMonth == 0) && (hatBehaviour.LimitedYear == utcNow.Year || hatBehaviour.LimitedYear == 0) && !SaveManager.GetPurchase(hatBehaviour.ProductId)) + { + SaveManager.SetPurchased(hatBehaviour.ProductId); + } + } + yield break; + } + + private void Update() + { + if (Input.GetKeyUp(KeyCode.Escape)) + { + Application.Quit(); + } + } +} |