unity3d制作背包系统(0)--整体结构

本文介绍了使用Unity3D制作背包系统的过程,包括整体架构、物品类定义、存储实现、UI交互及数据读取。作者分享了背包系统的四部分:物品定义、存储、UI显示和数据读取,并提供了部分伪代码示例。文章还提到了系统已知的缺陷和更新日志。
摘要由CSDN通过智能技术生成

unity3d制作背包系统(0)–整体结构

序言

在这篇文章写下的时候,距离我开始设计这个背包系统的时间已经过去将近一年了。这个背包系统是属于我的一个正在开发的小游戏的,之所以当时没有写下这篇文章而是现在来完成的原因,一是当时我并没有很积极写博客记录的意愿,二是临近毕业找工作,一些博客可以作为具有开发经验的证明。
现在看起来这个系统还是有些多余和缺漏的地方,这一方面是项目初期的个人想法太多变,走了一些弯路,另一方面一年来个人开发经验也逐渐增多,旧设计自然看不顺眼。
废话不多说,开始正文。

背包系统对多数游戏的重要性不言而喻,在最开始设计背包系统的时候我也查过大佬的实现方案,奈何当时太过年轻,看不懂大佬的思路,只能自己慢慢摸索着做了一个。

效果图

下面先上效果图

右边部分相当于《我的世界》的创造模式物品栏,只是背包系统的一个延伸,在这里不需要过多关心,只用看左边背包部分。
背包演示

总的来说,UI上的基本功能就是
当鼠标空时:左击格子拿取全部,右击拿取一半
当鼠标有物品时:
左击空的格子将鼠标的物品放入格子,右击空格子则将鼠标上的物品放一个到格子中;
左击有物品的格子互换格子内容和鼠标内容,右击有物品的格子与左击相同。
跟《我的世界》背包的UI逻辑很像。

0.背包系统的整体架构

结合我自己的开发过程和观摩了一些别人的博客,我认为背包系统分为四个部分:定义物品,物品存储,UI显示,数据读取

提示:以下是伪代码

其中定义物品是指定义物品的数据形式,像这样

public class itemunit  
{
   
	 public int id=0;//物品ID
	 public int num=0;//个数
	 public string name="item"; //物品的真实名称
//可以自行添加更多数据
 }
</
  • 2
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值