コード例 #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 "LNAM":
                    if (List == null)
                    {
                        List = new List <RecordReference>();
                    }

                    RecordReference tempLNAM = new RecordReference();
                    tempLNAM.ReadBinary(reader);
                    List.Add(tempLNAM);
                    break;

                default:
                    throw new Exception();
                }
            }
        }
コード例 #2
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 "MODL":
                    if (Model == null)
                    {
                        Model = new Model();
                    }

                    Model.ReadBinary(reader);
                    break;

                case "DATA":
                    if (HeadPartFlags == null)
                    {
                        HeadPartFlags = new SimpleSubrecord <HeadPartFlags>();
                    }

                    HeadPartFlags.ReadBinary(reader);
                    break;

                case "HNAM":
                    if (ExtraParts == null)
                    {
                        ExtraParts = new List <RecordReference>();
                    }

                    RecordReference tempHNAM = new RecordReference();
                    tempHNAM.ReadBinary(reader);
                    ExtraParts.Add(tempHNAM);
                    break;

                default:
                    throw new Exception();
                }
            }
        }
コード例 #3
0
        partial void ReadGlobalReference(ESPReader reader)
        {
            if (References == null)
            {
                References = new List <Subrecord>();
            }

            var globalRef = new RecordReference();

            globalRef.ReadBinary(reader);
            References.Add(globalRef);
        }
コード例 #4
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 "CARD":
                    if (Cards == null)
                    {
                        Cards = new List <RecordReference>();
                    }

                    RecordReference tempCARD = new RecordReference();
                    tempCARD.ReadBinary(reader);
                    Cards.Add(tempCARD);
                    break;

                case "DATA":
                    if (Data == null)
                    {
                        Data = new SimpleSubrecord <UInt32>();
                    }

                    Data.ReadBinary(reader);
                    break;

                default:
                    throw new Exception();
                }
            }
        }
コード例 #5
0
        partial void ReadValue2(ESPReader reader)
        {
            switch (Data.Type)
            {
            case ChallengeType.KillFromAFormList:
                Value2 = new RecordReference();
                Value2.ReadBinary(reader);
                break;

            case ChallengeType.KillASpecificFormID:
                Value2 = new RecordReference();
                Value2.ReadBinary(reader);
                break;

            case ChallengeType.KillAnyInACategory:
                Value2 = new RecordReference();
                Value2.ReadBinary(reader);
                break;

            case ChallengeType.HitAnEnemy:
                Value2 = new RecordReference();
                Value2.ReadBinary(reader);
                break;

            case ChallengeType.DiscoverAMapMarker:
                Value2 = new RecordReference();
                Value2.ReadBinary(reader);
                break;

            case ChallengeType.UseAnItem:
                Value2 = new SimpleSubrecord <byte[]>();
                Value2.ReadBinary(reader);
                break;

            case ChallengeType.AcquireAnItem:
                Value2 = new SimpleSubrecord <byte[]>();
                Value2.ReadBinary(reader);
                break;

            case ChallengeType.UseASkill:
                Value2 = new SimpleSubrecord <byte[]>();
                Value2.ReadBinary(reader);
                break;

            case ChallengeType.DoDamage:
                Value2 = new RecordReference();
                Value2.ReadBinary(reader);
                break;

            case ChallengeType.UseAnItemFromAList:
                Value2 = new SimpleSubrecord <byte[]>();
                Value2.ReadBinary(reader);
                break;

            case ChallengeType.AcquireAnItemFromAList:
                Value2 = new SimpleSubrecord <byte[]>();
                Value2.ReadBinary(reader);
                break;

            case ChallengeType.MiscellaneousStat:
                Value2 = new SimpleSubrecord <byte[]>();
                Value2.ReadBinary(reader);
                break;

            case ChallengeType.CraftUsingAnItem:
                Value2 = new SimpleSubrecord <byte[]>();
                Value2.ReadBinary(reader);
                break;

            case ChallengeType.ScriptedChallenge:
                Value2 = new SimpleSubrecord <byte[]>();
                Value2.ReadBinary(reader);
                break;
            }
        }
