视频参考:Unity教程:背包系统:04:显示在背包里(C# code) InventoryManager_哔哩哔哩_bilibili
素材下载:
https://pan.baidu.com/s/1o7_RW_QQ1rrAbDzT69ApRw
提取码: 8s95
unity简单的背包系统笔记(二)(有视频讲解)_yanyufeichengxu的博客-优快云博客
unity简单的背包系统笔记(三)(有视频讲解)_yanyufeichengxu的博客-优快云博客
unity简单的背包系统笔记(四)(有视频讲解)+知识点整理合集_yanyufeichengxu的博客-优快云博客
目录
1.创建panel(修改为居中模式:这样就可以调节长宽高)起名叫:Bag 515 415
就是弄个背景框,弄个grid lay out
-----
2.创建数据库
使用:ScriptableObject API->不用挂载在脚本上
创建Item脚本(logic:存储数据)
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
[CreateAssetMenu(fileName ="New Item",menuName ="Inventory/New Item")]//默认名字,右键菜单叫什么名字/
/// <summary>
/// 属性
/// </summary>
public class Items : ScriptableObject
{/// <summary>
/// 物品的名字
/// </summary>
public string itemName;
/// <summary>
/// 物品的图片
/// </summary>
public Sprite itemImage;
public int ItemHeld;///数量
[TextArea]//多段描述,单行描述就不用加了
/// <summary>
/// 介绍
/// </summary>
public string ItemInfo;
/// <summary>
/// 是否可以装备上
/// </summary>
public bool equip;
}
----
创建背包脚本Inventory
创建脚本Inventory,我希望这个背包系统是一个列表他将我所有的物品都存储在一个背包中,这样就可以创建不同的背包:铁匠铺的背包,药水商的背包等等,装备武器的背包
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
[CreateAssetMenu(fileName = "New Inventory", menuName = "Inventory/New Inventory")]
public class Inventory : ScriptableObject
{
public List<Items> itemList = new List<Items> ();
// public Items[] itemlist;
}
这样就把item里的数据都存储到了Inventory背包里面
list数组和普通数组:
list数组常用方法
1,Capacity获取容量大小
2,Add()方法添加元素
3.3,Insert()方法插入元素
4,[index]访问元素
5,Count属性访问元素个数
6,RemoveAt()方法移除指定位置的元素
7,IndexOf()方法取得一个元素所在列表中的索引位置
LastIndexOf()上面的方法是从前往后搜索,这个是从后往前搜索,搜索到满足条件的就停止,上面的两个方法,如果没有找到指定元素就返回-1
8,Sort()对列表中是元素进行从小到大排序
9.删除元素.Remove
10.判断某个元素是否在该List中
List.Contains(T item) 返回true或false
11.给List里面元素顺序反转 List.Reverse() 可以与List.Sort()配合使用
12.List清空 List.Clear()
13.List.FindAll方法:检索与指定谓词所定义的条件相匹配的所有元素
14.List.Find方法 搜索与指定谓词所定义的条件相匹配的元素,并返回整个List中的第一个匹配元素
----
创建触发条件:ItemOnWorld
logic:当我的游戏角色碰到物品时Inverotory里就加1
功能实现:
拖拽物品到地图上添加必要组件(Collider-

本教程详细讲解了如何在Unity中创建一个简单的背包系统,包括创建Item脚本存储数据,实现Inventory脚本,创建触发条件ItemOnWorld,设计背包格子Slot,以及InventoryManager的控制。通过视频和代码示例,介绍了背包系统的各个功能,如物品点击弹出描述,拖拽交换位置等。
最低0.47元/天 解锁文章
950

被折叠的 条评论
为什么被折叠?



