| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153 |
- using System.Collections.Generic;
- using System.Linq;
- using cfg.GfgCfg;
- using ET;
- using FairyGUI;
- using UI.Arena;
- using UnityEngine;
- namespace GFGGame
- {
- public class ArenaDanRewardView : BaseWindow
- {
- private UI_ArenaDanRewardUI _ui;
- public override void Dispose()
- {
- if (_ui != null)
- {
- _ui.Dispose();
- _ui = null;
- }
- base.Dispose();
- }
- protected override void OnInit()
- {
- base.OnInit();
- packageName = UI_ArenaUI.PACKAGE_NAME;
- _ui = UI_ArenaDanRewardUI.Create();
- this.viewCom = _ui.target;
- this.viewCom.Center();
- this.modal = true;
- viewAnimationType = EnumViewAnimationType.ZOOM_CENTER;
- _ui.m_listWeekDanReward.itemRenderer = RenderListWeekDanRewardItem;
- _ui.m_listUpDanReward.itemRenderer = RenderListUpDanReward;
- _ui.m_comMyDanReward.m_listReward.itemRenderer = RenderListRewardItem;
- }
- protected override void OnShown()
- {
- base.OnShown();
- _ui.m_c1.selectedIndex = 0;
- _ui.m_listWeekDanReward.numItems = CommonDataManager.Tables.TblArenaRewardCfg.DataList.Count;
- _ui.m_listUpDanReward.numItems = CommonDataManager.Tables.TblArenaRankCfg.DataList.Count - 1;
- ArenaViewManager.Instance.UpdateDanIcon(_ui.m_comMyDanReward.m_loaDanIcon, ArenaDataManager.Instance.Grade);
- UpdateMyReward();
- }
- protected override void OnHide()
- {
- base.OnHide();
- _ui.m_listUpDanReward.ScrollToView(0);
- _ui.m_listWeekDanReward.ScrollToView(0);
- }
- protected override void RemoveEventListener()
- {
- base.RemoveEventListener();
- }
- private void UpdateMyReward()
- {
- UI_ComMyDanReward com = UI_ComMyDanReward.Proxy(_ui.m_comMyDanReward.target);
- ArenaViewManager.Instance.UpdateDanIcon(com.m_loaDanIcon, ArenaDataManager.Instance.Grade);
- System.Collections.Generic.List<ItemParamProto> rewards = new List<ItemParamProto>();
- List<ArenaRewardCfg> rewardCfgs =
- CommonDataManager.Tables.TblArenaRewardCfg.DataList
- .Where(a => a.Grade == ArenaDataManager.Instance.Grade).ToList();
- for (int i = 0; i < rewardCfgs.Count; i++)
- {
- ArenaRewardCfg rewardCfg = rewardCfgs[i];
- if (ArenaDataManager.Instance.Rank >= rewardCfg.MinRank &&
- ArenaDataManager.Instance.Rank <= rewardCfg.MaxRank)
- {
- rewards = rewardCfg.BonusWeekly.ToGfgGameItemParam();
- break;
- }
- }
- if (com.m_listReward.data == null)
- {
- com.m_listReward.itemRenderer = RenderListRewardItem;
- }
- com.m_listReward.data = rewards;
- com.m_listReward.numItems = rewards.Count;
- com.m_c1.selectedIndex = ArenaDataManager.Instance.LastFightTime == 0 ? 0 : 1;
- UI_ComMyDanReward.ProxyEnd();
- }
- private void RenderListWeekDanRewardItem(int index, GObject obj)
- {
- ArenaRewardCfg cfg =
- CommonDataManager.Tables.TblArenaRewardCfg.DataList[
- CommonDataManager.Tables.TblArenaRewardCfg.DataList.Count - 1 - index];
- UI_ListDanRewardItem item = UI_ListDanRewardItem.Proxy(obj);
- item.m_txtRank.text = cfg.ShowName;
- item.m_imgGot.visible = false;
- if (item.m_listReward.data == null)
- {
- item.m_listReward.itemRenderer = RenderListRewardItem;
- }
- item.m_listReward.data = cfg.BonusWeekly;
- item.m_listReward.numItems = cfg.BonusWeekly.Count;
- ArenaViewManager.Instance.UpdateDanIcon(item.m_loaDanIcon, cfg.Grade);
- UI_ListDanRewardItem.ProxyEnd();
- }
- private void RenderListUpDanReward(int index, GObject obj)
- {
- ArenaRankCfg cfg =
- CommonDataManager.Tables.TblArenaRankCfg.DataList[
- CommonDataManager.Tables.TblArenaRankCfg.DataList.Count - 1 - index];
- UI_ListDanRewardItem item = UI_ListDanRewardItem.Proxy(obj);
- ArenaViewManager.Instance.UpdateDanIcon(item.m_loaDanIcon, cfg.Id);
- item.m_imgGot.visible = ArenaDataManager.Instance.HighestGrade >= cfg.Id;
- item.m_txtRank.text = cfg.GradeName;
- if (item.m_listReward.data == null)
- {
- item.m_listReward.itemRenderer = RenderListRewardItem;
- }
- item.m_listReward.data = cfg.BonusUpgrade.ToGfgGameItemParam();
- item.m_listReward.numItems = cfg.BonusUpgrade.Count;
- UI_ListDanRewardItem.ProxyEnd();
- }
- private void RenderListRewardItem(int index, GObject obj)
- {
- List<ItemParamProto> reward = (List<ItemParamProto>)obj.parent.data;
- ItemData itemData = ItemUtil.createItemData(reward[index]);
- if (obj.data == null)
- {
- obj.data = new ItemView(obj as GComponent);
- }
- (obj.data as ItemView).SetData(itemData);
- //(obj.data as ItemView).SetComItemScale = 0.7f;
- //(obj.data as ItemView).SetTxtCountPos(185, 155);
- }
- }
- }
|