コード例 #6
0
        public override void ReadBinary(ESPReader reader)
        {
            List <string> readTags = new List <string>();

            while (reader.BaseStream.Position < reader.BaseStream.Length)
            {
                string subTag = reader.PeekTag();

                switch (subTag)
                {
                case "RDAT":
                    if (readTags.Contains("RDAT"))
                    {
                        return;
                    }
                    Header.ReadBinary(reader);
                    break;

                case "RDOT":
                    if (readTags.Contains("RDOT"))
                    {
                        return;
                    }
                    if (ObjectList == null)
                    {
                        ObjectList = new RegionObjectList();
                    }

                    ObjectList.ReadBinary(reader);
                    break;

                case "RDMP":
                    if (readTags.Contains("RDMP"))
                    {
                        return;
                    }
                    if (MapName == null)
                    {
                        MapName = new SimpleSubrecord <String>();
                    }

                    MapName.ReadBinary(reader);
                    break;

                case "RDGS":
                    if (readTags.Contains("RDGS"))
                    {
                        return;
                    }
                    if (GrassList == null)
                    {
                        GrassList = new RegionGrassList();
                    }

                    GrassList.ReadBinary(reader);
                    break;

                case "RDMD":
                    if (readTags.Contains("RDMD"))
                    {
                        return;
                    }
                    if (MusicType == null)
                    {
                        MusicType = new SimpleSubrecord <RegionMusicType>();
                    }

                    MusicType.ReadBinary(reader);
                    break;

                case "RDMO":
                    if (readTags.Contains("RDMO"))
                    {
                        return;
                    }
                    if (Music == null)
                    {
                        Music = new RecordReference();
                    }

                    Music.ReadBinary(reader);
                    break;

                case "RDSI":
                    if (readTags.Contains("RDSI"))
                    {
                        return;
                    }
                    if (IncidentalMediaSet == null)
                    {
                        IncidentalMediaSet = new RecordReference();
                    }

                    IncidentalMediaSet.ReadBinary(reader);
                    break;

                case "RDSB":
                    if (BattleMediaSets == null)
                    {
                        BattleMediaSets = new List <RecordReference>();
                    }

                    RecordReference tempRDSB = new RecordReference();
                    tempRDSB.ReadBinary(reader);
                    BattleMediaSets.Add(tempRDSB);
                    break;

                case "RDSD":
                    if (readTags.Contains("RDSD"))
                    {
                        return;
                    }
                    if (Sounds == null)
                    {
                        Sounds = new RegionSoundList();
                    }

                    Sounds.ReadBinary(reader);
                    break;

                case "RDWT":
                    if (readTags.Contains("RDWT"))
                    {
                        return;
                    }
                    if (Weathers == null)
                    {
                        Weathers = new WeatherList();
                    }

                    Weathers.ReadBinary(reader);
                    break;

                case "RDID":
                    if (readTags.Contains("RDID"))
                    {
                        return;
                    }
                    if (Imposters == null)
                    {
                        Imposters = new FormArray();
                    }

                    Imposters.ReadBinary(reader);
                    break;

                default:
                    return;
                }

                readTags.Add(subTag);
            }
        }
