using System.Collections.Generic; using UnityEngine; using UnityEngine.UI; namespace vnxbqy.UI { public class SdkShareWin : Window { [SerializeField] Button shareBtn; [SerializeField] Text shareTextBtn; [SerializeField] List shareItemCells = new List(); [SerializeField] Image shareGetYet; [SerializeField] Button zanBtn; [SerializeField] Text zanTextBtn; [SerializeField] List zanItemCells = new List(); [SerializeField] Image zanGetYet; [SerializeField] Button reviewBtn; [SerializeField] Text reviewTextBtn; [SerializeField] List reviewItemCells = new List(); [SerializeField] Image reviewGetYet; RoleModel roleModel { get { return ModelCenter.Instance.GetModel(); } } protected override void BindController() { } protected override void AddListeners() { shareBtn.AddListener(() => { var state = roleModel.GetShareState(); if (state == 0) { ynmbxxjUtil.Instance.ShareToFaceBook(roleModel.shareType); #if UNITY_IOS || UNITY_IPHONE || UNITY_EDITOR uint playerID = PlayerDatas.Instance.baseData.PlayerID; Clock.AlarmAfter(2f, () => { LocalSave.SetInt("ShareToFBDay" + playerID, TimeUtility.ServerNow.DayOfYear); }); #endif } else if (state == 1) { roleModel.GetCustomAwardByType(34); } }); zanBtn.AddListener(() => { var state = roleModel.GetZanState(); if (state == 0) { ynmbxxjUtil.Instance.GotoFansHouse(); roleModel.clickZanBtnTick = Time.time; LocalSave.SetInt("ZanToFB" + PlayerDatas.Instance.baseData.PlayerID, 1); } else if (state == 1) { roleModel.GetCustomAwardByType(35); } }); reviewBtn.AddListener(() => { var state = roleModel.GetReviewState(); if (state == 0) { ynmbxxjUtil.Instance.GoToPingfen(); roleModel.clickReviewBtnTick = Time.time; LocalSave.SetInt("ReviewStore" + PlayerDatas.Instance.baseData.PlayerID, 1); } else if (state == 1) { roleModel.GetCustomAwardByType(67); } }); } protected override void OnPreOpen() { roleModel.OnPlayerRewardEvent += OnPlayerRewardEvent; GlobalTimeEvent.Instance.secondEvent += OnSecondEvent; for (int i = 0; i < shareItemCells.Count; i++) { if (i < roleModel.shareItems.Length) { shareItemCells[i].SetActive(true); int itemID = roleModel.shareItems[i][0]; shareItemCells[i].Init(new ItemCellModel(itemID, false, (ulong)roleModel.shareItems[i][1])); shareItemCells[i].button.AddListener(() => { ItemTipUtility.Show(itemID); }); } else shareItemCells[i].SetActive(false); } for (int i = 0; i < zanItemCells.Count; i++) { if (i < roleModel.zanItems.Length) { zanItemCells[i].SetActive(true); int itemID = roleModel.zanItems[i][0]; zanItemCells[i].Init(new ItemCellModel(itemID, false, (ulong)roleModel.zanItems[i][1])); zanItemCells[i].button.AddListener(() => { ItemTipUtility.Show(itemID); }); } else zanItemCells[i].SetActive(false); } for (int i = 0; i < reviewItemCells.Count; i++) { if (i < roleModel.reviewItems.Length) { reviewItemCells[i].SetActive(true); int itemID = roleModel.reviewItems[i][0]; reviewItemCells[i].Init(new ItemCellModel(itemID, false, (ulong)roleModel.reviewItems[i][1])); reviewItemCells[i].button.AddListener(() => { ItemTipUtility.Show(itemID); }); } else reviewItemCells[i].SetActive(false); } Display(); } protected override void OnAfterOpen() { } protected override void OnPreClose() { roleModel.OnPlayerRewardEvent -= OnPlayerRewardEvent; GlobalTimeEvent.Instance.secondEvent -= OnSecondEvent; } protected override void OnAfterClose() { } void OnPlayerRewardEvent() { Display(); } void OnSecondEvent() { Display(); } void Display() { var state = roleModel.GetShareState(); if (state == 0) { shareBtn.SetActive(true); shareTextBtn.text = Language.Get("sharegift2"); shareGetYet.SetActive(false); } else if (state == 1) { shareBtn.SetActive(true); shareTextBtn.text = Language.Get("Z1043"); shareGetYet.SetActive(false); } else if (state == 2) { shareBtn.SetActive(false); shareGetYet.gameObject.SetActive(true); } state = roleModel.GetZanState(); if (state == 0) { zanBtn.SetActive(true); zanTextBtn.text = Language.Get("sharegift3"); zanGetYet.SetActive(false); } else if (state == 1) { zanBtn.SetActive(true); zanTextBtn.text = Language.Get("Z1043"); zanGetYet.SetActive(false); } else if (state == 2) { zanBtn.SetActive(false); zanGetYet.gameObject.SetActive(true); } state = roleModel.GetReviewState(); if (state == 0) { reviewBtn.SetActive(true); reviewTextBtn.text = Language.Get("sharegift4"); reviewGetYet.SetActive(false); } else if (state == 1) { reviewBtn.SetActive(true); reviewTextBtn.text = Language.Get("Z1043"); reviewGetYet.SetActive(false); } else if (state == 2) { reviewBtn.SetActive(false); reviewGetYet.gameObject.SetActive(true); } } } }