| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215 |
- using FairyGUI;
- using UI.ActivityAfternoonTea;
- using UI.CommonGame;
- using ET;
- using System.Collections.Generic;
- using cfg.GfgCfg;
- namespace GFGGame
- {
- public class ActivitySyntheticView : BaseWindow
- {
- private UI_ActivitySyntheticUI _ui;
- private ValueBarController _valueBarController;
- private SuitCfg _suitCfg;
- public override void Dispose()
- {
- if (_valueBarController != null)
- {
- _valueBarController.Dispose();
- _valueBarController = null;
- }
- if (_ui != null)
- {
- _ui.Dispose();
- _ui = null;
- }
- base.Dispose();
- }
- protected override void OnInit()
- {
- base.OnInit();
- packageName = UI_ActivitySyntheticUI.PACKAGE_NAME;
- _ui = UI_ActivitySyntheticUI.Create();
- this.viewCom = _ui.target;
- isfullScreen = true;
- isReturnView = true;
- _valueBarController = new ValueBarController(_ui.m_valueBar);
- _ui.m_btnBack.onClick.Add(OnClickBtnBack);
- _ui.m_listSynthetic.itemRenderer = RenderListSyntheticItem;
- }
- protected override void OnShown()
- {
- base.OnShown();
- var activityInfo = ActivityGlobalDataManager.Instance.GetActivityInfoOneByType(ActivityType.ItemSynthetic);
- ActivityOpenCfg activityOpenCfg =
- CommonDataManager.Tables.TblActivityOpenCfg.GetOrDefault(activityInfo.ActivityId);
- _suitCfg = CommonDataManager.Tables.TblSuitCfg.GetOrDefault(activityOpenCfg.Params1[0]);
- ItemCfg itemSyntheticCfg = CommonDataManager.Tables.TblItemCfg.GetOrDefault(_suitCfg.Parts[0]);
- _valueBarController.OnShown();
- _valueBarController.UpdateList(new List<int>()
- { itemSyntheticCfg.SyntheticMateriars[0].ItemId, ConstItemID.GOLD });
- _ui.m_listSynthetic.numItems = _suitCfg.Parts.Count;
- RefreshTimeText();
- _ui.m_txtTips.SetVar("name", _suitCfg.Name).FlushVars();
- Timers.inst.Add(1, 0, UpdateTime);
- }
- protected override void OnHide()
- {
- base.OnHide();
- _valueBarController.OnHide();
- Timers.inst.Remove(UpdateTime);
- }
- protected override void AddEventListener()
- {
- base.AddEventListener();
- EventAgent.AddEventListener(ConstMessage.ITEM_CHANGED, OnItemChange);
- }
- protected override void RemoveEventListener()
- {
- base.RemoveEventListener();
- EventAgent.RemoveEventListener(ConstMessage.ITEM_CHANGED, OnItemChange);
- }
- private void OnItemChange(EventContext context)
- {
- var itemId = (int)context.data;
- ItemCfg itemSyntheticCfg = CommonDataManager.Tables.TblItemCfg.GetOrDefault(_suitCfg.Parts[0]);
- if (itemId != itemSyntheticCfg.SyntheticMateriars[0].ItemId &&
- itemId != itemSyntheticCfg.SyntheticMateriars[1].ItemId) return;
- _ui.m_listSynthetic.numItems = _suitCfg.Parts.Count;
- }
- private void OnClickBtnBack()
- {
- ViewManager.GoBackFrom(typeof(ActivitySyntheticView).FullName);
- }
- private void UpdateTime(object param)
- {
- RefreshTimeText();
- }
- private void RefreshTimeText()
- {
- var activityInfo = ActivityGlobalDataManager.Instance.GetActivityInfoOneByType(ActivityType.ItemSynthetic);
- long curTime = ActivityDataManager.Instance.GetActivityTime(activityInfo.ActivityId);
- _ui.m_txtTime.text = "剩余:" + TimeUtil.FormattingTimeTo_DDHHmm(curTime);
- }
- private void RenderListSyntheticItem(int index, GObject obj)
- {
- UI_SyntheticItemUI comBox = UI_SyntheticItemUI.Proxy(obj);
- UI_ComItem item1 = UI_ComItem.Proxy(comBox.m_item1);
- ItemCfg itemSyntheticCfg = CommonDataManager.Tables.TblItemCfg.GetOrDefault(_suitCfg.Parts[index]);
- var materiarsArr = itemSyntheticCfg.SyntheticMateriars;
- ItemCfg itemCfg1 = CommonDataManager.Tables.TblItemCfg.GetOrDefault(materiarsArr[0].ItemId);
- RarityIconController.UpdateRarityIcon(item1.m_loaRarity, itemCfg1.Id, false);
- string ext1 = ItemUtil.GetItemResExt(itemCfg1.ItemType, itemCfg1.SubType, true);
- item1.m_loaIcon.url = ResPathUtil.GetIconPath(itemCfg1.Res, ext1);
- if (item1.target.data == null)
- item1.target.onClick.Add(OnSelectorItemClick);
- item1.target.data = materiarsArr[0].ItemId;
- item1.m_QualityType.selectedIndex = itemCfg1.Rarity - 1;
- item1.m_txtCount.text = materiarsArr[0].Count.ToString();
- UI_ComItem.ProxyEnd();
- UI_ComItem item2 = UI_ComItem.Proxy(comBox.m_item2);
- ItemCfg itemCfg2 = CommonDataManager.Tables.TblItemCfg.GetOrDefault(materiarsArr[1].ItemId);
- RarityIconController.UpdateRarityIcon(item2.m_loaRarity, itemCfg2.Id, false);
- string ext2 = ItemUtil.GetItemResExt(itemCfg2.ItemType, itemCfg2.SubType, true);
- item2.m_loaIcon.url = ResPathUtil.GetIconPath(itemCfg2.Res, ext2);
- if (item2.target.data == null)
- item2.target.onClick.Add(OnSelectorItemClick);
- item2.target.data = materiarsArr[1].ItemId;
- item2.m_QualityType.selectedIndex = itemCfg2.Rarity - 1;
- item2.m_txtCount.text = materiarsArr[1].Count.ToString();
- UI_ComItem.ProxyEnd();
- UI_ComItem item3 = UI_ComItem.Proxy(comBox.m_item3);
- ItemCfg itemCfg3 = CommonDataManager.Tables.TblItemCfg.GetOrDefault(_suitCfg.Parts[index]);
- RarityIconController.UpdateRarityIcon(item3.m_loaRarity, itemCfg3.Id, false);
- string ext3 = ItemUtil.GetItemResExt(itemCfg3.ItemType, itemCfg3.SubType, true);
- item3.m_loaIcon.url = ResPathUtil.GetIconPath(itemCfg3.Res, ext3);
- if (item3.target.data == null)
- item3.target.onClick.Add(OnSelectorItemClick);
- item3.target.data = _suitCfg.Parts[index];
- item3.m_QualityType.selectedIndex = itemCfg3.Rarity - 1;
- item3.m_txtCount.text = "1";
- UI_ComItem.ProxyEnd();
- if (ItemDataManager.GetItemNum(_suitCfg.Parts[index]) > 0)
- {
- comBox.m_btnType.selectedIndex = 2;
- }
- else if (ItemDataManager.GetItemNum(materiarsArr[0].ItemId) >= materiarsArr[0].Count &&
- ItemDataManager.GetItemNum(materiarsArr[1].ItemId) >= materiarsArr[1].Count)
- {
- comBox.m_btnType.selectedIndex = 1;
- if (comBox.m_btnMake.data == null)
- comBox.m_btnMake.onClick.Add(OnClickBtnMake);
- comBox.m_btnMake.data = _suitCfg.Parts[index];
- }
- else
- {
- comBox.m_btnType.selectedIndex = 0;
- if (comBox.m_btnGet.data == null)
- comBox.m_btnGet.onClick.Add(OnClickBtnGet);
- comBox.m_btnGet.data = index;
- }
- RedDotController.Instance.SetComRedDot(comBox.m_btnMake, comBox.m_btnType.selectedIndex == 1);
- UI_SyntheticItemUI.ProxyEnd();
- }
- private async void OnClickBtnMake(EventContext context)
- {
- if (!(context.sender is GObject obj)) return;
- int itemID = (int)obj.data;
- var activityInfo = ActivityGlobalDataManager.Instance.GetActivityInfoOneByType(ActivityType.ItemSynthetic);
- bool result = await ActivityTeaSProxy.ReqItemSynthetic(activityInfo.ActivityId, itemID);
- if (result)
- {
- _ui.m_listSynthetic.numItems = _suitCfg.Parts.Count;
- }
- }
- private void OnClickBtnGet(EventContext context)
- {
- if (!(context.sender is GObject obj)) return;
- int index = (int)obj.data;
- ItemCfg itemSyntheticCfg = CommonDataManager.Tables.TblItemCfg.GetOrDefault(_suitCfg.Parts[index]);
- var materiarsArr = itemSyntheticCfg.SyntheticMateriars;
- if (ItemDataManager.GetItemNum(materiarsArr[0].ItemId) < materiarsArr[0].Count)
- MainControllerr.GotoStoryChapter();
- else
- ItemUtil.BuyCurrency(materiarsArr[1].ItemId,
- materiarsArr[1].Count - ItemDataManager.GetItemNum(materiarsArr[1].ItemId));
- }
- private void OnSelectorItemClick(EventContext context)
- {
- if (!(context.sender is GObject obj)) return;
- int itemID = (int)obj.data;
- GoodsItemTipsController.ShowItemTips(itemID);
- }
- }
- }
|