コード例 #7
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 "OBND":
                    if (ObjectBounds == null)
                    {
                        ObjectBounds = new ObjectBounds();
                    }

                    ObjectBounds.ReadBinary(reader);
                    break;

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

                    Name.ReadBinary(reader);
                    break;

                case "MODL":
                    if (Model == null)
                    {
                        Model = new Model();
                    }

                    Model.ReadBinary(reader);
                    break;

                case "ACBS":
                    if (BaseStats == null)
                    {
                        BaseStats = new NPCBaseStats();
                    }

                    BaseStats.ReadBinary(reader);
                    break;

                case "SNAM":
                    if (Factions == null)
                    {
                        Factions = new List <FactionMembership>();
                    }

                    FactionMembership tempSNAM = new FactionMembership();
                    tempSNAM.ReadBinary(reader);
                    Factions.Add(tempSNAM);
                    break;

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

                    DeathItem.ReadBinary(reader);
                    break;

                case "VTCK":
                    if (VoiceType == null)
                    {
                        VoiceType = new RecordReference();
                    }

                    VoiceType.ReadBinary(reader);
                    break;

                case "TPLT":
                    if (Template == null)
                    {
                        Template = new RecordReference();
                    }

                    Template.ReadBinary(reader);
                    break;

                case "RNAM":
                    if (Race == null)
                    {
                        Race = new RecordReference();
                    }

                    Race.ReadBinary(reader);
                    break;

                case "SPLO":
                    if (ActorEffects == null)
                    {
                        ActorEffects = new List <RecordReference>();
                    }

                    RecordReference tempSPLO = new RecordReference();
                    tempSPLO.ReadBinary(reader);
                    ActorEffects.Add(tempSPLO);
                    break;

                case "EITM":
                    if (UnarmedAttackEffect == null)
                    {
                        UnarmedAttackEffect = new RecordReference();
                    }

                    UnarmedAttackEffect.ReadBinary(reader);
                    break;

                case "EAMT":
                    if (UnarmedAttackAnimation == null)
                    {
                        UnarmedAttackAnimation = new SimpleSubrecord <UInt16>();
                    }

                    UnarmedAttackAnimation.ReadBinary(reader);
                    break;

                case "DEST":
                    if (Destructable == null)
                    {
                        Destructable = new Destructable();
                    }

                    Destructable.ReadBinary(reader);
                    break;

                case "SCRI":
                    if (Script == null)
                    {
                        Script = new RecordReference();
                    }

                    Script.ReadBinary(reader);
                    break;

                case "CNTO":
                    if (Contents == null)
                    {
                        Contents = new List <InventoryItem>();
                    }

                    InventoryItem tempCNTO = new InventoryItem();
                    tempCNTO.ReadBinary(reader);
                    Contents.Add(tempCNTO);
                    break;

                case "AIDT":
                    if (AIData == null)
                    {
                        AIData = new AIData();
                    }

                    AIData.ReadBinary(reader);
                    break;

                case "PKID":
                    if (Packages == null)
                    {
                        Packages = new List <RecordReference>();
                    }

                    RecordReference tempPKID = new RecordReference();
                    tempPKID.ReadBinary(reader);
                    Packages.Add(tempPKID);
                    break;

                case "CNAM":
                    if (Class == null)
                    {
                        Class = new RecordReference();
                    }

                    Class.ReadBinary(reader);
                    break;

                case "DATA":
                    if (Data == null)
                    {
                        Data = new NPCData();
                    }

                    Data.ReadBinary(reader);
                    break;

                case "DNAM":
                    if (Skills == null)
                    {
                        Skills = new NPCSkills();
                    }

                    Skills.ReadBinary(reader);
                    break;

                case "PNAM":
                    if (HeadParts == null)
                    {
                        HeadParts = new List <RecordReference>();
                    }

                    RecordReference tempPNAM = new RecordReference();
                    tempPNAM.ReadBinary(reader);
                    HeadParts.Add(tempPNAM);
                    break;

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

                    HairType.ReadBinary(reader);
                    break;

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

                    HairLength.ReadBinary(reader);
                    break;

                case "ENAM":
                    if (Eyes == null)
                    {
                        Eyes = new RecordReference();
                    }

                    Eyes.ReadBinary(reader);
                    break;

                case "HCLR":
                    if (HairColor == null)
                    {
                        HairColor = new SimpleSubrecord <Color>();
                    }

                    HairColor.ReadBinary(reader);
                    break;

                case "ZNAM":
                    if (CombatStyle == null)
                    {
                        CombatStyle = new RecordReference();
                    }

                    CombatStyle.ReadBinary(reader);
                    break;

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

                    ImpactMaterialType.ReadBinary(reader);
                    break;

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

                    FaceGenGeometrySymmetric.ReadBinary(reader);
                    break;

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

                    FaceGenGeometryAsymmetric.ReadBinary(reader);
                    break;

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

                    FaceGenTexture.ReadBinary(reader);
                    break;

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

                    Unknown.ReadBinary(reader);
                    break;

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

                    Height.ReadBinary(reader);
                    break;

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

                    Weight.ReadBinary(reader);
                    break;

                default:
                    throw new Exception();
                }
            }
        }
