|
@@ -7,6 +7,7 @@ using UnityEngine;
|
|
using System.Timers;
|
|
using System.Timers;
|
|
using System.Collections;
|
|
using System.Collections;
|
|
using System.Linq;
|
|
using System.Linq;
|
|
|
|
+using VEngine;
|
|
|
|
|
|
namespace GFGGame
|
|
namespace GFGGame
|
|
{
|
|
{
|
|
@@ -24,7 +25,8 @@ namespace GFGGame
|
|
private GObject _consumeSelectItem;//选中的材料item
|
|
private GObject _consumeSelectItem;//选中的材料item
|
|
private int _consumeSelectIndex = 0;//0为减,1为加
|
|
private int _consumeSelectIndex = 0;//0为减,1为加
|
|
|
|
|
|
- private List<int> itemsNum = new List<int>();
|
|
|
|
|
|
+ private List<int> itemsCount;
|
|
|
|
+ private int[] upgradeCardItemsArr = GlobalCfgArray.globalCfg.upgradeCardItemsArr;
|
|
//private Timer _timer;
|
|
//private Timer _timer;
|
|
private const float _delay = 300;
|
|
private const float _delay = 300;
|
|
private double _selectTimeCount = 0;//长按时间
|
|
private double _selectTimeCount = 0;//长按时间
|
|
@@ -104,14 +106,25 @@ namespace GFGGame
|
|
|
|
|
|
_cardScale = _ui.target.height * 0.8f / _ui.target.initHeight;
|
|
_cardScale = _ui.target.height * 0.8f / _ui.target.initHeight;
|
|
Input.multiTouchEnabled = false;
|
|
Input.multiTouchEnabled = false;
|
|
-
|
|
|
|
|
|
+ this.ClearItemsCountList();
|
|
this.UpdateCommon();
|
|
this.UpdateCommon();
|
|
this.UpdateNormal();
|
|
this.UpdateNormal();
|
|
this.UpdateCardRes();
|
|
this.UpdateCardRes();
|
|
this.UpdateUpLvView();
|
|
this.UpdateUpLvView();
|
|
_comFosterBottom.m_ctrlTab.selectedIndex = this._selectTab;
|
|
_comFosterBottom.m_ctrlTab.selectedIndex = this._selectTab;
|
|
}
|
|
}
|
|
-
|
|
|
|
|
|
+ private void ClearItemsCountList()
|
|
|
|
+ {
|
|
|
|
+ if (itemsCount == null)
|
|
|
|
+ {
|
|
|
|
+ itemsCount = new List<int>();
|
|
|
|
+ }
|
|
|
|
+ itemsCount.Clear();
|
|
|
|
+ for (int i = 0; i < upgradeCardItemsArr.Length; i++)
|
|
|
|
+ {
|
|
|
|
+ itemsCount.Add(0);
|
|
|
|
+ }
|
|
|
|
+ }
|
|
private void UpdateNormal()
|
|
private void UpdateNormal()
|
|
{
|
|
{
|
|
_comFosterBottom.m_txtName.text = _cardData.itemCfg.name;
|
|
_comFosterBottom.m_txtName.text = _cardData.itemCfg.name;
|
|
@@ -137,7 +150,10 @@ namespace GFGGame
|
|
_cardObj = null;
|
|
_cardObj = null;
|
|
}
|
|
}
|
|
string resPath = ResPathUtil.GetCardAnimationPath(_cardData.resources[_cardData.resIndex]);
|
|
string resPath = ResPathUtil.GetCardAnimationPath(_cardData.resources[_cardData.resIndex]);
|
|
- _cardObj = DressUpUtil.AddAnimationObj(resPath);
|
|
|
|
|
|
+ if (Versions.Contains(resPath))
|
|
|
|
+ {
|
|
|
|
+ _cardObj = DressUpUtil.AddAnimationObj(resPath);
|
|
|
|
+ }
|
|
|
|
|
|
if (_cardObj != null)
|
|
if (_cardObj != null)
|
|
{
|
|
{
|
|
@@ -201,7 +217,7 @@ namespace GFGGame
|
|
{
|
|
{
|
|
return;
|
|
return;
|
|
}
|
|
}
|
|
- _comFosterBottom.m_listLvConsume.numItems = GlobalCfgArray.globalCfg.upgradeCardItemsArr.Length;
|
|
|
|
|
|
+ _comFosterBottom.m_listLvConsume.numItems = upgradeCardItemsArr.Length;
|
|
|
|
|
|
}
|
|
}
|
|
|
|
|
|
@@ -209,11 +225,11 @@ namespace GFGGame
|
|
{
|
|
{
|
|
UI_ComConsume listItem = UI_ComConsume.Proxy(obj);
|
|
UI_ComConsume listItem = UI_ComConsume.Proxy(obj);
|
|
CardLvlCfg cardLvCfg = CardLvlCfgArray.Instance.GetCfg(_cardData.lv, _cardData.itemCfg.rarity);
|
|
CardLvlCfg cardLvCfg = CardLvlCfgArray.Instance.GetCfg(_cardData.lv, _cardData.itemCfg.rarity);
|
|
- ItemCfg itemCfg = ItemCfgArray.Instance.GetCfg(GlobalCfgArray.globalCfg.upgradeCardItemsArr[index]);
|
|
|
|
|
|
+ ItemCfg itemCfg = ItemCfgArray.Instance.GetCfg(upgradeCardItemsArr[index]);
|
|
listItem.m_loaItem.url = ResPathUtil.GetIconPath(itemCfg);
|
|
listItem.m_loaItem.url = ResPathUtil.GetIconPath(itemCfg);
|
|
listItem.m_txtNum.text = ItemDataManager.GetItemNum(itemCfg.id).ToString();
|
|
listItem.m_txtNum.text = ItemDataManager.GetItemNum(itemCfg.id).ToString();
|
|
listItem.m_txtUseCount.text = "0";
|
|
listItem.m_txtUseCount.text = "0";
|
|
- listItem.target.data = itemCfg;
|
|
|
|
|
|
+ listItem.target.data = index;
|
|
|
|
|
|
if (listItem.m_btnMinus.data == null)
|
|
if (listItem.m_btnMinus.data == null)
|
|
{
|
|
{
|
|
@@ -230,16 +246,18 @@ namespace GFGGame
|
|
listItem.m_loaItem.data = index;
|
|
listItem.m_loaItem.data = index;
|
|
UI_ComConsume.ProxyEnd();
|
|
UI_ComConsume.ProxyEnd();
|
|
}
|
|
}
|
|
- private void OnClickItemConsumsBegin(GObject obj, int index)
|
|
|
|
|
|
+ private void OnClickItemConsumsBegin(GObject obj, int type)
|
|
{
|
|
{
|
|
UI_ComConsume listItem = UI_ComConsume.Proxy(obj);
|
|
UI_ComConsume listItem = UI_ComConsume.Proxy(obj);
|
|
|
|
+ int index = (int)listItem.target.data;
|
|
|
|
+ int itemId = upgradeCardItemsArr[index];
|
|
_consumeSelectItem = obj;
|
|
_consumeSelectItem = obj;
|
|
- _consumeSelectIndex = index;
|
|
|
|
- if (index == 1)
|
|
|
|
|
|
+ _consumeSelectIndex = type;
|
|
|
|
+ if (type == 1)
|
|
{
|
|
{
|
|
- if (ItemDataManager.GetItemNum((listItem.target.data as ItemCfg).id) == 0)
|
|
|
|
|
|
+ if (ItemDataManager.GetItemNum(itemId) == 0)
|
|
{
|
|
{
|
|
- ViewManager.Show(ViewName.APPROACH_OF_ITEM_VIEW, new object[] { (listItem.target.data as ItemCfg).id, new object[] { ViewName.CARD_FOSTER_VIEW, _cardData } });
|
|
|
|
|
|
+ ViewManager.Show(ViewName.APPROACH_OF_ITEM_VIEW, new object[] { itemId, new object[] { ViewName.CARD_FOSTER_VIEW, _cardData } });
|
|
}
|
|
}
|
|
}
|
|
}
|
|
//_timer.Start();
|
|
//_timer.Start();
|
|
@@ -290,17 +308,19 @@ namespace GFGGame
|
|
private bool OnClickBtnPlusLvConsume(GObject obj, bool showTips = true)
|
|
private bool OnClickBtnPlusLvConsume(GObject obj, bool showTips = true)
|
|
{
|
|
{
|
|
UI_ComConsume listItem = UI_ComConsume.Proxy(obj);
|
|
UI_ComConsume listItem = UI_ComConsume.Proxy(obj);
|
|
- ItemCfg itemCfg = (listItem.target.data as ItemCfg);
|
|
|
|
|
|
+ // ItemCfg itemCfg = (listItem.target.data as ItemCfg);
|
|
|
|
+ int index = (int)listItem.target.data;
|
|
|
|
+ int itemId = upgradeCardItemsArr[index];
|
|
|
|
|
|
- string count = listItem.m_txtUseCount.text;
|
|
|
|
-
|
|
|
|
- if (int.Parse(count) == ItemDataManager.GetItemNum(itemCfg.id))
|
|
|
|
|
|
+ if (itemsCount[index] == ItemDataManager.GetItemNum(itemId))
|
|
{
|
|
{
|
|
Timers.inst.Remove(OnTimedEvent);
|
|
Timers.inst.Remove(OnTimedEvent);
|
|
|
|
|
|
return false;
|
|
return false;
|
|
}
|
|
}
|
|
- if (_showLv == CardRarityCfgArray.Instance.GetCfg(_cardData.itemCfg.rarity).maxCardLvl && _comFosterBottom.m_barLv.max == _comFosterBottom.m_barLv.value)
|
|
|
|
|
|
+ int maxLv = CardRarityCfgArray.Instance.GetCfg(_cardData.itemCfg.rarity).maxCardLvl;
|
|
|
|
+ int needExp = CardLvlCfgArray.Instance.GetCfg(_showLv, _cardData.itemCfg.rarity).needExp;
|
|
|
|
+ if (_showLv == maxLv && _comFosterBottom.m_barLv.value >= needExp)
|
|
{
|
|
{
|
|
Timers.inst.Remove(OnTimedEvent);
|
|
Timers.inst.Remove(OnTimedEvent);
|
|
|
|
|
|
@@ -310,7 +330,8 @@ namespace GFGGame
|
|
}
|
|
}
|
|
return false;
|
|
return false;
|
|
}
|
|
}
|
|
- listItem.m_txtUseCount.text = (int.Parse(count) + 1).ToString();
|
|
|
|
|
|
+ itemsCount[index] = itemsCount[index] + 1;
|
|
|
|
+ listItem.m_txtUseCount.text = itemsCount[index].ToString();
|
|
this.UpdatePreView();
|
|
this.UpdatePreView();
|
|
return true;
|
|
return true;
|
|
}
|
|
}
|
|
@@ -319,16 +340,19 @@ namespace GFGGame
|
|
private void OnClickBtnMinus(GObject obj)
|
|
private void OnClickBtnMinus(GObject obj)
|
|
{
|
|
{
|
|
UI_ComConsume listItem = UI_ComConsume.Proxy(obj);
|
|
UI_ComConsume listItem = UI_ComConsume.Proxy(obj);
|
|
|
|
+ int index = (int)listItem.target.data;
|
|
|
|
+ // int itemId = upgradeCardItemsArr[index];
|
|
|
|
|
|
- string count = listItem.m_txtUseCount.text;
|
|
|
|
|
|
+ // string count = listItem.m_txtUseCount.text;
|
|
|
|
|
|
- if (int.Parse(count) == 0)
|
|
|
|
|
|
+ if (itemsCount[index] == 0)
|
|
{
|
|
{
|
|
Timers.inst.Remove(OnTimedEvent);
|
|
Timers.inst.Remove(OnTimedEvent);
|
|
|
|
|
|
return;
|
|
return;
|
|
}
|
|
}
|
|
- listItem.m_txtUseCount.text = (int.Parse(count) - 1).ToString();
|
|
|
|
|
|
+ itemsCount[index] = itemsCount[index] - 1;
|
|
|
|
+ listItem.m_txtUseCount.text = itemsCount[index].ToString();
|
|
this.UpdatePreView();
|
|
this.UpdatePreView();
|
|
}
|
|
}
|
|
private void UpdatePreView()
|
|
private void UpdatePreView()
|
|
@@ -336,15 +360,15 @@ namespace GFGGame
|
|
int count = 0;//消耗金币数量
|
|
int count = 0;//消耗金币数量
|
|
int hasExp = 0;//消耗材料提升的总经验
|
|
int hasExp = 0;//消耗材料提升的总经验
|
|
|
|
|
|
- for (int i = 0; i < _comFosterBottom.m_listLvConsume.numItems; i++)
|
|
|
|
|
|
+ for (int i = 0; i < itemsCount.Count; i++)
|
|
{
|
|
{
|
|
- UI_ComConsume listItem = UI_ComConsume.Proxy(_comFosterBottom.m_listLvConsume.GetChildAt(i));
|
|
|
|
|
|
+ // UI_ComConsume listItem = UI_ComConsume.Proxy(_comFosterBottom.m_listLvConsume.GetChildAt(i));
|
|
|
|
|
|
- if (int.Parse(listItem.m_txtUseCount.text) == 0) { continue; }
|
|
|
|
-
|
|
|
|
- ItemCfg itemCfg = (listItem.target.data as ItemCfg);
|
|
|
|
- count += itemCfg.cardUpLvGoldArr[1] * int.Parse(listItem.m_txtUseCount.text);
|
|
|
|
- hasExp += itemCfg.cardUpLvExp * int.Parse(listItem.m_txtUseCount.text);
|
|
|
|
|
|
+ // if (int.Parse(listItem.m_txtUseCount.text) == 0) { continue; }
|
|
|
|
+ if (itemsCount[i] == 0) continue;
|
|
|
|
+ ItemCfg itemCfg = ItemCfgArray.Instance.GetCfg(upgradeCardItemsArr[i]);
|
|
|
|
+ count += itemCfg.cardUpLvGoldArr[1] * itemsCount[i];
|
|
|
|
+ hasExp += itemCfg.cardUpLvExp * itemsCount[i];
|
|
|
|
|
|
}
|
|
}
|
|
_comFosterBottom.m_ComLvConsumeGold.m_txtCount.text = count.ToString();
|
|
_comFosterBottom.m_ComLvConsumeGold.m_txtCount.text = count.ToString();
|
|
@@ -356,11 +380,36 @@ namespace GFGGame
|
|
}
|
|
}
|
|
private void OnClcikBtnAll()
|
|
private void OnClcikBtnAll()
|
|
{
|
|
{
|
|
-
|
|
|
|
- for (int i = 0; i < _comFosterBottom.m_listLvConsume.numItems; i++)
|
|
|
|
- {
|
|
|
|
- UI_ComConsume listItem = UI_ComConsume.Proxy(_comFosterBottom.m_listLvConsume.GetChildAt(i));
|
|
|
|
- int itemNum = int.Parse(listItem.m_txtNum.text);
|
|
|
|
|
|
+ // bool isFullLv = false;
|
|
|
|
+ // int exp = 0;
|
|
|
|
+ // for (int i = 0; i < itemsCount.Count; i++)
|
|
|
|
+ // {
|
|
|
|
+ // UI_ComConsume listItem = UI_ComConsume.Proxy(_comFosterBottom.m_listLvConsume.GetChildAt(i));
|
|
|
|
+ // int itemNum = ItemDataManager.GetItemNum(upgradeCardItemsArr[i]);
|
|
|
|
+ // int maxLv = CardRarityCfgArray.Instance.GetCfg(_cardData.itemCfg.rarity).maxCardLvl;
|
|
|
|
+ // int needExp = CardLvlCfgArray.Instance.GetCfg(maxLv, _cardData.itemCfg.rarity).needExp;
|
|
|
|
+ // for (int j = 1; j <= itemNum; j++)
|
|
|
|
+ // {
|
|
|
|
+ // exp += ItemCfgArray.Instance.GetCfg(upgradeCardItemsArr[i]).cardUpLvExp;
|
|
|
|
+ // CardDataManager.GetPreViewLvAndExp(_cardData.itemCfg.rarity, _cardData.lv, _cardData.exp, exp, out int previewLv, out int previewExp);
|
|
|
|
+ // itemsCount[i] = j;
|
|
|
|
+ // listItem.m_txtUseCount.text = j.ToString();
|
|
|
|
+ // Debug.Log("previewLv:" + previewLv + " maxLv:" + maxLv + " previewExp:" + previewExp + " needExp:" + needExp);
|
|
|
|
+ // if (previewLv >= maxLv && previewExp >= needExp)
|
|
|
|
+ // {
|
|
|
|
+ // isFullLv = true;
|
|
|
|
+ // break;
|
|
|
|
+ // }
|
|
|
|
+ // }
|
|
|
|
+ // if (isFullLv) break;
|
|
|
|
+ // }
|
|
|
|
+ // // listItem.m_txtUseCount.text = itemsCount[index].ToString();
|
|
|
|
+ // this.UpdatePreView();
|
|
|
|
+
|
|
|
|
+ for (int i = 0; i < itemsCount.Count; i++)
|
|
|
|
+ {
|
|
|
|
+ // UI_ComConsume listItem = UI_ComConsume.Proxy(_comFosterBottom.m_listLvConsume.GetChildAt(i));
|
|
|
|
+ int itemNum = ItemDataManager.GetItemNum(upgradeCardItemsArr[i]);
|
|
for (int j = 0; j < itemNum; j++)
|
|
for (int j = 0; j < itemNum; j++)
|
|
{
|
|
{
|
|
if (this.OnClickBtnPlusLvConsume(_comFosterBottom.m_listLvConsume.GetChildAt(i), false) == false)
|
|
if (this.OnClickBtnPlusLvConsume(_comFosterBottom.m_listLvConsume.GetChildAt(i), false) == false)
|
|
@@ -373,7 +422,7 @@ namespace GFGGame
|
|
|
|
|
|
private void OnClickBtnUpLv()
|
|
private void OnClickBtnUpLv()
|
|
{
|
|
{
|
|
- int itemMoneyId = (UI_ComConsume.Proxy(_comFosterBottom.m_listLvConsume.GetChildAt(0)).target.data as ItemCfg).cardUpLvGoldArr[0];
|
|
|
|
|
|
+ int itemMoneyId = ItemCfgArray.Instance.GetCfg(upgradeCardItemsArr[0]).cardUpLvGoldArr[0];
|
|
int itemMoneyNum = int.Parse(_comFosterBottom.m_ComLvConsumeGold.m_txtCount.text);
|
|
int itemMoneyNum = int.Parse(_comFosterBottom.m_ComLvConsumeGold.m_txtCount.text);
|
|
if (itemMoneyNum > ItemDataManager.GetItemNum(itemMoneyId))
|
|
if (itemMoneyNum > ItemDataManager.GetItemNum(itemMoneyId))
|
|
{
|
|
{
|
|
@@ -388,15 +437,11 @@ namespace GFGGame
|
|
private async void UpLv()
|
|
private async void UpLv()
|
|
{
|
|
{
|
|
|
|
|
|
- itemsNum.Clear();
|
|
|
|
|
|
+ // itemsCount.Clear();
|
|
int allConsume = 0;
|
|
int allConsume = 0;
|
|
- for (int i = 0; i < _comFosterBottom.m_listLvConsume.numItems; i++)
|
|
|
|
|
|
+ for (int i = 0; i < itemsCount.Count; i++)
|
|
{
|
|
{
|
|
- UI_ComConsume listItem = UI_ComConsume.Proxy(_comFosterBottom.m_listLvConsume.GetChildAt(i));
|
|
|
|
- int itemId = (listItem.target.data as ItemCfg).id;
|
|
|
|
- int itemNum = int.Parse(listItem.m_txtUseCount.text);
|
|
|
|
- allConsume += itemNum;
|
|
|
|
- itemsNum.Add(itemNum);
|
|
|
|
|
|
+ allConsume += itemsCount[i];
|
|
}
|
|
}
|
|
if (allConsume == 0)
|
|
if (allConsume == 0)
|
|
{
|
|
{
|
|
@@ -407,7 +452,7 @@ namespace GFGGame
|
|
if (CardDataManager.isFullLv(_cardData.id, _cardData.lv) == false)
|
|
if (CardDataManager.isFullLv(_cardData.id, _cardData.lv) == false)
|
|
{
|
|
{
|
|
int lv = _cardData.lv;
|
|
int lv = _cardData.lv;
|
|
- bool result = await CardSProxy.UpgradeCardLvl(_cardData.id, itemsNum);
|
|
|
|
|
|
+ bool result = await CardSProxy.UpgradeCardLvl(_cardData.id, itemsCount);
|
|
if (result)
|
|
if (result)
|
|
{
|
|
{
|
|
if (_showLv - lv >= 1)
|
|
if (_showLv - lv >= 1)
|
|
@@ -417,7 +462,7 @@ namespace GFGGame
|
|
}
|
|
}
|
|
this.UpdateCommon();
|
|
this.UpdateCommon();
|
|
this.UpdateUpLvView();
|
|
this.UpdateUpLvView();
|
|
-
|
|
|
|
|
|
+ this.ClearItemsCountList();
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
@@ -652,6 +697,7 @@ namespace GFGGame
|
|
this.UpdateCommon();
|
|
this.UpdateCommon();
|
|
if (_comFosterBottom.m_ctrlTab.selectedIndex == 0)
|
|
if (_comFosterBottom.m_ctrlTab.selectedIndex == 0)
|
|
{
|
|
{
|
|
|
|
+ this.ClearItemsCountList();
|
|
this.UpdateUpLvView();
|
|
this.UpdateUpLvView();
|
|
}
|
|
}
|
|
else if (_comFosterBottom.m_ctrlTab.selectedIndex == 1)
|
|
else if (_comFosterBottom.m_ctrlTab.selectedIndex == 1)
|
|
@@ -668,7 +714,7 @@ namespace GFGGame
|
|
if (!CardDataManager.isFullLv(_cardData.id, _cardData.lv, false))
|
|
if (!CardDataManager.isFullLv(_cardData.id, _cardData.lv, false))
|
|
{
|
|
{
|
|
CardLvlCfg cardLvCfg = CardLvlCfgArray.Instance.GetCfg(_showLv, _cardData.itemCfg.rarity);
|
|
CardLvlCfg cardLvCfg = CardLvlCfgArray.Instance.GetCfg(_showLv, _cardData.itemCfg.rarity);
|
|
- _comFosterBottom.m_listLvConsume.numItems = GlobalCfgArray.globalCfg.upgradeCardItemsArr.Length;
|
|
|
|
|
|
+ _comFosterBottom.m_listLvConsume.numItems = upgradeCardItemsArr.Length;
|
|
}
|
|
}
|
|
if (!CardDataManager.isFullStar(_cardData.id, _cardData.star, false))
|
|
if (!CardDataManager.isFullStar(_cardData.id, _cardData.star, false))
|
|
{
|
|
{
|