Exemple #1
0
        public override void ReadData(ESPReader reader, long dataEnd)
        {
            while (reader.BaseStream.Position < dataEnd)
            {
                string subTag = reader.PeekTag();

                switch (subTag)
                {
                case "EDID":
                    if (EditorID == null)
                    {
                        EditorID = new SimpleSubrecord <String>();
                    }

                    EditorID.ReadBinary(reader);
                    break;

                case "FULL":
                    if (Name == null)
                    {
                        Name = new SimpleSubrecord <String>();
                    }

                    Name.ReadBinary(reader);
                    break;

                case "NAM1":
                    if (Type == null)
                    {
                        Type = new SimpleSubrecord <MediaSetType>();
                    }

                    Type.ReadBinary(reader);
                    break;

                case "NAM2":
                    if (Loop_Battle_DayOuter == null)
                    {
                        Loop_Battle_DayOuter = new SimpleSubrecord <String>();
                    }

                    Loop_Battle_DayOuter.ReadBinary(reader);
                    break;

                case "NAM3":
                    if (Explore_DayMiddle == null)
                    {
                        Explore_DayMiddle = new SimpleSubrecord <String>();
                    }

                    Explore_DayMiddle.ReadBinary(reader);
                    break;

                case "NAM4":
                    if (Suspense_DayInner == null)
                    {
                        Suspense_DayInner = new SimpleSubrecord <String>();
                    }

                    Suspense_DayInner.ReadBinary(reader);
                    break;

                case "NAM5":
                    if (NightOuter == null)
                    {
                        NightOuter = new SimpleSubrecord <String>();
                    }

                    NightOuter.ReadBinary(reader);
                    break;

                case "NAM6":
                    if (NightMiddle == null)
                    {
                        NightMiddle = new SimpleSubrecord <String>();
                    }

                    NightMiddle.ReadBinary(reader);
                    break;

                case "NAM7":
                    if (NightInner == null)
                    {
                        NightInner = new SimpleSubrecord <String>();
                    }

                    NightInner.ReadBinary(reader);
                    break;

                case "NAM8":
                    if (DecibelLoop_Battle_DayOuter == null)
                    {
                        DecibelLoop_Battle_DayOuter = new SimpleSubrecord <Single>();
                    }

                    DecibelLoop_Battle_DayOuter.ReadBinary(reader);
                    break;

                case "NAM9":
                    if (DecibelExplore_DayMiddle == null)
                    {
                        DecibelExplore_DayMiddle = new SimpleSubrecord <Single>();
                    }

                    DecibelExplore_DayMiddle.ReadBinary(reader);
                    break;

                case "NAM0":
                    if (DecibelSuspense_DayInner == null)
                    {
                        DecibelSuspense_DayInner = new SimpleSubrecord <Single>();
                    }

                    DecibelSuspense_DayInner.ReadBinary(reader);
                    break;

                case "ANAM":
                    if (DecibelNightOuter == null)
                    {
                        DecibelNightOuter = new SimpleSubrecord <Single>();
                    }

                    DecibelNightOuter.ReadBinary(reader);
                    break;

                case "BNAM":
                    if (DecibelNightMiddle == null)
                    {
                        DecibelNightMiddle = new SimpleSubrecord <Single>();
                    }

                    DecibelNightMiddle.ReadBinary(reader);
                    break;

                case "CNAM":
                    if (DecibelNightInner == null)
                    {
                        DecibelNightInner = new SimpleSubrecord <Single>();
                    }

                    DecibelNightInner.ReadBinary(reader);
                    break;

                case "JNAM":
                    if (DayOuterBoundary == null)
                    {
                        DayOuterBoundary = new SimpleSubrecord <Single>();
                    }

                    DayOuterBoundary.ReadBinary(reader);
                    break;

                case "KNAM":
                    if (DayMiddleBoundary == null)
                    {
                        DayMiddleBoundary = new SimpleSubrecord <Single>();
                    }

                    DayMiddleBoundary.ReadBinary(reader);
                    break;

                case "LNAM":
                    if (DayInnerBoundary == null)
                    {
                        DayInnerBoundary = new SimpleSubrecord <Single>();
                    }

                    DayInnerBoundary.ReadBinary(reader);
                    break;

                case "MNAM":
                    if (NightOuterBoundary == null)
                    {
                        NightOuterBoundary = new SimpleSubrecord <Single>();
                    }

                    NightOuterBoundary.ReadBinary(reader);
                    break;

                case "NNAM":
                    if (NightMiddleBoundary == null)
                    {
                        NightMiddleBoundary = new SimpleSubrecord <Single>();
                    }

                    NightMiddleBoundary.ReadBinary(reader);
                    break;

                case "ONAM":
                    if (NightInnerBoundary == null)
                    {
                        NightInnerBoundary = new SimpleSubrecord <Single>();
                    }

                    NightInnerBoundary.ReadBinary(reader);
                    break;

                case "PNAM":
                    if (EnableFlags == null)
                    {
                        EnableFlags = new SimpleSubrecord <MediaSetEnableFlags>();
                    }

                    EnableFlags.ReadBinary(reader);
                    break;

                case "DNAM":
                    if (WaitTime_MinTimeOn_DaytimeMin == null)
                    {
                        WaitTime_MinTimeOn_DaytimeMin = new SimpleSubrecord <Single>();
                    }

                    WaitTime_MinTimeOn_DaytimeMin.ReadBinary(reader);
                    break;

                case "ENAM":
                    if (LoopFadeOut_LoopingRandomCrossfadeOverlap_NighttimeMin == null)
                    {
                        LoopFadeOut_LoopingRandomCrossfadeOverlap_NighttimeMin = new SimpleSubrecord <Single>();
                    }

                    LoopFadeOut_LoopingRandomCrossfadeOverlap_NighttimeMin.ReadBinary(reader);
                    break;

                case "FNAM":
                    if (RecoveryTime_LayerCrossfadeTime_DaytimeMax == null)
                    {
                        RecoveryTime_LayerCrossfadeTime_DaytimeMax = new SimpleSubrecord <Single>();
                    }

                    RecoveryTime_LayerCrossfadeTime_DaytimeMax.ReadBinary(reader);
                    break;

                case "GNAM":
                    if (NighttimeMax == null)
                    {
                        NighttimeMax = new SimpleSubrecord <Single>();
                    }

                    NighttimeMax.ReadBinary(reader);
                    break;

                case "HNAM":
                    if (Intro_Daytime == null)
                    {
                        Intro_Daytime = new RecordReference();
                    }

                    Intro_Daytime.ReadBinary(reader);
                    break;

                case "INAM":
                    if (Outro_Nighttime == null)
                    {
                        Outro_Nighttime = new RecordReference();
                    }

                    Outro_Nighttime.ReadBinary(reader);
                    break;

                case "DATA":
                    if (Unknown == null)
                    {
                        Unknown = new SimpleSubrecord <Byte[]>();
                    }

                    Unknown.ReadBinary(reader);
                    break;

                default:
                    throw new Exception();
                }
            }
        }