コード例 #8
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 "OBND":
                    if (ObjectBounds == null)
                    {
                        ObjectBounds = new ObjectBounds();
                    }

                    ObjectBounds.ReadBinary(reader);
                    break;

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

                    Name.ReadBinary(reader);
                    break;

                case "MODL":
                    if (Model == null)
                    {
                        Model = new Model();
                    }

                    Model.ReadBinary(reader);
                    break;

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

                    LargeIcon.ReadBinary(reader);
                    break;

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

                    SmallIcon.ReadBinary(reader);
                    break;

                case "SCRI":
                    if (Script == null)
                    {
                        Script = new RecordReference();
                    }

                    Script.ReadBinary(reader);
                    break;

                case "DEST":
                    if (Destructable == null)
                    {
                        Destructable = new Destructable();
                    }

                    Destructable.ReadBinary(reader);
                    break;

                case "YNAM":
                    if (PickUpSound == null)
                    {
                        PickUpSound = new RecordReference();
                    }

                    PickUpSound.ReadBinary(reader);
                    break;

                case "ZNAM":
                    if (DropSound == null)
                    {
                        DropSound = new RecordReference();
                    }

                    DropSound.ReadBinary(reader);
                    break;

                case "DATA":
                    if (Data == null)
                    {
                        Data = new AmmoData();
                    }

                    Data.ReadBinary(reader);
                    break;

                case "DAT2":
                    if (ExtraData == null)
                    {
                        ExtraData = new AmmoExtraData();
                    }

                    ExtraData.ReadBinary(reader);
                    break;

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

                    ShortName.ReadBinary(reader);
                    break;

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

                    Abbreviation.ReadBinary(reader);
                    break;

                case "RCIL":
                    if (AmmoEffects == null)
                    {
                        AmmoEffects = new List <RecordReference>();
                    }

                    RecordReference tempRCIL = new RecordReference();
                    tempRCIL.ReadBinary(reader);
                    AmmoEffects.Add(tempRCIL);
                    break;

                default:
                    throw new Exception();
                }
            }
        }
コード例 #9
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 "CTDA":
                    if (Conditions == null)
                    {
                        Conditions = new List <Condition>();
                    }

                    Condition tempCTDA = new Condition();
                    tempCTDA.ReadBinary(reader);
                    Conditions.Add(tempCTDA);
                    break;

                case "ANAM":
                    if (RelatedCameraPaths == null)
                    {
                        RelatedCameraPaths = new RelatedCameraPaths();
                    }

                    RelatedCameraPaths.ReadBinary(reader);
                    break;

                case "DATA":
                    if (CameraZoom == null)
                    {
                        CameraZoom = new SimpleSubrecord <CameraPathZoom>();
                    }

                    CameraZoom.ReadBinary(reader);
                    break;

                case "SNAM":
                    if (CameraShots == null)
                    {
                        CameraShots = new List <RecordReference>();
                    }

                    RecordReference tempSNAM = new RecordReference();
                    tempSNAM.ReadBinary(reader);
                    CameraShots.Add(tempSNAM);
                    break;

                default:
                    throw new Exception();
                }
            }
        }
コード例 #10
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 "ICON":
                    if (LargeIcon == null)
                    {
                        LargeIcon = new SimpleSubrecord <String>();
                    }

                    LargeIcon.ReadBinary(reader);
                    break;

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

                    SmallIcon.ReadBinary(reader);
                    break;

                case "TNAM":
                    if (TextureSet == null)
                    {
                        TextureSet = new RecordReference();
                    }

                    TextureSet.ReadBinary(reader);
                    break;

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

                    HavokData.ReadBinary(reader);
                    break;

                case "SNAM":
                    if (TextureSpecularExponent == null)
                    {
                        TextureSpecularExponent = new SimpleSubrecord <Byte>();
                    }

                    TextureSpecularExponent.ReadBinary(reader);
                    break;

                case "GNAM":
                    if (Grasses == null)
                    {
                        Grasses = new List <RecordReference>();
                    }

                    RecordReference tempGNAM = new RecordReference();
                    tempGNAM.ReadBinary(reader);
                    Grasses.Add(tempGNAM);
                    break;

                default:
                    throw new Exception();
                }
            }
        }
