204 lines
6.2 KiB
C#
204 lines
6.2 KiB
C#
|
using System.Collections;
|
|||
|
using System.Collections.Generic;
|
|||
|
using UnityEngine;
|
|||
|
using UnityEngine.UI;
|
|||
|
|
|||
|
public class EquipInfoPanel : BasePanel
|
|||
|
{
|
|||
|
public Button btnClose;
|
|||
|
public Button btnDress;
|
|||
|
public Button btnFenjie;
|
|||
|
public Button btnChong;
|
|||
|
|
|||
|
public Text txtName;
|
|||
|
public Text txtJingjie;
|
|||
|
public Text txtQuality;
|
|||
|
|
|||
|
public Transform basicAtt;
|
|||
|
public Transform addAtt;
|
|||
|
public GameObject txtEntry;
|
|||
|
|
|||
|
//<2F><>װ<EFBFBD><D7B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
private EquipData equipData;
|
|||
|
private PlayerData player;
|
|||
|
|
|||
|
public override void Init()
|
|||
|
{
|
|||
|
player = GameDataMgr.Instance.player;
|
|||
|
|
|||
|
btnClose.onClick.AddListener(() =>
|
|||
|
{
|
|||
|
UIManager.Instance.HidePanel<EquipInfoPanel>();
|
|||
|
});
|
|||
|
btnDress.onClick.AddListener(() =>
|
|||
|
{
|
|||
|
DressEquip();
|
|||
|
UIManager.Instance.HidePanel<EquipInfoPanel>();
|
|||
|
});
|
|||
|
btnFenjie.onClick.AddListener(() =>
|
|||
|
{
|
|||
|
|
|||
|
});
|
|||
|
btnChong.onClick.AddListener(() =>
|
|||
|
{
|
|||
|
|
|||
|
});
|
|||
|
}
|
|||
|
|
|||
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ķ<EFBFBD><C4B7><EFBFBD>
|
|||
|
public void UpdatePanel(EquipData equip)
|
|||
|
{
|
|||
|
equipData = equip;
|
|||
|
|
|||
|
txtName.text=equip.name;
|
|||
|
txtName.color = GameMgr.Instance.HexToColor(equip.color);
|
|||
|
txtName.gameObject.GetComponent<Outline>().effectColor = GameMgr.Instance.HexToColorAlaph(equip.color);
|
|||
|
|
|||
|
txtJingjie.text=equip.name.Substring(0,2);
|
|||
|
txtJingjie.color = GameMgr.Instance.HexToColor(equip.color);
|
|||
|
txtJingjie.gameObject.GetComponent<Outline>().effectColor = GameMgr.Instance.HexToColorAlaph(equip.color);
|
|||
|
|
|||
|
txtQuality.text = equip.colorName;
|
|||
|
txtQuality.color = GameMgr.Instance.HexToColor(equip.color);
|
|||
|
txtQuality.gameObject.GetComponent<Outline>().effectColor = GameMgr.Instance.HexToColorAlaph(equip.color);
|
|||
|
|
|||
|
CreateTxtEntry(equip);
|
|||
|
}
|
|||
|
|
|||
|
//<2F><><EFBFBD><EFBFBD>װ<EFBFBD><D7B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
private void CreateTxtEntry(EquipData equip)
|
|||
|
{
|
|||
|
GameObject go;
|
|||
|
if (equip.hp!=0)
|
|||
|
{
|
|||
|
go = Instantiate(txtEntry);
|
|||
|
go.transform.SetParent(basicAtt, false);
|
|||
|
go.GetComponent<TxtEntry>().UpdatePanel("Ѫ<><D1AA>+"+equip.hp);
|
|||
|
}
|
|||
|
if (equip.atk != 0)
|
|||
|
{
|
|||
|
go = Instantiate(txtEntry);
|
|||
|
go.transform.SetParent(basicAtt, false);
|
|||
|
go.GetComponent<TxtEntry>().UpdatePanel("<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>+" + equip.atk);
|
|||
|
}
|
|||
|
if (equip.def != 0)
|
|||
|
{
|
|||
|
go = Instantiate(txtEntry);
|
|||
|
go.transform.SetParent(basicAtt, false);
|
|||
|
go.GetComponent<TxtEntry>().UpdatePanel("<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>+" + equip.def);
|
|||
|
}
|
|||
|
if (equip.crit != 0f)
|
|||
|
{
|
|||
|
go = Instantiate(txtEntry);
|
|||
|
go.transform.SetParent(basicAtt, false);
|
|||
|
go.GetComponent<TxtEntry>().UpdatePanel("<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>+" + equip.crit+"%");
|
|||
|
}
|
|||
|
if (equip.critDamage != 0f)
|
|||
|
{
|
|||
|
go = Instantiate(txtEntry);
|
|||
|
go.transform.SetParent(basicAtt, false);
|
|||
|
go.GetComponent<TxtEntry>().UpdatePanel("<22><><EFBFBD><EFBFBD><EFBFBD>˺<EFBFBD>+" + equip.critDamage + "%");
|
|||
|
}
|
|||
|
if (equip.atkSpeed != 0f)
|
|||
|
{
|
|||
|
go = Instantiate(txtEntry);
|
|||
|
go.transform.SetParent(addAtt, false);
|
|||
|
go.GetComponent<TxtEntry>().UpdatePanel("<22><><EFBFBD><EFBFBD><EFBFBD>ٶ<EFBFBD>+" + equip.atkSpeed + "%");
|
|||
|
}
|
|||
|
if (equip.kangCrit != 0f)
|
|||
|
{
|
|||
|
go = Instantiate(txtEntry);
|
|||
|
go.transform.SetParent(addAtt, false);
|
|||
|
go.GetComponent<TxtEntry>().UpdatePanel("<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>+" + equip.kangCrit + "%");
|
|||
|
}
|
|||
|
if (equip.gasAdd != 0f)
|
|||
|
{
|
|||
|
go = Instantiate(txtEntry);
|
|||
|
go.transform.SetParent(addAtt, false);
|
|||
|
go.GetComponent<TxtEntry>().UpdatePanel("<22><><EFBFBD><EFBFBD><EFBFBD>ӳ<EFBFBD>+" + equip.gasAdd + "%");
|
|||
|
}
|
|||
|
if (equip.yuAdd != 0f)
|
|||
|
{
|
|||
|
go = Instantiate(txtEntry);
|
|||
|
go.transform.SetParent(addAtt, false);
|
|||
|
go.GetComponent<TxtEntry>().UpdatePanel("<22><><EFBFBD><EFBFBD><EFBFBD>ӳ<EFBFBD>+" + equip.yuAdd + "%");
|
|||
|
}
|
|||
|
if (equip.stoneAdd != 0f)
|
|||
|
{
|
|||
|
go = Instantiate(txtEntry);
|
|||
|
go.transform.SetParent(addAtt, false);
|
|||
|
go.GetComponent<TxtEntry>().UpdatePanel("<22><>ʯ<EFBFBD>ӳ<EFBFBD>+" + equip.stoneAdd + "%");
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
//<2F><><EFBFBD>ҵ<EFBFBD><D2B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
private void DressEquip()
|
|||
|
{
|
|||
|
GameDataMgr.Instance.userEquip.itemEquip.Remove(equipData);
|
|||
|
switch (equipData.equipType)
|
|||
|
{
|
|||
|
case 1:
|
|||
|
AddEquip("tou");
|
|||
|
break;
|
|||
|
case 2:
|
|||
|
AddEquip("yi");
|
|||
|
break;
|
|||
|
case 3:
|
|||
|
AddEquip("shou");
|
|||
|
break;
|
|||
|
case 4:
|
|||
|
AddEquip("yao");
|
|||
|
break;
|
|||
|
case 5:
|
|||
|
AddEquip("tui");
|
|||
|
break;
|
|||
|
case 6:
|
|||
|
AddEquip("xie");
|
|||
|
break;
|
|||
|
}
|
|||
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
PlayerDataAdd();
|
|||
|
//<2F><><EFBFBD><EFBFBD>װ<EFBFBD><D7B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
UIManager.Instance.GetPanel<EquipPanel>().UpdatePanel();
|
|||
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
UIManager.Instance.GetPanel<UserPanel>().UpdatePanel();
|
|||
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
GameDataMgr.Instance.EquipDataSave();
|
|||
|
GameDataMgr.Instance.PlayerDataSave();
|
|||
|
}
|
|||
|
|
|||
|
private void AddEquip(string name)
|
|||
|
{
|
|||
|
if (GameDataMgr.Instance.userEquip.dressEquip.ContainsKey(name))
|
|||
|
{
|
|||
|
if (GameDataMgr.Instance.userEquip.dressEquip[name]!=null)
|
|||
|
{
|
|||
|
EquipData equip = GameDataMgr.Instance.userEquip.dressEquip[name];
|
|||
|
GameDataMgr.Instance.userEquip.dressEquip[name] = equipData;
|
|||
|
GameDataMgr.Instance.userEquip.itemEquip.Add(equip);
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
GameDataMgr.Instance.userEquip.dressEquip[name] = equipData;
|
|||
|
}
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
GameDataMgr.Instance.userEquip.dressEquip.Add(name, equipData);
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
private void PlayerDataAdd()
|
|||
|
{
|
|||
|
player.hp += equipData.hp;
|
|||
|
player.atk += equipData.atk;
|
|||
|
player.def += equipData.def;
|
|||
|
player.crit += equipData.crit;
|
|||
|
player.critDamage += equipData.critDamage;
|
|||
|
player.atkSpeed += equipData.atkSpeed;
|
|||
|
player.kangCrit += equipData.kangCrit;
|
|||
|
player.gasAdd += equipData.gasAdd;
|
|||
|
player.stoneAdd += equipData.stoneAdd;
|
|||
|
}
|
|||
|
}
|