Ejemplo n.º 1
0
        public ManagedPokemonCatalog(ByteBuffer bb)
        {
            var catalog = PokemonCatalog.GetRootAsPokemonCatalog(bb);

            Unknown1 = catalog.Details.GetValueOrDefault().Unknown1;
            Unknown2 = catalog.Details.GetValueOrDefault().Unknown2;
            Entries  = Enumerable.Range(0, catalog.EntriesLength).Select(i => new ManagedPokemonCatalogEntry(catalog.Entries(i).GetValueOrDefault())).ToList();
        }
Ejemplo n.º 2
0
        public Span <byte> Save()
        {
            var builder = new FlatBufferBuilder(1);

            builder.Finish(PokemonCatalog.CreatePokemonCatalog(builder, PokemonCatalogDetails.CreatePokemonCatalogDetails(builder, Unknown1, Unknown2), PokemonCatalog.CreateEntriesVector(builder, Entries.Select(entry =>
            {
                var newEntrydetails = PokemonCatalogEntryDetails.CreatePokemonCatalogEntryDetails(builder, entry.Metadata.Id, entry.Metadata.Variant, entry.Metadata.Gender, entry.Metadata.Shiny);
                return(PokemonCatalogEntry.CreatePokemonCatalogEntry(builder, newEntrydetails, builder.CreateString(entry.ModelPath), builder.CreateString(entry.ConfigurationPath), builder.CreateString(entry.PackagePath), PokemonCatalogEntry.CreateAnimationConfigurationsVector(builder, entry.AnimationSets.Select(y => PokemonCatalogEntryAnimationConfig.CreatePokemonCatalogEntryAnimationConfig(builder, builder.CreateString(y.Key), builder.CreateString(y.Value))).ToArray())));
            }).ToArray())).Value);

            return(builder.SizedByteArray());
        }