コード例 #11
0
ファイル: Note.cs プロジェクト: TaleOfTwoWastelands/ESPSharp
        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 "OBND":
                    if (ObjectBounds == null)
                    {
                        ObjectBounds = new ObjectBounds();
                    }

                    ObjectBounds.ReadBinary(reader);
                    break;

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

                    Name.ReadBinary(reader);
                    break;

                case "MODL":
                    if (Model == null)
                    {
                        Model = new Model();
                    }

                    Model.ReadBinary(reader);
                    break;

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

                    LargeIcon.ReadBinary(reader);
                    break;

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

                    SmallIcon.ReadBinary(reader);
                    break;

                case "YNAM":
                    if (PickUpSound == null)
                    {
                        PickUpSound = new RecordReference();
                    }

                    PickUpSound.ReadBinary(reader);
                    break;

                case "ZNAM":
                    if (DropSound == null)
                    {
                        DropSound = new RecordReference();
                    }

                    DropSound.ReadBinary(reader);
                    break;

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

                    Type.ReadBinary(reader);
                    break;

                case "ONAM":
                    if (Quests == null)
                    {
                        Quests = new List <RecordReference>();
                    }

                    RecordReference tempONAM = new RecordReference();
                    tempONAM.ReadBinary(reader);
                    Quests.Add(tempONAM);
                    break;

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

                    Image.ReadBinary(reader);
                    break;

                case "TNAM":
                    ReadEntryData(reader);
                    break;

                case "SNAM":
                    if (Audio == null)
                    {
                        Audio = new RecordReference();
                    }

                    Audio.ReadBinary(reader);
                    break;

                default:
                    throw new Exception();
                }
            }
        }
