Example #1
0
        private void _LoadMetadataTemplate <T>(string path) where T : Template, new()
        {
            TemplateTable table = new TemplateTable();

            _mTemplateTables.Add(typeof(T).Name, table);

            var argument = new WebArgument()
            {
                localPath = path,
                flags     = WebFlags.NewWWW
            };

            WebManager.Instance.LoadWebItem(argument, item => {
                using (MemoryStream ms = new MemoryStream(item.bytes))
                    using (OctetsReader br = new OctetsReader(ms))
                    {
                        var count = br.ReadInt32();
                        for (int i = 0; i < count; ++i)
                        {
                            var template = new T();
                            template.Load(br);
                            table.Add(template.id, template);
                        }
                    }
            });
        }
Example #2
0
        private void _LoadMetadataConfig <T>(string path) where T : Config, new()
        {
            var argument = new WebArgument()
            {
                localPath = path,
                flags     = WebFlags.NewWWW
            };

            WebManager.Instance.LoadWebItem(argument, item => {
                using (MemoryStream ms = new MemoryStream(item.bytes))
                    using (OctetsReader br = new OctetsReader(ms))
                    {
                        var config = new T();
                        config.Load(br);
                        _mConfigs.Add(typeof(T).Name, config);
                    }
            });
        }