using UnityEngine; using System.Collections; using JungleDB; public class SaveData : MonoBehaviour { public static SaveData Instance; private Jungle mainScene ; private JungleTree mainTree; private JungleTreeEditor TreeEditor; private TreeNode node; // private NodePath root; // Use this for initialization void Awake () { if (Instance == null) { Instance = this; } } private void Start () { JungleStart (); // root = new DefaultNodePath (); // InterfaceTraverser t = new InterfaceTraverser (root, false); } private void JungleStart () { Debug.Log ("[Jungle] Start ..."); mainScene = new DefaultJungle(null, "Main", new DefaultTreeEditor(new DefaultTraverser())); } public void CreateTree (string name) { mainScene.createNewTree (name); mainTree = mainScene.getTreeByName (name); Debug.Log ("[Jungle] Create " + name + " Tree"); EditorMode (); } public void EditorMode () { TreeEditor = mainTree.getTreeEditor (); Debug.Log ("[Jungle] Editor Mode" + TreeEditor.ToString()); } public void createTree (int pos, NodePath path, string key, byte[] value) { Either either = TreeEditor.addNewChildAt(path, pos); if (either.isA ()) { Debug.LogError ("[Error]" + either.a ()); } else { TreeEditor = either.b (); Either eitherput = TreeEditor.putAttribute (path.add(pos), key, value); if (eitherput.isA ()) { Debug.LogError ("[Error]" + eitherput.a()); } else { Debug.Log ("[Success]"); TreeEditor = eitherput.b (); } } } // public void PutAttribute (NodePath path, string key, byte[] value) { // Either either = TreeEditor.putAttribute (path, key, value); // if (either.isA ()) { // Debug.LogError ("[Error]" + either.a()); // } else { // Debug.Log ("[Success]"); // either.b (); // } // } public void GetAttribute (NodePath path, string key) { Either either = mainTree.getNodeOfPath (path); if (either.isA ()) { Debug.LogError ("[Error]"); } else { node = either.b (); print (key); object target = node.getAttributes ().get (key); print (target); } } public void Push() { Either r = TreeEditor.commit(); if (r.isA ()) { Debug.LogError ("[Error]"); } else { Debug.Log ("[Success]"); TreeEditor = r.b (); } } }