手游实战项目:4.背包系统

手游实战项目:4.背包系统

ID:12143670

大小:196.00 KB

页数:12页

时间:2018-07-15

手游实战项目:4.背包系统_第1页
手游实战项目:4.背包系统_第2页
手游实战项目:4.背包系统_第3页
手游实战项目:4.背包系统_第4页
手游实战项目:4.背包系统_第5页
资源描述:

《手游实战项目:4.背包系统》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、好了,现在开始万众期待的背包系统。由于这个背包系统并不是这次系列的主题,可能在设计上有点儿取巧,其实就是懒!但是也并不是一无是处,应该还是能用的。呵呵。。。     背包系统和道具系统一样主要分成两个部分,第一部分就是道具槽,或者道具格,就是存放单个道具的那个东西,第二部分就是管理器(这个东西貌似哪里都需要,呵呵),就是背包了,就是我们今天的重点了。另外有个好消息,今天继续有Editor编程。文章来自【狗刨学习网】 =================道具槽================= 道具槽,指定动作,新建C#脚本,重命名 Inventory_Slot,并

2、实现IComparable接口,用于排序。 变量: item_id      记录道具的ID current_stack      当前的堆栈数 函数: Inventory_Slot(intitemID)      构造函数,保证每个slot记录的都是都是有意义的道具,我们歧视无意义的Slot!! public boolWithdraw()      取出,或移除1个道具,如果事后堆栈数小于等于0,返回true,通知管理器删除这个Slot。 public  boolDeposit()      存入,或增加1个道具,如果事前堆栈数

3、到达最大值,则无法存入,返回false,通知管理器。 public boolFull_Stack() 判断当前堆栈数是否达到最大值。 public intCompareTo(Inventory_Slotx) 用于排序用的,这个可以根据实际需要编写。       好了,简单易懂吧,这就是道具槽,道具槽用于管理同一个格子的道具,主要就是管理堆栈数的问题而已。好了,下面开始管理器设计。 =================管理器================= 管理器,制定动作,新建C#脚本,重命名Inventory_Manager。同样,设计成单例模式。 变量: m

4、oney      记录玩家的金钱,如有需要,可以添加更多的种类,或类WOW的各种货币。 player_inventory      玩家身上的背包。 store_inventory      仓库。 shop_inventory          商店,这样设计其实是不对的,这里主要为了测试方便而设计的。[size=13.63636302948px]player_inventory_limit,store_inventory_limit,shop_inventory_limit 背包的道具槽上限。 角色装备的ID,如果只要一个主角的话,可以将其设计成单例,所以

5、一同写进管理器。#regionEquipment      publicint          equipmentID_Main_Weapon=-1,          equipmentID_Second_Weapon=-1,          equipmentID_Shield=-1,          equipmentID_Head=-1,          equipmentID_Shoulder=-1,          equipmentID_Belt=-1;      //addmoreequipmenthere...#endregion  

6、     背包种类的枚举,这个地方就是我所说的取巧的地方了,详细可以翻看代码。enumInventory_Type      {          Player,          Store,          Shop      }; 函数: publicstatic Inventory_ManagerGet_Manager() 这个方法同道具管理器的一样,获取管理器的实例。 public boolDeposit(int itemID,Inventory_Typetype) 存入道具,道具ID,目标背包(玩家,仓库,商店),若目标背包堆栈达到上线,存入失败,

7、返回false。 public boolWithdraw(int itemID,Inventory_Typetype) 取出道具,道具ID,和源背包(从哪个背包里取出),查无此道具则取出失败,返回false。 public boolWithdraw_at_slot(int slotID,Inventory_Typetype) 从指定道具槽取出道具,槽ID,源背包,槽不存在则返回false。 public intGet_Current_Stack(int slotID,Inventory_Typetype) 获取当前道具槽的堆栈数,槽ID,源背包。 public 

8、void Sort(In

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。