using UnityEngine; using UnityEngine.UI; using System.Collections; using Games.Item; using GCGame.Table; public class PlayerEquipInfo : MonoBehaviour { public UICameraTexture _UICameraTexture; public Text _NameText; public UIImgText _CombatText; public CommonItemEquipItem[] _EquipItems; public int[] _EquipSlot; void Awake() { Games.Events.EventDispatcher.Instance.Add(Games.Events.EventId.MainPlayerModelChange, OnModelChange); _UICameraTexture.isPreview = true; } private void OnEnable() { UpdateShowModel(); } void OnDestroy() { Games.Events.EventDispatcher.Instance.Remove(Games.Events.EventId.MainPlayerModelChange, OnModelChange); } public void OnModelChange(object param) { UpdateShowModel(); } public void UpdateInfo() { _NameText.text = GameManager.gameManager.PlayerDataPool.MainPlayerBaseAttr.RoleName; _CombatText.text = GameManager.gameManager.PlayerDataPool.MainPlayerBaseAttr.EquipTotalCombatValue.ToString(); //CombatValue.CalculateEquipTotal().ToString(); GameItemContainer EquipPack = GameManager.gameManager.PlayerDataPool.EquipPack; for (int index = 0; index < EquipPack.ContainerSize; ++index) { GameItem equip = EquipPack.GetItem(GetEquipSlotByIndex(index)); _EquipItems[index].InitItem(equip); _EquipItems[index].SetStrength(GameManager.gameManager.PlayerDataPool.EquipSlotStrength[GetEquipSlotByIndex(index)].lv); _EquipItems[index]._ClickEvent = OnEquipClick; } } void OnEquipClick(object equipObj) { GameItem equipItem = equipObj as GameItem; EquipTooltipsLogic.ShowEquipTooltip(equipItem, ItemTooltipsLogic.ShowType.Equiped, transform.position); } public void UpdateShowModel() { var mainPlayer = Singleton.GetInstance().MainPlayer; if (mainPlayer != null) { _UICameraTexture.InitPlayerModel(mainPlayer); } } // 已经失效的接口,并且UICameraTexture.InitShowGO(GameObject showObj)也早以不能使用 // private void LoadModelFinish(string modelName, GameObject resObj, object param1, object param2, object param3 = null) // { // if (resObj == null) // return; // // _UICameraTexture.InitShowGO(resObj); // } public void ShowEnHanceWin() { EquipQianghuaSuitTips.Show(GameManager.gameManager.PlayerDataPool.EquipSuitID, GameManager.gameManager.PlayerDataPool.NextSuitEquipCnt); } int GetEquipSlotByIndex(int index) { //switch (index) //{ // case 0: return (int)EquipPackSlot.Slot_WEAPON; // case 1: return (int)EquipPackSlot.Slot_HEAD; // case 2: return (int)EquipPackSlot.Slot_RING; // case 3: return (int)EquipPackSlot.Slot_ARMOR; // case 4: return (int)EquipPackSlot.Slot_NECK; // case 5: return (int)EquipPackSlot.Slot_CUFF; // case 6: return (int)EquipPackSlot.Slot_AMULET; // case 7: return (int)EquipPackSlot.Slot_LEG_GUARD; // case 8: return (int)EquipPackSlot.Slot_BELT; // case 9: return (int)EquipPackSlot.Slot_SHOES; // default: // break; //} return _EquipSlot[index]; } }