예제 #1
0
        /// <summary>
        /// load a json object from the given path using all our attributes
        /// </summary>
        /// <param name="path"></param>
        /// <returns></returns>
        public static object Load(string path, ICreatableProvider provider)
        {
            string raw  = File.ReadAllText(path);
            JToken dict = (JToken)JsonConvert.DeserializeObject(raw);

            return(Load(dict, provider));
        }
예제 #2
0
        public static object Load(JToken jtoken, ICreatableProvider provider)
        {
            createdObjects.Clear();
            //not the best design but makes it super duper easy to use
            TimelineLoader.provider = provider;

            object created = LoadObjectFromJson(jtoken);

            //call on timelineDone on all createdObjects
            foreach (var pair in createdObjects)
            {
                object obj = pair.Key;
                CallOnAllLoaded(ref obj, pair.Value);
            }

            TimelineLoader.provider = null;
            createdObjects.Clear();
            return(created);
        }