using System.Collections.Generic; using Logic.Audio; using Logic.CrashSight; using Logic.Multilingual; using RuntimeData; using TH1_Core.Events; using TH1_Logic.Core; using TMPro; using UnityEngine; using UnityEngine.UI; namespace TH1_UI.View.Notify { public class UINotifyCommonView : Base.View { public Button closeButton; //public TextMeshProUGUI Title; public TextMeshProUGUI content; public ViDelegateAssisstant.Dele OnAutoClose; protected override void OnInit() { base.OnInit(); //closeButton.onClick.RemoveAllListeners(); //closeButton.onClick.AddListener(() => { OnBtnCloseClick.Invoke(); }); } public void SetContent(ShowUINotifyCommon eventType) { if (content == null ) { LogSystem.LogError("ShowUINotifyCommonView.SetContent(): Content is null"); return; } switch (eventType.UINotifyCommonType) { case UINotifyCommonType.DiplomacyOfferAlly: MultilingualManager.Instance.SetUIText(content,Table.Instance.DiplomacyDataAssets.DiplomacyUINotifyOfferAlly); break; case UINotifyCommonType.DiplomacyEmbassy: MultilingualManager.Instance.SetUIText(content,Table.Instance.DiplomacyDataAssets.DiplomacyUINotifyEmbassy); break; case UINotifyCommonType.Tech: MultilingualManager.Instance.SetUIText(content,Table.Instance.TextDataAssets.NotifyUITechHint); break; case UINotifyCommonType.ExamineTech: MultilingualManager.Instance.SetUIText(content,Table.Instance.TextDataAssets.NotifyUIExamineTechHint); break; case UINotifyCommonType.ExamineCityExp: MultilingualManager.Instance.SetUIText(content,Table.Instance.TextDataAssets.NotifyUIExamineCityExpHint); break; case UINotifyCommonType.ExamineCulture: MultilingualManager.Instance.SetUIText(content,Table.Instance.TextDataAssets.NotifyUIExamineCultureHint); break; case UINotifyCommonType.TurnHint: MultilingualManager.Instance.SetUIText(content,Table.Instance.TextDataAssets.NotifyUITurnHint,new List(){(Main.MapData.CurPlayer.Turn + 1).ToString()}); AudioManager.Instance.PlayAudio("SFX/start"); break; case UINotifyCommonType.InfiltrateStealCoin: MultilingualManager.Instance.SetUIText(content,Table.Instance.TextDataAssets.NotifyUIInfiltrateStealCoin,new List(){eventType.IntParam.ToString()}); break; case UINotifyCommonType.OutsideMultiplayRoomFull: MultilingualManager.Instance.SetUIText(content,Table.Instance.TextDataAssets.OutsideMultiplayRoomFull); break; case UINotifyCommonType.OutsideMultiplayRoomGone: MultilingualManager.Instance.SetUIText(content,Table.Instance.TextDataAssets.OutsideMultiplayRoomGone); break; case UINotifyCommonType.OutsideMultiplayRoomNetError: MultilingualManager.Instance.SetUIText(content,Table.Instance.TextDataAssets.OutsideMultiplayRoomNetError); break; case UINotifyCommonType.OutsideMultiplayRoomPasswordWrong: MultilingualManager.Instance.SetUIText(content,Table.Instance.TextDataAssets.OutsideMultiplayRoomPasswordWrong); break; case UINotifyCommonType.OutsideMultiplayOpenHint: MultilingualManager.Instance.SetUIText(content,Table.Instance.TextDataAssets.OutsideMultiplayOpenHint); break; case UINotifyCommonType.OutsideMultiplayCantStartCount: MultilingualManager.Instance.SetUIText(content,Table.Instance.TextDataAssets.OutsideMultiplayCantStartCount); break; case UINotifyCommonType.OutsideMultiplayRoomNotReady: MultilingualManager.Instance.SetUIText(content,Table.Instance.TextDataAssets.OutsideMultiplayRoomNotReady); break; } Timer.Instance.TimerRegister(this, AutoClose,1f,"UINotifyCommonView"); } void AutoClose() { if(OnAutoClose != null) OnAutoClose.Invoke(); } } }