public static bool ImportContentFromPackage(Stream package, VerifyPackageMetadata verify = null) { //Open package as ZIP using (ZipArchive zip = new ZipArchive(package, ZipArchiveMode.Read, true)) { //Read package metadata first PrimalDataPackageMetadata metadata = PackageReaderHelper <PrimalDataPackageMetadata>(zip, "metadata.json"); //If requested, verify that we can read this if (verify != null) { if (!verify(metadata)) { return(false); } } //Now, read other parts packageMetadata = metadata; dino_entries = PackageReaderHelper <List <ArkDinoEntry> >(zip, "dinos.json"); item_entries = PackageReaderHelper <List <ArkItemEntry> >(zip, "items.json"); world_settings = PackageReaderHelper <ArkWorldSettings>(zip, "world_settings.json"); classHierachy = PackageReaderHelper <ImportedClassHierarchyFile>(zip, "classes.json"); structureDisplayMetadata = PackageReaderHelper <List <StructureDisplayMetadata> >(zip, "structure_metadata.json"); } return(true); }
public static void ImportContent(string path) { //Deserialize all of these assets. packageMetadata = JsonConvert.DeserializeObject <PrimalDataPackageMetadata>(File.ReadAllText(path + "metadata.json")); dino_entries = JsonConvert.DeserializeObject <List <ArkDinoEntry> >(File.ReadAllText(path + "dinos.json")); item_entries = JsonConvert.DeserializeObject <List <ArkItemEntry> >(File.ReadAllText(path + "items.json")); world_settings = JsonConvert.DeserializeObject <ArkWorldSettings>(File.ReadAllText(path + "world_settings.json")); classHierachy = JsonConvert.DeserializeObject <ImportedClassHierarchyFile>(File.ReadAllText(path + "classes.json")); structureDisplayMetadata = JsonConvert.DeserializeObject <List <StructureDisplayMetadata> >(File.ReadAllText(path + "structure_metadata.json")); }