コード例 #12
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 "OBND":
                    if (ObjectBounds == null)
                    {
                        ObjectBounds = new ObjectBounds();
                    }

                    ObjectBounds.ReadBinary(reader);
                    break;

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

                    Name.ReadBinary(reader);
                    break;

                case "MODL":
                    if (Model == null)
                    {
                        Model = new Model();
                    }

                    Model.ReadBinary(reader);
                    break;

                case "SPLO":
                    if (ActorEffects == null)
                    {
                        ActorEffects = new List <RecordReference>();
                    }

                    RecordReference tempSPLO = new RecordReference();
                    tempSPLO.ReadBinary(reader);
                    ActorEffects.Add(tempSPLO);
                    break;

                case "EITM":
                    if (UnarmedAttackEffect == null)
                    {
                        UnarmedAttackEffect = new RecordReference();
                    }

                    UnarmedAttackEffect.ReadBinary(reader);
                    break;

                case "EAMT":
                    if (UnarmedAttackAnimation == null)
                    {
                        UnarmedAttackAnimation = new SimpleSubrecord <UInt16>();
                    }

                    UnarmedAttackAnimation.ReadBinary(reader);
                    break;

                case "NIFZ":
                    if (Models == null)
                    {
                        Models = new SubNullStringList();
                    }

                    Models.ReadBinary(reader);
                    break;

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

                    TextureHashes.ReadBinary(reader);
                    break;

                case "ACBS":
                    if (BaseStats == null)
                    {
                        BaseStats = new CreatureBaseStats();
                    }

                    BaseStats.ReadBinary(reader);
                    break;

                case "SNAM":
                    if (Factions == null)
                    {
                        Factions = new List <FactionMembership>();
                    }

                    FactionMembership tempSNAM = new FactionMembership();
                    tempSNAM.ReadBinary(reader);
                    Factions.Add(tempSNAM);
                    break;

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

                    DeathItem.ReadBinary(reader);
                    break;

                case "VTCK":
                    if (VoiceType == null)
                    {
                        VoiceType = new RecordReference();
                    }

                    VoiceType.ReadBinary(reader);
                    break;

                case "TPLT":
                    if (Template == null)
                    {
                        Template = new RecordReference();
                    }

                    Template.ReadBinary(reader);
                    break;

                case "DEST":
                    if (Destructable == null)
                    {
                        Destructable = new Destructable();
                    }

                    Destructable.ReadBinary(reader);
                    break;

                case "SCRI":
                    if (Script == null)
                    {
                        Script = new RecordReference();
                    }

                    Script.ReadBinary(reader);
                    break;

                case "CNTO":
                    if (Contents == null)
                    {
                        Contents = new List <InventoryItem>();
                    }

                    InventoryItem tempCNTO = new InventoryItem();
                    tempCNTO.ReadBinary(reader);
                    Contents.Add(tempCNTO);
                    break;

                case "AIDT":
                    if (AIData == null)
                    {
                        AIData = new AIData();
                    }

                    AIData.ReadBinary(reader);
                    break;

                case "PKID":
                    if (Packages == null)
                    {
                        Packages = new List <RecordReference>();
                    }

                    RecordReference tempPKID = new RecordReference();
                    tempPKID.ReadBinary(reader);
                    Packages.Add(tempPKID);
                    break;

                case "KFFZ":
                    if (Animations == null)
                    {
                        Animations = new SubNullStringList();
                    }

                    Animations.ReadBinary(reader);
                    break;

                case "DATA":
                    if (Data == null)
                    {
                        Data = new CreatureData();
                    }

                    Data.ReadBinary(reader);
                    break;

                case "RNAM":
                    if (AttackReach == null)
                    {
                        AttackReach = new SimpleSubrecord <Byte>();
                    }

                    AttackReach.ReadBinary(reader);
                    break;

                case "ZNAM":
                    if (CombatStyle == null)
                    {
                        CombatStyle = new RecordReference();
                    }

                    CombatStyle.ReadBinary(reader);
                    break;

                case "PNAM":
                    if (BodyPartData == null)
                    {
                        BodyPartData = new RecordReference();
                    }

                    BodyPartData.ReadBinary(reader);
                    break;

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

                    TurningSpeed.ReadBinary(reader);
                    break;

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

                    BaseScale.ReadBinary(reader);
                    break;

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

                    FootWeight.ReadBinary(reader);
                    break;

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

                    ImpactMaterialType.ReadBinary(reader);
                    break;

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

                    SoundLevel.ReadBinary(reader);
                    break;

                case "CSCR":
                    if (SoundTemplate == null)
                    {
                        SoundTemplate = new RecordReference();
                    }

                    SoundTemplate.ReadBinary(reader);
                    break;

                case "CSDT":
                    if (SoundData == null)
                    {
                        SoundData = new List <CreatureSoundData>();
                    }

                    CreatureSoundData tempCSDT = new CreatureSoundData();
                    tempCSDT.ReadBinary(reader);
                    SoundData.Add(tempCSDT);
                    break;

                case "CNAM":
                    if (ImpactDataset == null)
                    {
                        ImpactDataset = new RecordReference();
                    }

                    ImpactDataset.ReadBinary(reader);
                    break;

                case "LNAM":
                    if (MeleeWeaponList == null)
                    {
                        MeleeWeaponList = new RecordReference();
                    }

                    MeleeWeaponList.ReadBinary(reader);
                    break;

                default:
                    throw new Exception();
                }
            }
        }
コード例 #13
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 "OBND":
                    if (ObjectBounds == null)
                    {
                        ObjectBounds = new ObjectBounds();
                    }

                    ObjectBounds.ReadBinary(reader);
                    break;

                case "SNAM":
                    if (Sounds == null)
                    {
                        Sounds = new List <RecordReference>();
                    }

                    RecordReference tempSNAM = new RecordReference();
                    tempSNAM.ReadBinary(reader);
                    Sounds.Add(tempSNAM);
                    break;

                case "WNAM":
                    if (WallaTriggerCount == null)
                    {
                        WallaTriggerCount = new SimpleSubrecord <UInt32>();
                    }

                    WallaTriggerCount.ReadBinary(reader);
                    break;

                case "RDAT":
                    if (UseSoundFromRegion == null)
                    {
                        UseSoundFromRegion = new RecordReference();
                    }

                    UseSoundFromRegion.ReadBinary(reader);
                    break;

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

                    EnvironmentType.ReadBinary(reader);
                    break;

                case "INAM":
                    if (IsInterior == null)
                    {
                        IsInterior = new SimpleSubrecord <IsInteriorEnum>();
                    }

                    IsInterior.ReadBinary(reader);
                    break;

                default:
                    throw new Exception();
                }
            }
        }
