| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156 |
- using UnityEngine;
- using FairyGUI;
- using UI.OpenServerActivity;
- using System.Collections.Generic;
- using cfg.GfgCfg;
- using ET;
- using UI.CommonGame;
- namespace GFGGame
- {
- public class OpenServerSuitAdditionView : BaseWindow
- {
- private UI_OpenServerSuitAdditionUI _ui;
- private int _activityType;
- private int _activityId;
- private EffectUI _effectUI1;
- private EffectUI _effectUI2;
- public override void Dispose()
- {
- EffectUIPool.Recycle(_effectUI1);
- _effectUI1 = null;
- EffectUIPool.Recycle(_effectUI2);
- _effectUI2 = null;
- if (_ui != null)
- {
- _ui.Dispose();
- _ui = null;
- }
- base.Dispose();
- }
- protected override void Init()
- {
- base.Init();
- }
- protected override void OnInit()
- {
- base.OnInit();
- packageName = UI_OpenServerSuitAdditionUI.PACKAGE_NAME;
- _ui = UI_OpenServerSuitAdditionUI.Create();
- viewCom = _ui.target;
- this.viewCom.Center();
- this.modal = true;
- _ui.m_list.itemRenderer = ListItemRenderer;
- AddEffect();
- }
- protected override void AddEventListener()
- {
- base.AddEventListener();
- }
- protected override void OnShown()
- {
- base.OnShown();
- _activityType = (int)(this.viewData as object[])[0];
- int levelID = (int)(this.viewData as object[])[1];
- _activityId = ActivityDataManager.Instance.GetCurOpenActiveByType(_activityType);
- ActivityOpenCfg activityOpenCfg = CommonDataManager.Tables.TblActivityOpenCfg.GetOrDefault(_activityId);
- ActivityFightCfg fightCfg =
- CommonDataManager.Tables.TblActivityFightCfg.GetOrDefault(activityOpenCfg.Params3[0]);
- _ui.m_list.numItems = fightCfg.ActivitySuitId.Count;
- StoryLevelCfg levelCfg = CommonDataManager.Tables.TblStoryLevelCfg.GetOrDefault(levelID);
- StudioDataManager.Instance.filingChapterId = levelCfg.ChapterId;
- float addition = StudioDataManager.Instance.GetAddition(ConstInstanceZonesType.PureFight);
- addition = addition / 10000 * 100;
- _ui.m_txtPer.text = "(" + addition + "%)";
- _ui.m_txtTips.SetVar("name", activityOpenCfg.ThemeName).FlushVars();
- }
- protected override void OnHide()
- {
- base.OnHide();
- }
- protected override void RemoveEventListener()
- {
- base.RemoveEventListener();
- }
- private void ListItemRenderer(int index, GObject item)
- {
- UI_suitAdditionItem listItem = UI_suitAdditionItem.Proxy(item);
- ActivityOpenCfg activityOpenCfg = CommonDataManager.Tables.TblActivityOpenCfg.GetOrDefault(_activityId);
- ActivityFightCfg fightCfg =
- CommonDataManager.Tables.TblActivityFightCfg.GetOrDefault(activityOpenCfg.Params3[0]);
- int suitId = fightCfg.ActivitySuitId[index];
- SuitCfg suitCfg = CommonDataManager.Tables.TblSuitCfg.GetOrDefault(suitId);
- listItem.m_txtName.text = suitCfg.Name;
- if (listItem.m_list.data == null)
- {
- listItem.m_list.itemRenderer = ListItemRewardRender;
- }
- listItem.m_list.data = suitCfg.Parts;
- listItem.m_list.numItems = suitCfg.Parts.Count;
- listItem.m_list.ResizeToFit();
- listItem.target.height = listItem.m_list.y + listItem.m_list.height;
- UI_suitAdditionItem.ProxyEnd();
- }
- private void ListItemRewardRender(int index, GObject obj)
- {
- int itemId = (int)(obj.parent.data as int[])[index];
- UI_ComItem item = UI_ComItem.Proxy(obj);
- ItemCfg itemCfg = CommonDataManager.Tables.TblItemCfg.GetOrDefault(itemId);
- RarityIconController.UpdateRarityIcon(item.m_loaRarity, itemId, false);
- item.target.data = itemCfg;
- item.m_QualityType.selectedIndex = itemCfg.Rarity - 1;
- item.m_loaIcon.url = ResPathUtil.GetIconPath(itemCfg);
- item.m_txtCount.text = "1";
- float addition = 0;
- if (ItemDataManager.GetItemNum(itemId) > 0)
- {
- addition += itemCfg.Addition;
- addition = addition / 10000 * 100;
- item.m_txtAddition.text = string.Format("获得加成:{0}%", addition);
- item.m_Lock.selectedIndex = 3;
- }
- else
- item.m_Lock.selectedIndex = 2;
- UI_ComItem.ProxyEnd();
- }
- private void AddEffect()
- {
- //边框左上角特效
- EffectUIPool.CreateEffectUI(_ui.m_holderLeftTop, "ui_Activity", "Com_window_L_up",
- onComplete: (effect) =>
- {
- if (effect != null)
- {
- _effectUI1 = effect;
- }
- });
- //边框右下角特效
- EffectUIPool.CreateEffectUI(_ui.m_holderRightDowm, "ui_Activity", "Com_window_R_Down",
- onComplete: (effect) =>
- {
- if (effect != null)
- {
- _effectUI2 = effect;
- }
- });
- }
- }
- }
|