/// <summary> /// その他アイテムの表示 /// </summary> void OnStartOthersItem() { // 本文 List <string> mainTextList = new List <string>(); // その他の入手アイテム long[] othersIDList = UserDataAdmin.Instance.m_StructOthersPresent.serial_numbers; List <MasterDataPresent> messageList = new List <MasterDataPresent>(); List <MasterDataPresent> othersList = new List <MasterDataPresent>(); if (othersIDList != null) { for (int i = 0; i < othersIDList.Length; i++) { PacketStructPresent tmp = UserDataAdmin.Instance.SearchPresent(othersIDList[i]); MasterDataPresent presentMaster = MasterDataUtil.ConvertStructPresentToMasterData(tmp); if (presentMaster != null) { switch (presentMaster.present_type) { case MasterDataDefineLabel.PresentType.MSG: case MasterDataDefineLabel.PresentType.NOTICE: messageList.Add(presentMaster); break; default: othersList.Add(presentMaster); break; } } } } // その他の入手アイテムが1個以上ある場合は表示する if (0 < othersList.Count || 0 < MainMenuParam.m_LoginFriendPointGet) { // タイトル string othreText = string.Format(GameTextUtil.GetText("pp4q_title_3")); // プレゼントの初回表示 if (0 < othersList.Count) { // アイテム foreach (var presentMaster in othersList) { string text = string.Format(GameTextUtil.GetText("pp4q_content_2"), MasterDataUtil.GetPresentName(presentMaster), MasterDataUtil.GetPresentCount(presentMaster)); othreText += "\n" + text; } } // 運営からのお知らせ if (messageList != null && messageList.Count() > 0) { var presentMaster = messageList.First(); string text = string.Format(GameTextUtil.GetText("pp4q_content_2"), MasterDataUtil.GetPresentName(presentMaster), messageList.Count()); othreText += "\n" + text; } // 助っ人経由で入手した友情ポイント if (0 < MainMenuParam.m_LoginFriendPointGet) { // {0}人の助っ人をしました。友情ポイント×{1} string text = string.Format(GameTextUtil.GetText("pp4q_content_1"), MainMenuParam.m_LoginFriendHelpCt, //!< ログイン情報:フレンド:助っ人として助けた人数 MainMenuParam.m_LoginFriendPointGet); //!< ログイン情報:フレンド:フレンドポイント:今回取得分 othreText += "\n" + text; } mainTextList.Add(othreText); } if (mainTextList.IsNullOrEmpty() == true) { LoginBonusFSM.Instance.SendFsmNextEvent(); } else { // 本文の連結 string MainText = string.Join("\n\n", mainTextList.ToArray()); // ダイアログ設定 Dialog newDialog = Dialog.Create(DialogType.DialogScroll); newDialog.SetDialogText(DialogTextType.Title, GameTextUtil.GetText("pp4q_title_0")); newDialog.SetTextAlignment(DialogTextType.MainText, TMPro.TextAlignmentOptions.Center); newDialog.SetDialogText(DialogTextType.MainText, MainText); newDialog.SetDialogText(DialogTextType.OKText, GameTextUtil.GetText("common_button1")); newDialog.SetDialogEvent(DialogButtonEventType.OK, new System.Action(() => { LoginBonusFSM.Instance.SendFsmNextEvent(); })); // ダイアログ表示 newDialog.Show(); } }