【发布时间】:2020-02-18 02:18:11
【问题描述】:
我的项目脚本
using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
[CreateAssetMenu(fileName ="Newitems",menuName ="Inventory/Items")]
[Serializable]
public class Item : ScriptableObject
{
new public string name = "New items";
//public Sprite Icon = null; dealt with this later
public bool isDefaulet = false;
...}
这是我的库存脚本:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using System.IO;
using System;
[Serializable]
public class Inventory : MonoBehaviour
{
[SerializeField]
public List<Item> items = new List<Item>();
void Save()
{
string json = JsonUtility.ToJson(items);
Debug.Log(json);
File.WriteAllText(Application.dataPath + "/saveFile.json", json);
}
public void Load()
{
string json = File.ReadAllText(Application.dataPath + "/saveFile.json");
List<Item> List = JsonUtility.FromJson<List<Item>>(json);
Debug.Log(List);
}
...
}
好的,我稍后会尝试使用精灵,但是保存时控制台返回{},我现在不知道,请帮助。
【问题讨论】:
-
C# 和 UnityScript 是两种不同的语言。请不要标记不必要的语言。我已经为你删除了
unityscript标签。