using System; using System.IO; using NIFLib.Core; using NIFLib.Enums; namespace NIFLib.Nodes { public class NiObjectNET : NiObject { public NiString Name; public NiRef[] ExtraData; public NiRef Controller; public NiObjectNET(NiFile file, BinaryReader reader) : base(file, reader) { Name = new NiString(file, reader); if (File.Header.Version <= NifVersion.VER_2_3) { throw new Exception("Unsupported Version!"); } if (File.Header.Version >= NifVersion.VER_3_0 && File.Header.Version <= NifVersion.VER_4_2_2_0) { ExtraData = new NiRef[1]; ExtraData[0] = new NiRef(reader.ReadUInt32()); } if (File.Header.Version >= NifVersion.VER_10_0_1_0) { var num = reader.ReadUInt32(); ExtraData = new NiRef[num]; var num2 = 0; while ((long)num2 < (long)((ulong)num)) { ExtraData[num2] = new NiRef(reader.ReadUInt32()); num2++; } } if (File.Header.Version >= NifVersion.VER_3_0) { Controller = new NiRef(reader.ReadUInt32()); } } } }