Beispiel #1
0
 public JsonImportTests()
 {
     _fileSystem = new TestFileSystem();
     _logger     = new TestLogger();
     _container  = new TestSheetContainer(_logger);
     _converter  = new JsonSheetConverter("testdata", fileSystem: _fileSystem);
 }
        static async void OnPostprocessAllAssets(string[] importedAssets, string[] deletedAssets, string[] movedAssets, string[] movedFromAssetPaths)
        {
            // automatically run postprocessor if any excel file is imported
            string excelAsset = importedAssets.FirstOrDefault(x => x.EndsWith(".xlsx"));

            if (excelAsset != null)
            {
                var excelPath = Path.GetDirectoryName(excelAsset);
                var jsonPath  = Path.Combine(Application.streamingAssetsPath, "Excel");

                var logger         = new UnityLogger();
                var sheetContainer = new SheetContainer(logger);

                // create excel converter from path
                var excelConverter = new ExcelSheetConverter(excelPath, TimeZoneInfo.Utc);

                // bake sheets from excel converter
                await sheetContainer.Bake(excelConverter);

                // create json converter to path
                var jsonConverter = new JsonSheetConverter(jsonPath);

                // save datasheet to streaming assets
                await sheetContainer.Store(jsonConverter);

                AssetDatabase.Refresh();

                Debug.Log("Excel sheet converted.");
            }
        }
 public MultiConvertTests()
 {
     _fileSystem    = new TestFileSystem();
     _logger        = new TestLogger();
     _container     = new TestSheetContainer(_logger);
     _csvConverter  = new CsvSheetConverter("csvdata", TimeZoneInfo.Utc, fileSystem: _fileSystem);
     _jsonConverter = new JsonSheetConverter("jsondata", fileSystem: _fileSystem);
 }
Beispiel #4
0
        private async void Start()
        {
            var jsonPath      = Path.Combine(Application.streamingAssetsPath, "Excel");
            var jsonConverter = new JsonSheetConverter(jsonPath);

            Sheet = new SheetContainer(new UnityLogger());
            await Sheet.Bake(jsonConverter);

            Debug.Log(Sheet.Constants.Count);
            Debug.Log(Sheet.Heroes["HERO001"].Count);
            Debug.Log(Sheet.Heroes["HERO001"].GetLevel(5).RequiredItem.Ref.Name);
            Debug.Log(Sheet.Items["ITEM_POTION001"].Name);
        }