1
This commit is contained in:
53
unity/Assets/Script/UI/Bag/CanUseItem.cs
Normal file
53
unity/Assets/Script/UI/Bag/CanUseItem.cs
Normal file
@@ -0,0 +1,53 @@
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
using UnityEngine.UI;
|
||||
|
||||
public class CanUseItem : MonoBehaviour
|
||||
{
|
||||
public Transform rectTransfrom;
|
||||
|
||||
public Text UpItemNum;
|
||||
private void OnEnable()
|
||||
{
|
||||
PlayerInfo.Instance.OnUpdateMainUI += UpdateUI;
|
||||
UpdateUI();
|
||||
}
|
||||
private void OnDisable()
|
||||
{
|
||||
PlayerInfo.Instance.OnUpdateMainUI -= UpdateUI;
|
||||
}
|
||||
public void UpdateUI()
|
||||
{
|
||||
foreach (Transform item in rectTransfrom)
|
||||
{
|
||||
Destroy(item.gameObject);
|
||||
}
|
||||
if(PlayerInfo.Instance.info.BagInfo.Count==0|| !PlayerInfo.Instance.info.BagInfo.ContainsKey(0))//背包中没有道具
|
||||
{
|
||||
UpItemNum.text = "0";
|
||||
}
|
||||
foreach (var item in PlayerInfo.Instance.info.BagInfo)
|
||||
{
|
||||
if(item.Key==Date.Instance.ItemDate[0].Id)//背包中道具Id等于道具表中的升级道具
|
||||
{
|
||||
UpItemNum.text = item.Value.ToString();
|
||||
}
|
||||
|
||||
if(Date.Instance.ItemDate[item.Key].type==ItemClass.User)//能够使用的道具
|
||||
{
|
||||
string path = "UI/Perfab/Item";
|
||||
UnityEngine.Object go = Resloader.Load<GameObject>(path);
|
||||
if (go != null)//预制体不为空
|
||||
{
|
||||
GameObject m = (GameObject)Instantiate(go, rectTransfrom);
|
||||
UIItemInfo ui = m.GetComponent<UIItemInfo>();
|
||||
ui.gameObject.SetActive(true);
|
||||
|
||||
ui.SetInfo(item.Key, item.Value);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
11
unity/Assets/Script/UI/Bag/CanUseItem.cs.meta
Normal file
11
unity/Assets/Script/UI/Bag/CanUseItem.cs.meta
Normal file
@@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: c480308bc5b87dd4193ea0174eb6d6b8
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
47
unity/Assets/Script/UI/Bag/Date.cs
Normal file
47
unity/Assets/Script/UI/Bag/Date.cs
Normal file
@@ -0,0 +1,47 @@
|
||||
using System;
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
|
||||
public class Date:Singleton<Date>
|
||||
{
|
||||
public List<Item> ItemDate = new List<Item>();
|
||||
|
||||
public List<LevelUpDefine> UpDate = new List<LevelUpDefine>();
|
||||
|
||||
}
|
||||
|
||||
public enum ItemClass
|
||||
{
|
||||
User,
|
||||
Up,
|
||||
}
|
||||
[Serializable]
|
||||
public class CharInfo
|
||||
{
|
||||
public string DatePath;
|
||||
|
||||
public string playerName;
|
||||
public int Level;
|
||||
public int exp;
|
||||
|
||||
public float maxHp;
|
||||
public float attack;
|
||||
|
||||
//局内属性
|
||||
public int currentMap;
|
||||
public float currentHp;
|
||||
public float testAttack;
|
||||
|
||||
//背包数据
|
||||
public Dictionary<int, int> BagInfo;//背包字典
|
||||
public List<int> BagKey;
|
||||
public List<int> BagValue;
|
||||
|
||||
//升级数据
|
||||
|
||||
public Dictionary<int, bool> UpInfo;//升级字典
|
||||
public List<int> UpKey;
|
||||
public List<bool> UpValue;
|
||||
}
|
||||
|
||||
11
unity/Assets/Script/UI/Bag/Date.cs.meta
Normal file
11
unity/Assets/Script/UI/Bag/Date.cs.meta
Normal file
@@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 0af01c0f76595044aa27ad201f2d08b0
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
21
unity/Assets/Script/UI/Bag/ItemTip.cs
Normal file
21
unity/Assets/Script/UI/Bag/ItemTip.cs
Normal file
@@ -0,0 +1,21 @@
|
||||
using System;
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
using UnityEngine.UI;
|
||||
|
||||
public class ItemTip : MonoBehaviour
|
||||
{
|
||||
public Image icon;
|
||||
public Text itemName;
|
||||
public Text descripte;
|
||||
|
||||
|
||||
public void Init(Item item)
|
||||
{
|
||||
if (item == null) return;
|
||||
itemName.text = item.ItemName;
|
||||
descripte.text = item.Descripte;
|
||||
icon.sprite = PlayerInfo.Instance.GetSprite(item.Path);
|
||||
}
|
||||
}
|
||||
11
unity/Assets/Script/UI/Bag/ItemTip.cs.meta
Normal file
11
unity/Assets/Script/UI/Bag/ItemTip.cs.meta
Normal file
@@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: f120710dbd20f65488798761408eddb4
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
53
unity/Assets/Script/UI/Bag/UIBagInfo.cs
Normal file
53
unity/Assets/Script/UI/Bag/UIBagInfo.cs
Normal file
@@ -0,0 +1,53 @@
|
||||
using System;
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
|
||||
public class UIBagInfo : UIWindow
|
||||
{
|
||||
public Transform rectTransfrom;
|
||||
|
||||
public ItemTip tip;
|
||||
|
||||
private void Awake()
|
||||
{
|
||||
tip.gameObject.SetActive(false);
|
||||
}
|
||||
private void OnEnable()
|
||||
{
|
||||
PlayerInfo.Instance.OnUpdateBagInfo += UpdateUI;
|
||||
UpdateUI();
|
||||
}
|
||||
private void OnDisable()
|
||||
{
|
||||
PlayerInfo.Instance.OnUpdateBagInfo -= UpdateUI;
|
||||
tip.gameObject.SetActive(false);
|
||||
}
|
||||
public void UpdateUI()
|
||||
{
|
||||
foreach (Transform item in rectTransfrom)
|
||||
{
|
||||
Destroy(item.gameObject);
|
||||
}
|
||||
foreach (var item in PlayerInfo.Instance.info.BagInfo)
|
||||
{
|
||||
string path = "UI/Perfab/Item";
|
||||
UnityEngine.Object go = Resloader.Load<GameObject>(path);
|
||||
if (go != null)
|
||||
{
|
||||
GameObject m = (GameObject)Instantiate(go, rectTransfrom);
|
||||
UIItemInfo ui = m.GetComponent<UIItemInfo>();
|
||||
ui.gameObject.SetActive(true);
|
||||
|
||||
ui.SetInfo(item.Key, item.Value,this);
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
public void ShowItem(Item item)
|
||||
{
|
||||
tip.gameObject.SetActive(true);
|
||||
tip.Init(item);
|
||||
}
|
||||
}
|
||||
11
unity/Assets/Script/UI/Bag/UIBagInfo.cs.meta
Normal file
11
unity/Assets/Script/UI/Bag/UIBagInfo.cs.meta
Normal file
@@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 0e4c791cc72f9824fa30639aa8129d70
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
50
unity/Assets/Script/UI/Bag/UIItemInfo.cs
Normal file
50
unity/Assets/Script/UI/Bag/UIItemInfo.cs
Normal file
@@ -0,0 +1,50 @@
|
||||
using System;
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
using UnityEngine.EventSystems;
|
||||
using UnityEngine.UI;
|
||||
|
||||
public class UIItemInfo : MonoBehaviour, IPointerClickHandler
|
||||
{
|
||||
public Text numText;
|
||||
public Text itemName;
|
||||
public Image icon;
|
||||
|
||||
public UIBagInfo info;
|
||||
public Item item;
|
||||
|
||||
public void SetInfo(int id,int num,UIBagInfo root)
|
||||
{
|
||||
info = root;
|
||||
foreach(var item in Date.Instance.ItemDate)
|
||||
{
|
||||
if(item.Id==id)
|
||||
{
|
||||
this.item = item;
|
||||
itemName.text = item.ItemName;
|
||||
numText.text = num.ToString();
|
||||
icon.sprite = PlayerInfo.Instance.GetSprite(item.Path);
|
||||
}
|
||||
}
|
||||
}
|
||||
public void SetInfo(int id, int num)
|
||||
{
|
||||
foreach (var item in Date.Instance.ItemDate)
|
||||
{
|
||||
if (item.Id == id)
|
||||
{
|
||||
this.item = item;
|
||||
itemName.text = item.ItemName;
|
||||
numText.text = num.ToString();
|
||||
icon.sprite = PlayerInfo.Instance.GetSprite(item.Path);
|
||||
}
|
||||
}
|
||||
}
|
||||
public void OnPointerClick(PointerEventData eventData)
|
||||
{
|
||||
Debug.Log("µã»÷");
|
||||
info.ShowItem(item);
|
||||
|
||||
}
|
||||
}
|
||||
11
unity/Assets/Script/UI/Bag/UIItemInfo.cs.meta
Normal file
11
unity/Assets/Script/UI/Bag/UIItemInfo.cs.meta
Normal file
@@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: e5338ea0901669d409a14b6811dfc1ae
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
Reference in New Issue
Block a user