using System; using System.Collections.Generic; using System.OfflineSystem; using Framework.Audio; using Game; using UnityEngine; using UnityEngine.UI; using IcecreamView; using Script.Core.Utils.Extend; using TMPro; using Unity.Mathematics; namespace Views { public class OfflineTipPanel : IcecreamView.IC_AbstractModule { [SerializeField] private TMP_Text _content; [SerializeField] private Button _getBtn; public override void OnInitView () { this._getBtn.onClick.AddListener (OnClick_GetAward , SeAudio.Btn_Click); } public override void OnOpenView (IC_ViewData parameters) { var totalSeconds = OfflineMgr.Instance.OfflineTimeSpan.TotalSeconds; var totalMinutes = OfflineMgr.Instance.OfflineTimeSpan.TotalMinutes; var award = Account.Instance.AccountGameData.OfflineAwardUnit () * totalMinutes; var goldAward = (int)math.min (award * 0.1f , 1); this._content.text = string.Format (this._content.text , totalSeconds.ShowSecondsTime () , goldAward.ShowText (), award.ShowText (),(Account.Instance.AccountGameData.GetMaxOfflineDuration * 60).ShowSecondsTime ()); } private void OnClick_GetAward () { GameManager.Instance.HasCheckOffline = true; var totalMinutes = OfflineMgr.Instance.OfflineTimeSpan.TotalMinutes; var award = Account.Instance.AccountGameData.OfflineAwardUnit () * totalMinutes; var goldAward = (int)math.min (award * 0.1f , 1); EventManager.Instance.SendEvent (GameEventCode.AddGold , goldAward); AudioManager.Instance.PlaySoundEffect (SeAudio.OverGame_History); this.ViewConnector.CloseView (); } } }