public STRVField MNAM; // Master Text public override bool CreateField(UnityBinaryReader r, GameFormatId format, string type, int dataSize) { switch (type) { case "EDID": EDID = r.ReadSTRV(dataSize); return(true); case "INDX": INDX = r.ReadT <IN32Field>(dataSize); return(true); case "DATA": case "SKDT": DATA = new DATAField(r, dataSize, format); return(true); case "DESC": DESC = r.ReadSTRV(dataSize); return(true); case "ICON": ICON = r.ReadFILE(dataSize); return(true); case "ANAM": ANAM = r.ReadSTRV(dataSize); return(true); case "JNAM": JNAM = r.ReadSTRV(dataSize); return(true); case "ENAM": ENAM = r.ReadSTRV(dataSize); return(true); case "MNAM": MNAM = r.ReadSTRV(dataSize); return(true); default: return(false); } }
public STRVField?CNAM; // Creature name (optional) public override bool CreateField(BinaryFileReader r, GameFormat format, string type, int dataSize) { if (format == GameFormat.TES3) { switch (type) { case "NAME": EDID = r.ReadSTRV(dataSize); return(true); case "DATA": DATA = r.ReadT <IN32Field>(dataSize); return(true); case "SNAM": SNAM = r.ReadSTRV(dataSize); return(true); case "CNAM": CNAM = r.ReadSTRV(dataSize); return(true); default: return(false); } } return(false); }
public override bool CreateField(UnityBinaryReader r, GameFormatId format, string type, int dataSize) { if (format == GameFormatId.TES3) { switch (type) { case "NAME": EDID = r.ReadSTRV(dataSize); return(true); case "MODL": MODL = new MODLGroup(r, dataSize); return(true); case "FNAM": FNAM = r.ReadSTRV(dataSize); return(true); case "NPDT": NPDT = new NPDTField(r, dataSize); return(true); case "FLAG": FLAG = r.ReadT <IN32Field>(dataSize); return(true); case "SCRI": SCRI = new FMIDField <SCPTRecord>(r, dataSize); return(true); case "NPCO": NPCO = new CNTOField(r, dataSize, format); return(true); case "AIDT": AIDT = new AIDTField(r, dataSize); return(true); case "AI_W": AI_W = new AI_WField(r, dataSize); return(true); case "AI_T": AI_T = new AI_TField(r, dataSize); return(true); case "AI_F": AI_F = new AI_FField(r, dataSize); return(true); case "AI_E": AI_E = new AI_FField(r, dataSize); return(true); case "AI_A": AI_A = new AI_AField(r, dataSize); return(true); case "XSCL": XSCL = r.ReadT <FLTVField>(dataSize); return(true); case "CNAM": CNAM = r.ReadSTRV(dataSize); return(true); case "NPCS": NPCSs.Add(r.ReadSTRV(dataSize, ASCIIFormat.ZeroPadded)); return(true); default: return(false); } } return(false); }
public IN32Field MNAM; // Active marker flags, required. A bit field with a bit value of 1 indicating that the matching marker position in the NIF file is active. public override bool CreateField(UnityBinaryReader r, GameFormatId 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 "MODT": MODL.MODTField(r, dataSize); return(true); case "FULL": FULL = r.ReadSTRV(dataSize); return(true); case "SCRI": SCRI = new FMIDField <SCPTRecord>(r, dataSize); return(true); case "MNAM": MNAM = r.ReadT <IN32Field>(dataSize); return(true); default: return(false); } }
public UNKNField?TNAM; // overrides (Optional) public override bool CreateField(UnityBinaryReader r, GameFormatId format, string type, int dataSize) { switch (type) { case "HEDR": HEDR = r.ReadT <HEDRField>(dataSize); return(true); case "OFST": r.SkipBytes(dataSize); return(true); case "DELE": r.SkipBytes(dataSize); return(true); case "CNAM": CNAM = r.ReadSTRV(dataSize); return(true); case "SNAM": SNAM = r.ReadSTRV(dataSize); return(true); case "MAST": if (MASTs == null) { MASTs = new List <STRVField>(); } MASTs.Add(r.ReadSTRV(dataSize)); return(true); case "DATA": if (DATAs == null) { DATAs = new List <INTVField>(); } DATAs.Add(r.ReadINTV(dataSize)); return(true); case "ONAM": ONAM = r.ReadUNKN(dataSize); return(true); case "INTV": INTV = r.ReadT <IN32Field>(dataSize); return(true); case "INCC": INCC = r.ReadT <IN32Field>(dataSize); return(true); // TES5 case "TNAM": TNAM = r.ReadUNKN(dataSize); return(true); default: return(false); } }
public List <IN16Field> INTVs = new List <IN16Field>(); // PC level for previous INAM // The CNAM/INTV can occur many times in pairs public override bool CreateField(BinaryFileReader r, GameFormat format, string type, int dataSize) { if (format == GameFormat.TES3) { switch (type) { case "NAME": EDID = r.ReadSTRV(dataSize); return(true); case "DATA": DATA = r.ReadT <IN32Field>(dataSize); return(true); case "NNAM": NNAM = r.ReadT <BYTEField>(dataSize); return(true); case "INDX": INDX = r.ReadT <IN32Field>(dataSize); return(true); case "INAM": INAMs.Add(r.ReadSTRV(dataSize)); return(true); case "INTV": INTVs.Add(r.ReadT <IN16Field>(dataSize)); return(true); default: return(false); } } return(false); }
public Vector3Int GridId; // => new Vector3Int(INTV.CellX, INTV.CellY, 0); public override bool CreateField(UnityBinaryReader r, GameFormatId format, string type, int dataSize) { switch (type) { case "DATA": DATA = r.ReadT <IN32Field>(dataSize); return(true); case "VNML": VNML = new VNMLField(r, dataSize); return(true); case "VHGT": VHGT = new VHGTField(r, dataSize); return(true); case "VCLR": VCLR = new VNMLField(r, dataSize); return(true); case "VTEX": VTEX = new VTEXField(r, dataSize, format); return(true); // TES3 case "INTV": INTV = r.ReadT <CORDField>(dataSize); return(true); case "WNAM": WNAM = new WNAMField(r, dataSize); return(true); // TES4 case "BTXT": var btxt = r.ReadT <BTXTField>(dataSize); BTXTs[btxt.Quadrant] = btxt; return(true); case "ATXT": if (ATXTs == null) { ATXTs = new ATXTGroup[4]; } var atxt = r.ReadT <BTXTField>(dataSize); _lastATXT = ATXTs[atxt.Quadrant] = new ATXTGroup { ATXT = atxt }; return(true); case "VTXT": _lastATXT.VTXTs = r.ReadTArray <VTXTField>(dataSize, dataSize >> 3); return(true); default: return(false); } }