public void TabChange(MailWindow.TabType tabType) { MailWindow.TabType currentTab = this.currentTab; this.currentTab = tabType; if (currentTab != this.currentTab) { MonoSingleton <GameManager> .Instance.Player.CurrentMails = new List <MailData>(1); } this.AddPage(0); }
private MailWindow.TabData GetTab(MailWindow.TabType tabType) { switch (tabType) { case MailWindow.TabType.NotPeriod: return(this.notPeriodTab); case MailWindow.TabType.Period: return(this.periodTab); case MailWindow.TabType.Read: return(this.readTab); default: return((MailWindow.TabData)null); } }
public void Activated(int pinID) { int num = pinID; switch (num) { case 1: this.currentTab = this.startTab; this.Refresh(); bool flag1 = false; bool flag2 = false; switch (this.startTab) { case MailWindow.TabType.NotPeriod: flag1 = MonoSingleton <GameManager> .Instance.Player.UnreadMail; flag2 = MonoSingleton <GameManager> .Instance.Player.UnreadMailPeriod; break; case MailWindow.TabType.Period: flag1 = MonoSingleton <GameManager> .Instance.Player.UnreadMailPeriod; flag2 = MonoSingleton <GameManager> .Instance.Player.UnreadMail; break; case MailWindow.TabType.Read: flag1 = true; break; } if (flag1) { this.LateActivateOutputLinks(50); break; } if (flag2) { this.LateActivateOutputLinks(51); break; } this.LateActivateOutputLinks(50); break; case 2: this.TabChange(MailWindow.TabType.NotPeriod); if (this.currentTabData.currentPageIsReady) { this.UpdateUI(); this.ActivateOutputLinks(52); break; } this.RequestCurrentMails(); this.ActivateOutputLinks(200); break; case 3: this.TabChange(MailWindow.TabType.Period); if (this.currentTabData.currentPageIsReady) { this.UpdateUI(); this.ActivateOutputLinks(52); break; } this.RequestCurrentMails(); this.ActivateOutputLinks(200); break; case 4: this.TabChange(MailWindow.TabType.Read); if (this.currentTabData.currentPageIsReady) { this.UpdateUI(); this.ActivateOutputLinks(52); break; } this.RequestCurrentMails(); this.ActivateOutputLinks(200); break; case 11: if (this.currentTabData.SetPage(MonoSingleton <GameManager> .Instance.Player.MailPage)) { this.UpdateUI(); MonoSingleton <GameManager> .Instance.Player.CurrentMails = this.currentTabData.currentPageData.mails; } this.ActivateOutputLinks(52); break; case 12: if (!this.currentTabData.HasPrev()) { break; } if (this.PrevPage()) { this.UpdateUI(); this.ActivateOutputLinks(52); break; } this.RequestPrevMails(); this.ActivateOutputLinks(200); break; case 13: if (!this.currentTabData.HasNext()) { break; } if (this.NexePage()) { this.UpdateUI(); this.ActivateOutputLinks(52); break; } this.RequestNextMails(); this.ActivateOutputLinks(200); break; case 14: this.Refresh(); if (this.currentTabData.SetPage(MonoSingleton <GameManager> .Instance.Player.MailPage)) { this.UpdateUI(); MonoSingleton <GameManager> .Instance.Player.CurrentMails = this.currentTabData.currentPageData.mails; } this.ActivateOutputLinks(52); break; default: if (num != 30) { if (num != 31) { break; } this.RequestRead(this.currentTabData.currentPageData.mails.FindAll((Predicate <MailData>)(md => !md.Contains(GiftTypes.IgnoreReceiveAll))).ConvertAll <long>((Converter <MailData, long>)(md => md.mid)).ToArray()); this.ActivateOutputLinks(60); break; } long[] mailIDs = new long[1] { (long)GlobalVars.SelectedMailUniqueID }; MailData mailData = this.currentTabData.currentPageData.mails.Find((Predicate <MailData>)(md => md.mid == (long)GlobalVars.SelectedMailUniqueID)); if (mailData == null) { break; } if (mailData.Contains(GiftTypes.SelectSummonTickets)) { GlobalVars.SelectedMailPeriod.Set(mailData.period); GlobalVars.SelectedMailPage.Set(this.currentTabData.currentPage); } if (mailData.Contains(GiftTypes.SelectArtifactItem)) { if (MonoSingleton <GameManager> .Instance.Player.ArtifactNum + 1 > (int)MonoSingleton <GameManager> .Instance.MasterParam.FixParam.ArtifactBoxCap) { this.ActivateOutputLinks(500); break; } this.ActivateOutputLinks(302); break; } if (mailData.Contains(GiftTypes.SelectItem)) { this.ActivateOutputLinks(301); break; } if (mailData.Contains(GiftTypes.SelectUnitItem)) { this.ActivateOutputLinks(300); break; } if (mailData.Contains(GiftTypes.SelectConceptCardItem)) { if ((int)GlobalVars.ConceptCardNum + 1 > (int)MonoSingleton <GameManager> .Instance.MasterParam.FixParam.CardMax) { this.ActivateOutputLinks(501); break; } this.ActivateOutputLinks(303); break; } this.RequestRead(mailIDs); this.ActivateOutputLinks(60); break; } }