我使用了一个保存系统,我不完全理解,但运行良好。它保存可序列化代码,但我开始使用ScriptableObjects作为保存库存的一种方式,它坏了,我不知道现在如何修复它。
这是我正在使用的代码:
[CreateAssetMenu(fileName = "Attack")]
public class PlayerAttckCard : ScriptableObject
{
public string AtackName,bookName;
public bool multiTarget;
public float Bacepower;
public GameObject miniGame;
}
我尝试使用[System.Serializable]
,但我得到这个错误:
序列化异常:程序集UnityEngine. CoreModule(版本= 0.0.0.0,区域性=中性,PublicKeyToken = null)中的类型UnityEngine. ScriptableObject未标记为可序列化。
我是否需要更改保存游戏的方式,或者是否有解决此问题的方法?
3条答案
按热度按时间ilmyapht1#
序列化到JSON?您可以使用JsonUtility完成此操作。
https://docs.unity3d.com/Manual/JSONSerialization.html
sauutmhj2#
据我所知,你不能,这是可能的,做一个自定义检查器,编辑器,图形用户界面,但它是相当棘手的,我不知道如何做到这一点,甚至。但也许,你可以做到这一点。
和可编写脚本的对象。
pdsfdshx3#
你应该能够使用它,你可以把它们放在一起或分开,我得到没有错误
或