在Unity中 添加本地文档储存游戏数据
首先我们应该在Unity中创建一个C#脚本,将其命名为Inventory
脚本不用挂在任何物体上,只需要在命名空间之前写一句代码,如下:
代码写好之后保存,在Unity的文件栏中右键就会发现,创建文件夹上方多了一个Inventory,就是我们代码中的menuName ,而创建出来之后,文档的名字就是 NewItem,也就是我们的 fileName。
如果需要在文档中存数据,那就需要再代码中加东西,存什么类型的数据,就加什么类型的变量。
如下:
我们新建一个Item脚本,创建新的NewItem(物品) 将 Item 储存在NewInventory(背包)中
登录后复制
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
//这里我们重新创建一个文档,NewItem用作储存物品信息,刚刚的 NewInventory 储存背包信息。
[CreateAssetMenu(fileName = "New Item",menuName = "Inventory/New Item")]
public class Item : ScriptableObject {
public string itemName; //物品名字
public Sprite itemImage;//物品图片
public int itemHeld; //物品数量
public string itemInfo; //物品介绍
// Use this for initialization
void Start () {
}
// Update is called once per frame
void Update () {
}
}
在 Inventory 中创建一个列表,储存数据,每一条数据都是一个Item
登录后复制
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
[CreateAssetMenu(fileName = "New Item", menuName = "Inventory/New Inventory")]
public class Inventory : ScriptableObject {
//这行新增的就是我们给文档中储存的数据类型,比如现在是一个列表的类型
public List<Item> itemList = new List<Item>();
// Use this for initialization
void Start () {
}
// Update is called once per frame
void Update () {
}
}
这样点击创建出来的NewItem 和 NewInventory 就会发现里面有数据可以改变了。
用这种方法创建出来的文档可以使数据储存在本地中,在Unity中运行游戏,通过捡拾物品改变里面的值,第二次运行之后不会清零。
免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删