public MainWindow() { InitializeComponent(); ICharacterImporter cimport = new CharacterImporter(); ICharacterInformation ci = cimport.Import("character.json"); ISpellsImporter simport = new SpellsImporter(); IEnumerable <ISpell> spells = simport.Import("spells.json"); var vm = new MainWindowViewModel(spells, ci, new SpellTemplate()); DataContext = vm; //Preview.Render(vm.Renderable); }
public void TestImport() { string path = TestContext.CurrentContext.TestDirectory + "/TestFiles/character.json"; ICharacterImporter sut = new CharacterImporter(); ICharacterInformation info = sut.Import(path); Assert.NotNull(info); Assert.AreEqual("Husein", info.Name); Assert.AreEqual(14, info.Mut); Assert.AreEqual(13, info.Klugheit); Assert.AreEqual(12, info.Charisma); Assert.AreEqual(11, info.Intuition); Assert.AreEqual(10, info.Konstitution); Assert.AreEqual(9, info.Körperkraft); Assert.AreEqual(8, info.Gewandheit); Assert.AreEqual(15, info.Fingerfertigkeit); Assert.AreEqual(52, info.Astralenergie); Assert.AreEqual(9, info.Magieresistenz); Assert.AreEqual(4, info.Selbstbeherrschung); }
private void Run(string[] args) { ImportSettings settings; if (args.Length > 0 && args[0] == "release") { settings = ImportSettings.MakeReleaseSettings(); } else { settings = ImportSettings.MakeFromViewerInitialSettings(); } var contentDestDir = CommonPaths.WorkDir.Subdirectory("content"); var contentPackConfs = ContentPackImportConfiguration.LoadAll(CommonPaths.ConfDir); var pathManager = ImporterPathManager.Make(contentPackConfs); var figureDumperLoader = new FigureDumperLoader(fileLocator, objectLocator, pathManager, device, shaderCache); foreach (var contentPackConf in contentPackConfs) { var destDir = contentDestDir.Subdirectory(contentPackConf.Name); if (contentPackConf.IsCore) { new UiImporter(destDir).Run(); new EnvironmentCubeGenerator().Run(settings, destDir); } var texturesDir = destDir.Subdirectory("textures").Subdirectory(contentPackConf.Name); var textureProcessor = new TextureProcessor(device, shaderCache, texturesDir, contentPackConf.Name, settings.CompressTextures); bool shouldImportAnything = false; foreach (var figureConf in contentPackConf.Figures) { string figureName = figureConf.Name; if (!settings.FiguresToImport.Contains(figureName)) { continue; } var figureDumper = figureDumperLoader.LoadDumper(figureName); MaterialSetImportConfiguration[] materialSetConfigurations = MaterialSetImportConfiguration.Load(figureConf.Directory); ShapeImportConfiguration[] shapeImportConfigurations = ShapeImportConfiguration.Load(figureConf.Directory); var figureDestDir = destDir.Subdirectory("figures").Subdirectory(figureName); if (figureConf.IsPrimary) { shouldImportAnything = true; figureDumper.DumpFigure(shapeImportConfigurations, figureDestDir); } foreach (var materialSetConf in materialSetConfigurations) { if (!settings.ShouldImportMaterialSet(figureConf.Name, materialSetConf.name)) { continue; } shouldImportAnything = true; figureDumper.DumpMaterialSet(settings, textureProcessor, figureDestDir, materialSetConf); } if (figureConf.IsPrimary) { shouldImportAnything = true; figureDumper.DumpBaseShape(figureDestDir); } foreach (var shapeConf in shapeImportConfigurations) { if (!settings.ShouldImportShape(figureConf.Name, shapeConf.name)) { continue; } shouldImportAnything = true; figureDumper.DumpShape(textureProcessor, figureDestDir, shapeConf); } } if (shouldImportAnything) { foreach (var characterConf in contentPackConf.Characters) { CharacterImporter.Import(pathManager, characterConf.File, destDir); } foreach (var outfitConf in contentPackConf.Outfits) { OutfitImporter.Import(pathManager, outfitConf.File, destDir); } } textureProcessor.ImportAll(); } }