unity 背包系统(UGUI )实现 方法

  1. 背包管理
  2. 格子管理
  3. 物品管理
  4. 物品信息管理

一个简易的背包功能,应该分为3个部分,分别是 背包管理格子物品

class Inventory - 这个类主要用来 管理 整个背包,包括 物品的整理,拾取,丢弃,等功能

class Inventory_Grid - 这个类 主要 用来 存放格子的信息,如 放置的物品的ID,是否有物品

class Inventory_item - 这个类 主要是 实现 拖拽的功能,以及存放 的是该物品的信息

class ObjectsInfo -  存放着 物品的信息, (用XML存放的物品信息)

接下来的 要实现Ugui 的拖拽 等基本功能就要再 Inventory_item 的这个类中 继承 5个接口

注:using UnityEngine.EventSystem;

  1. IBeingDragHandler (OnBeingDrag)
  2. IDragHandler(OnDrag)
  3. IEndDragHandler(EndDrag)
  4. IPointerHandler(OnPointerEnter)
  5. IPointerExitHandler(OnPointerExit)

接着并会保存源代码。。

来自为知笔记(Wiz)

附件列表

时间: 2024-11-05 12:30:48

unity 背包系统(UGUI )实现 方法的相关文章

Unity界面UGUI遮挡的问题

解决方法: 在使用Unity的UGUI时候,重叠的UI控件可能会导致某一个控件点击失败,如下图: 在前面的图片挡住了后面的Button,导致后面的Button无法触发点击事件,此时只要把图片的Image组件的Raycast Target的勾选取消即可解决遮挡的问题: 原理: 鼠标点击屏幕实际上是以点击的点为原点,发射一条垂直屏幕向里的射线,然后通过射线与第一个物体的相交来判断是否点击到该物体.取消了Raycast Target选项表明不作为射线相交的对象,则不会挡住后面的Button 原文地址:

【Unity】基于MVC模式的背包系统 UGUI实现

本文基于MVC模式,用UGUI初步实现了背包系统. 包含点击和拖拽两种逻辑,先献上源代码,工程和分析稍后补充. Model 层 using UnityEngine; using UnityEngine.UI; using System.Collections; using System.Collections.Generic; /// <summary> /// 脚本功能:MVC模式--Model层,定义物品结构,保存物品数据 /// 添加对象:Bag 背包(Canvas下的空对象) ///

Unity UGUI —— 鼠标穿透UI问题(Unity官方的解决方法)

解决方案 : http://www.cnblogs.com/fly-100/p/4570366.html 这里我们直接在使用Input.GetMouseButtonDown(0)的地方加了一个检测函数,CheckGuiRaycastObjects,如下 bool CheckGuiRaycastObjects() { PointerEventData eventData = new PointerEventData(Main.Instance.eventSystem); eventData.pre

Unity CCTween UGUI 动画插件

在这简单的介绍一个 CCTween 动画插件的使用 因为GIF 制作软件不太好(网上随便下载的)所以导致效果不太好,有时间我重新制作一下 这是一下简单的效果 下面介绍怎么使用 首先 先下载 CCTween  导入工程 点击下载 Unity5.0的包 如果使用的Unity 版本不够5.0的 就点击下边的连接 下载源码 点击下载 源码 GitGub地址 欢迎大神来更新 好了下面正式开始介绍使用了 #------------ 这是使用的一些变量 以及类型 -----------------------

Unity 利用UGUI打包图集,动态加载sprite资源

今天做了一个UI界面,这个界面是好友界面,该界面上有若干个好友item. 需要对每个tem的头像对象(image)动态显示对应的头像.尝试利用UGUI的图集来加载,具体实现如下: 1.首先,需要知道SpriteAtlas的功能,可以保存一些关于要打包进去的sprite的设置.(详细参数设置的意义有待进一步研究),其中的Objects For Packing可以关联到需要打包进这个已创建图集的Sprite,或者文件夹,或者texture.目前这里的做法是关联到了文件夹. 2.此时,unity已经给

unity背包系统(摘抄)

新的背包系统包括: 1.一个用于表示背包系统的按钮: 该按钮上添加了EventListener事件,该事件经过改写,可用于实现点击一次展示,点击第二次消失的效果. 代码比较简单,主要是在EventListener本身的事件代码上进行了一定的修改: public GameObject item;public GameObject tip;public int count = 0; 其中Item用于表示监听的物体,tip表示受到监听后发生动作的物体,count用于计数,以便于实现点击两次后tip物体

【Unity】UGUI系列教程——拼接一个简单界面

0.简介: 在目前的游戏市场上,手游依然是市场上的主力军,而只有快速上线,玩法系统完善的游戏才能在国内市场中占据份额.而在手游开发过程中,搭建UI系统是非常基本且重要的技能,极端的说如果对Unity的UI系统熟悉,就可以去游戏公司上班了 :)(笑~). 但是就像蛋炒饭,最简单的事要做好也是非常困难的.UI这块的变动也经常是整个游戏最频繁的一块,如果没有一个合理的设计思路,和管理方案,后期将会陷入无止境的调试优化之中. 万丈高楼平地起,现在让我们开始从Unity中的UGUI系统进行讲解. 1.创建

Unity+NGUI性能优化方法总结

一共9招. 1 资源分离打包与加载 游戏中会有很多地方使用同一份资源.比如,有些界面会共用同一份字体.同一张图集,有些场景会共用同一张贴图,有些会怪物使用同一个Animator,等等.可以在制作游戏安装包时将这些公用资源从其它资源中分离出来,单独打包.比如若资源A和B都引用了资源C,则将C分离出来单独打一个bundle.在游戏运行时,如果要加载A,则先加载C:之后如果要加载B,因为C的实例已经在内存,所以只要直接加载B,让B指向C即可.如果打包时不将C从A和B分离出来,那么A的包里会有一份C,B

Unity之UGUI初探—按钮动画

今天试了一下unity的新的UI系统—UGUI,感觉很强大,很多功能一目了然,使用起来相当方便接下来就是先试试使用他的动画吧 先创建一个UGUI的按钮,当然也可以先创建画布,然后在画布上创建按钮 然后点击按钮, 图中的transition的选项点开之后,有一项Animation的选项, 点击之后选择Auto Generate Animation 之后会弹出文件夹选项,就会意思是新建的这个动画的保存路径,自己选择路径命名即可,但要在Assets文件夹下 之后在window下,可以选择Animati