【Unity&NGUI】背包系统物品的累加
2017-01-16 22:04
309 查看
写到背包系统物品的累加以及多背包显示,里面涉及很多代码,因此,把重复的代码,尽量用一个变量表示
由于写背包系统的时候,只要是触发器,和碰撞器,就会使得物体变成其子物体
于是添加了两个字符串变量 Attribute和BodyPart用来缩小范围使得,背包系统的有效范围在,背包和装备栏里面
为所有的装备栏框框、和背包框框装备上该 BackpackCellAttri.cs文件,并在U3D里面设置好对应的字符
Attribute = "BodyEquipment" ;
BodyPart在背包系统中是空的,在装备栏系统中采取对应的字符。
在背包物体预制体中的Backpack Item.cs中添加了物品的属性
ItemStyle = "BodyEquipment" ;//物体从属于哪个属性
ItemBelongBP = "Backpack1";//物体从属于哪个背包
这两个变量也是要声明,并且初始化进行数值设置的(没有直接说明的,需要自行设置)
public int count;//物体当前数量
public int ItemMax;//物品每一组 最大的数量
物体数量增加、和数量减少函数
为什么要使用new void start,因为这个脚本类继承了UIDragDropItem的成员,UIDragDropItem里面也有个start函数,子类为了区分父类,需要这样做
public class BackpackItem : UIDragDropItem
JudgetItem函数,主要互换物体的位置
OnDragDropRelease函数,这个是主要函数,很多重要的参数都是在这个函数里面完成的
由于是直接使用了OnDragDropRelease函数,因此并不需要使用其他函数对其调用,如果不知道的,请自行查阅我之前写的文章,以及相关资料
主要用于第一次判断,当物体需要交换位置的时候,首先判断格子是否是 满足条件 的 “背包格子”,或者是“装备栏”
由于[b] “背包格子”都添加了“装备栏”[b]BackpackCellAttri.cs文件用来区别其他的 碰撞体[/b][/b]
JudgetItem(surfaceR);
private void JudgetItem(GameObject surface)//获得 目标物体 类型名字
相同的数字用来表示同样的层级,因为看起来很乱
#region endif(S_CC >= 1)内容如下图所示
#endregion
更正一下,177行的unitcount改为totalcount,该物体当前的 总共的数量
背包系统相关资料:
由于写背包系统的时候,只要是触发器,和碰撞器,就会使得物体变成其子物体
于是添加了两个字符串变量 Attribute和BodyPart用来缩小范围使得,背包系统的有效范围在,背包和装备栏里面
为所有的装备栏框框、和背包框框装备上该 BackpackCellAttri.cs文件,并在U3D里面设置好对应的字符
Attribute = "BodyEquipment" ;
BodyPart在背包系统中是空的,在装备栏系统中采取对应的字符。
在背包物体预制体中的Backpack Item.cs中添加了物品的属性
ItemStyle = "BodyEquipment" ;//物体从属于哪个属性
ItemBelongBP = "Backpack1";//物体从属于哪个背包
这两个变量也是要声明,并且初始化进行数值设置的(没有直接说明的,需要自行设置)
public int count;//物体当前数量
public int ItemMax;//物品每一组 最大的数量
物体数量增加、和数量减少函数
为什么要使用new void start,因为这个脚本类继承了UIDragDropItem的成员,UIDragDropItem里面也有个start函数,子类为了区分父类,需要这样做
public class BackpackItem : UIDragDropItem
JudgetItem函数,主要互换物体的位置
OnDragDropRelease函数,这个是主要函数,很多重要的参数都是在这个函数里面完成的
由于是直接使用了OnDragDropRelease函数,因此并不需要使用其他函数对其调用,如果不知道的,请自行查阅我之前写的文章,以及相关资料
主要用于第一次判断,当物体需要交换位置的时候,首先判断格子是否是 满足条件 的 “背包格子”,或者是“装备栏”
由于[b] “背包格子”都添加了“装备栏”[b]BackpackCellAttri.cs文件用来区别其他的 碰撞体[/b][/b]
JudgetItem(surfaceR);
private void JudgetItem(GameObject surface)//获得 目标物体 类型名字
相同的数字用来表示同样的层级,因为看起来很乱
#region endif(S_CC >= 1)内容如下图所示
#endregion
更正一下,177行的unitcount改为totalcount,该物体当前的 总共的数量
背包系统相关资料:
相关文章推荐
- 【Unity&NGUI】背包系统显示隐藏问题
- 【Unity&NGUI】我的背包系统相关文章总览
- [Unity&NGUI]背包系统崩溃的解决办法
- 【Unity&NGUI】背包拖拽问题&物体穿透
- 【Unity&NGUI】背包,技能栏,Grid自动排序以及代码使用的条件
- 【Unity&NGUI】背包单格中最大数量怎么设置
- 【Unity】NGUI背包系统——背包整理按钮的实现
- [Unity]背包效果-使用NGUI实现物品的拖拽效果Drag
- unity手游<少侠历险记>(4)背包系统
- 【Unity】NGUI背包系统——背包整理按钮的改进
- Unity插件NGUI实现背包系统
- NGUI之设置背包系统里面的物品的可拖拽功能
- 【unity】ngui事件系统实现参考
- RPG黑暗之光(5)NGUI实现背包系统初步
- bnu 28890 &zoj 3689——Digging——————【要求物品次序的01背包】
- NGUI 背包系统的拖拽
- NGUI简单背包系统的实现
- NGUI制作背包系统
- NGUI实现背包系统
- <Unity UGUI> 在Unity5 的UGUI系统上实现图片的遮罩