コード例 #14
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 "QSTI":
                    if (AddedQuests == null)
                    {
                        AddedQuests = new List <AddedQuest>();
                    }

                    AddedQuest tempQSTI = new AddedQuest();
                    tempQSTI.ReadBinary(reader);
                    AddedQuests.Add(tempQSTI);
                    break;

                case "QSTR":
                    if (RemovedQuests == null)
                    {
                        RemovedQuests = new List <RecordReference>();
                    }

                    RecordReference tempQSTR = new RecordReference();
                    tempQSTR.ReadBinary(reader);
                    RemovedQuests.Add(tempQSTR);
                    break;

                case "INFC":
                    if (UnusedInfos == null)
                    {
                        UnusedInfos = new List <SharedInfo>();
                    }

                    SharedInfo tempINFC = new SharedInfo();
                    tempINFC.ReadBinary(reader);
                    UnusedInfos.Add(tempINFC);
                    break;

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

                    Name.ReadBinary(reader);
                    break;

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

                    Priority.ReadBinary(reader);
                    break;

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

                    Unknown.ReadBinary(reader);
                    break;

                case "DATA":
                    if (Data == null)
                    {
                        Data = new DialogTopicData();
                    }

                    Data.ReadBinary(reader);
                    break;

                default:
                    throw new Exception();
                }
            }
        }
コード例 #15
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 (Unknown1 == null)
                    {
                        Unknown1 = new SimpleSubrecord <Byte[]>();
                    }

                    Unknown1.ReadBinary(reader);
                    break;

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

                    Unknown2.ReadBinary(reader);
                    break;

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

                    Unknown3.ReadBinary(reader);
                    break;

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

                    LocationDelay.ReadBinary(reader);
                    break;

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

                    DayStart.ReadBinary(reader);
                    break;

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

                    NightStart.ReadBinary(reader);
                    break;

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

                    RetriggerDelay.ReadBinary(reader);
                    break;

                case "HNAM":
                    if (MediaSetsNeutral == null)
                    {
                        MediaSetsNeutral = new List <RecordReference>();
                    }

                    RecordReference tempHNAM = new RecordReference();
                    tempHNAM.ReadBinary(reader);
                    MediaSetsNeutral.Add(tempHNAM);
                    break;

                case "ZNAM":
                    if (MediaSetsAlly == null)
                    {
                        MediaSetsAlly = new List <RecordReference>();
                    }

                    RecordReference tempZNAM = new RecordReference();
                    tempZNAM.ReadBinary(reader);
                    MediaSetsAlly.Add(tempZNAM);
                    break;

                case "XNAM":
                    if (MediaSetsFriend == null)
                    {
                        MediaSetsFriend = new List <RecordReference>();
                    }

                    RecordReference tempXNAM = new RecordReference();
                    tempXNAM.ReadBinary(reader);
                    MediaSetsFriend.Add(tempXNAM);
                    break;

                case "YNAM":
                    if (MediaSetsEnemy == null)
                    {
                        MediaSetsEnemy = new List <RecordReference>();
                    }

                    RecordReference tempYNAM = new RecordReference();
                    tempYNAM.ReadBinary(reader);
                    MediaSetsEnemy.Add(tempYNAM);
                    break;

                case "LNAM":
                    if (MediaSetsLocation == null)
                    {
                        MediaSetsLocation = new List <RecordReference>();
                    }

                    RecordReference tempLNAM = new RecordReference();
                    tempLNAM.ReadBinary(reader);
                    MediaSetsLocation.Add(tempLNAM);
                    break;

                case "GNAM":
                    if (MediaSetsBattle == null)
                    {
                        MediaSetsBattle = new List <RecordReference>();
                    }

                    RecordReference tempGNAM = new RecordReference();
                    tempGNAM.ReadBinary(reader);
                    MediaSetsBattle.Add(tempGNAM);
                    break;

                case "RNAM":
                    if (ConditionalFaction == null)
                    {
                        ConditionalFaction = new RecordReference();
                    }

                    ConditionalFaction.ReadBinary(reader);
                    break;

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

                    Unknown4.ReadBinary(reader);
                    break;

                default:
                    throw new Exception();
                }
            }
        }
