public List <SNAMField> SNAMs = new List <SNAMField>(); // Sounds

        public override bool CreateField(BinaryFileReader r, GameFormat format, string type, int dataSize)
        {
            switch (type)
            {
            case "EDID": EDID = r.ReadSTRV(dataSize); return(true);

            case "MODL": MODL = new MODLGroup(r, dataSize); return(true);

            case "MODB": MODL.MODBField(r, dataSize); return(true);

            case "CNAM": CNAM = r.ReadFILE(dataSize); return(true);

            case "DNAM": DNAM = r.ReadFILE(dataSize); return(true);

            case "NAM0": NAM0 = r.ReadBYTV(dataSize); return(true);

            case "FNAM": FNAM = new FNAMField(r, dataSize); return(true);

            case "HNAM": HNAM = new HNAMField(r, dataSize); return(true);

            case "DATA": DATA = new DATAField(r, dataSize); return(true);

            case "SNAM": SNAMs.Add(new SNAMField(r, dataSize)); return(true);

            default: return(false);
            }
        }
        public List <FMIDField <GRASRecord> > GNAMs = new List <FMIDField <GRASRecord> >(); // Potential grass

        public override bool CreateField(UnityBinaryReader r, GameFormatId format, string type, int dataSize)
        {
            switch (type)
            {
            case "EDID":
            case "NAME": EDID = r.ReadSTRV(dataSize); return(true);

            case "INTV": INTV = r.ReadINTV(dataSize); return(true);

            case "ICON":
            case "DATA": ICON = r.ReadFILE(dataSize); return(true);

            // TES4
            case "HNAM": HNAM = new HNAMField(r, dataSize); return(true);

            case "SNAM": SNAM = r.ReadT <BYTEField>(dataSize); return(true);

            case "GNAM": GNAMs.Add(new FMIDField <GRASRecord>(r, dataSize)); return(true);

            default: return(false);
            }
        }