See Document for more detail.
Onion 是一個於 Unity 使用的資料檢視與編輯工具。
- 可以透過簡單的 Attribute 快速建構資料間的階層關係。
- 在定義好階層關係的資料下圖像化階層關係,可快速訪問與編輯各個資料。
- 針對特殊需求,可以自訂方法,並可在介面快速使用。
- 建議以 SubModules 方式加入你的專案。
- 加入後,可在 Unity 的 Window/Onion Data Editor 開啟視窗介面。
我們先寫兩個 Script ,分別為 AreaData 與 MonsterData,他們都繼承自QueryableData。
csharp
using OnionCollections.DataEditor;
public class AreaData : QueryableData
{
[NodeTitle]
public string areaName;
[OnionCollections.DataEditor.NodeElement]
public MonsterData[] monsterDatas;
}
csharp
using OnionCollections.DataEditor;
public class MonsterData : QueryableData
{
[NodeTitle]
public string monsterName;
public int hp;
public int atk;
}
可以注意到 AreaData 中包含了數個 MonsterData,在任意 IEnumerable 的 Field 或 Property 上加上 [OnionCollections.DataEditor.NodeElement] 的 Attribute 後,這些內容就會在視窗介面上成為這個 AreaData 的子節點。
這樣就會有最基本的階層狀態,可以開始使用這個工具最核心的功能了。
若有需要,請參閱專案中的 Examples。