コード例 #16
0
        public override void ReadData(ESPReader reader, long dataEnd)
        {
            while (reader.BaseStream.Position < dataEnd)
            {
                string subTag = reader.PeekTag();

                switch (subTag)
                {
                case "DATA":
                    if (Data == null)
                    {
                        Data = new DialogResponseData();
                    }

                    Data.ReadBinary(reader);
                    break;

                case "QSTI":
                    if (Quest == null)
                    {
                        Quest = new RecordReference();
                    }

                    Quest.ReadBinary(reader);
                    break;

                case "TPIC":
                    if (Topic == null)
                    {
                        Topic = new RecordReference();
                    }

                    Topic.ReadBinary(reader);
                    break;

                case "PNAM":
                    if (PreviousDialogResponse == null)
                    {
                        PreviousDialogResponse = new RecordReference();
                    }

                    PreviousDialogResponse.ReadBinary(reader);
                    break;

                case "NAME":
                    if (LearnedTopics == null)
                    {
                        LearnedTopics = new List <RecordReference>();
                    }

                    RecordReference tempNAME = new RecordReference();
                    tempNAME.ReadBinary(reader);
                    LearnedTopics.Add(tempNAME);
                    break;

                case "TRDT":
                    if (Responses == null)
                    {
                        Responses = new List <Response>();
                    }

                    Response tempTRDT = new Response();
                    tempTRDT.ReadBinary(reader);
                    Responses.Add(tempTRDT);
                    break;

                case "CTDA":
                    if (Conditions == null)
                    {
                        Conditions = new List <Condition>();
                    }

                    Condition tempCTDA = new Condition();
                    tempCTDA.ReadBinary(reader);
                    Conditions.Add(tempCTDA);
                    break;

                case "TCLT":
                    if (Choices == null)
                    {
                        Choices = new List <RecordReference>();
                    }

                    RecordReference tempTCLT = new RecordReference();
                    tempTCLT.ReadBinary(reader);
                    Choices.Add(tempTCLT);
                    break;

                case "TCLF":
                    if (LinkedFromList == null)
                    {
                        LinkedFromList = new List <RecordReference>();
                    }

                    RecordReference tempTCLF = new RecordReference();
                    tempTCLF.ReadBinary(reader);
                    LinkedFromList.Add(tempTCLF);
                    break;

                case "TCFU":
                    if (UnknownList == null)
                    {
                        UnknownList = new List <RecordReference>();
                    }

                    RecordReference tempTCFU = new RecordReference();
                    tempTCFU.ReadBinary(reader);
                    UnknownList.Add(tempTCFU);
                    break;

                case "SCHR":
                    if (BeginScript == null)
                    {
                        BeginScript = new EmbeddedScript();
                    }

                    BeginScript.ReadBinary(reader);
                    break;

                case "NEXT":
                    if (EndScript == null)
                    {
                        EndScript = new DialogEndScript();
                    }

                    EndScript.ReadBinary(reader);
                    break;

                case "SNDD":
                    if (UnusedSound == null)
                    {
                        UnusedSound = new RecordReference();
                    }

                    UnusedSound.ReadBinary(reader);
                    break;

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

                    Prompt.ReadBinary(reader);
                    break;

                case "ANAM":
                    if (Speaker == null)
                    {
                        Speaker = new RecordReference();
                    }

                    Speaker.ReadBinary(reader);
                    break;

                case "KNAM":
                    if (RelatedSkillOrPerk == null)
                    {
                        RelatedSkillOrPerk = new RecordReference();
                    }

                    RelatedSkillOrPerk.ReadBinary(reader);
                    break;

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

                    SpeechChallenge.ReadBinary(reader);
                    break;

                default:
                    throw new Exception();
                }
            }
        }