背包系统1

背包系统

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述在这里插入图片描述

创建物品基类
在这里插入图片描述

创建基类的子类消耗品类。脚本都放在电脑里了,创建equipment类,创建各种类。创建Resources文件夹,把sprite文件夹放在这个文件夹下面。把里面的backgroud放在resources文件夹外面的sprites文件夹中。在json在线编辑器中写好json文件,然后创建一个文本文件(后缀名改为json),然后复制到桌面。把这个文件拖到untiy的resources里面即可
在这里插入图片描述

创建inventorymanage类。把litjson的dll拖到unity的plugins里面。在inventorymanage里面添加对litjson的引用(可能已经引用过了)。下面用的是assetstore里面的json object方法。在inventorymanage里面解析json,注意这个插件里面tostring改为. str,转化为int类型为. n,其他在插件文档里可以找得到。吧inventorymanage挂给空物体,即可运行。脚本都在电脑里。
创建UI,创建一个panel 作为背景,canvans里canvas scaler设为第二个,切合屏幕大小。可以在windows—rendering里面去掉天空盒子,用main camera的backgroud修改背景颜色。创建一个子panel,color的alpha给0。子panel下面创建image作为物品槽。
在这里插入图片描述

slotpanel给一个grid layout group组件。调整参数,复制slot。创建标题,把titleBg的anchor放在最上面
在这里插入图片描述

把两个panel的ray cast target取消勾选。slot做成预制件
在这里插入图片描述

item也做成预制件(和他子物体一起取消raycadt target。)创建脚本itemUi给item,创建脚本slot给slot。创建脚本knapsack给knapsackpanel。创建脚本inventory。
在这里插入图片描述

创建inage和text,让inage成为text的子物体,image的anchor选最右下角的那个。在这里插入图片描述

这个脚本是用来测试的。给text添加content size fitter组件,都给preferred size。把image的alpha调为最大,再给text创建子物体text
在这里插入图片描述

创建脚本tooltip给tooltip,取消这三个的ray cast target。给tooltip一个canvas group组件,取消勾选interactable。把slot的raycast target勾选上。让物品说明跟随鼠标的功能似乎无法实现。
在这里插入图片描述

拖一个item到场景改名。复制一
个knapasackpanel,改名为chest,再创建一个chest脚本给chest。给knapasackpanel和chest添加canvas group组件。复制一个panel改名为characterPanel,把slot拖出来,删除slotpanel
在这里插入图片描述

在canvas里面,摆放的位置越下面,显示的越在上面。创建脚本equipmentslot。给到characterpanel下面的slot。把原来的
在这里插入图片描述

slot改名做成预制体。把item赋值过去。创建characterpanel脚本给characterpanel。可以把三个panel的ray cast target都勾选上,这样就不会丢掉物品。transform的寻找方法只能用于下面一层子物体。复制一个vendorpanel,创建一个vendor给这个物体。创建vendorslot脚本。给vendorpanel下面的slot改名为vendorslot给同名脚本,做成预制体。创建image子物体text,金币和他的数量。复制forgepanel。创建脚本forge给forgepanel。创建image和text,给imagebutton组件,为锻造按钮。创建formula脚本,button里面添加forge里面的forgeitem方法。有时候新建的对象可能会输出位null。复制锻造按钮,改名为保存和加载。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值