Unity背包系统二 : 实现获取和点击时显示物品信息

本文指导如何在Unity中通过构造点击事件实现Slot显示物品信息,并介绍获取物品时在世界右侧显示的实现步骤。
摘要由CSDN通过智能技术生成

一、构造点击时显示物品信息方法

1、构建ItemRead并传入一个参数itemSO
由于时点击时显示物品信息,所以每一个Slot也是一个按钮,请给Slot添加按钮组件
2、同步物品的信息方法
在这里插入图片描述
(这里加上 “:” 的原因是因为我在搭建场景时,没有考虑好具体的需求,所以在开始之间最好有一个完整的思路)
3、在代码Slot中获取对应点击时的按钮

public Image slotImage;
public Button showDetailsBtn;

4、在场景中拖拽赋值
在这里插入图片描述
5、在Slot代码中书写具体点击按钮时执行逻辑

private void Awake() 
    {
        showDetailsBtn.onClick.AddListener(ItemRead);

    }

    public void ItemRead()
    {
        InventoryManager.ItemRead(slotItemSO);
    }

这样就实现了点击时,背包右侧显示物品信息

二、获取物品时在世界右侧显示获取物品信息

在这里插入图片描述
(这里我们只讲具体的实现逻辑)
1、获取右侧生成显示物品信息的坐标
在这里插入图片描述
2、创建显示物品信息的预制体Gain
在这里插入图片描述
3、创建挂载在预制体上的代码Gain

public class Gain : MonoBehaviour
{
   public Text gainName;//物品的名字
 }

4、在BagManager中获得预制体,并拖拽赋值

    public Gain gainPre;

5、在InventoryManager中构建方法DisplayGetArticleFromWorld,并传递一个参数Slot,

public static void DisplayGetArticleFromWorld(Slot getItem)//展示从世界获得的物品信息
    {
        Gain gain = null;
        gain = Instantiate(instance.bagManager.gainPre,instance.bagManager.displayGainInformation);
        gain.gainName.text = getItem.slotItemSO.itemName;
    }

6、这个代码需要在创建Slot时执行(不了解的可以查看Unity背包系统一:实现物品获取效果
在这里插入图片描述
7、持续一段时间后销毁自身
在这里插入图片描述
检测自身是否启动,如果是就在延迟一秒后销毁自身,在Gain代码中执行。
(相信看到这里大家会发现,我们也可以传递Item参数,在场景中的Item销毁时执行,这个方法大家可以自行实验)

  • 5
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值