这个背包是博主刚学完UGUI的八个回调时写的简陋版,之后会更新一个进阶版。
个人觉得理解这个之后,再去写复杂的背包功能(已更新https://blog.csdn.net/maybe_ice/article/details/104908125)
UI展示如下:
具体要求
一个格子只能放一件物品,武器格子只能放武器,防具格子只能放防具(我这里直接通过TAG区分)。。。
物品在背包中可以随便放位置,可以随意交换位置
装备武器后可以更换武器
很简单的背包基本功能。
using UnityEngine;
using UnityEngine.EventSystems;
using UnityEngine.UI;
public class EquipItemController : MonoBehaviour, IBeginDragHandler, IDragHandler, IEndDragHandler
{
private Image currentImage;
/// <summary>
/// 物品原先所在的格子
/// </summary>
private Transform originParent;
void Awake()
{
//初始化当前拖拽的物品
currentImage = GetComponent<Image>();
}
public void OnBeginDrag(PointerEventData eventData)
{
//开始拖拽的时候记住当前物品所属的父对象(物品格子)
originParent = transform.parent.transform;
//将当前拖拽的物品的图片的射线检测关闭
currentImage.raycastTarget = false;
}
public void OnDra