Unity游戏存档 (将游戏数据储存至本地文档)


在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中运行游戏,通过捡拾物品改变里面的值,第二次运行之后不会清零。


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM