コード例 #1
0
 public BSEQSceneSequenceProxyBlock(EndianBinaryReaderEx er, BSEQNameTable nameTable)
 {
     Count = er.ReadUInt16();
     if (Count != 1)
     {
         throw new InvalidDataException("ProxyBlock Count not 1: (" + Count + ")");
     }
     UnknownName = new BSEQNameOffset(er, nameTable);
     SceneName   = new BSEQNameOffset(er, nameTable);
     Unknown     = er.ReadUInt16();
 }
コード例 #2
0
            public BSEQPracticalBlock(EndianBinaryReaderEx er, BSEQNameTable nameTable)
            {
                long startPosition = er.BaseStream.Position;

                SequenceID2   = er.ReadUInt16();
                PracticalName = new BSEQNameOffset(er, nameTable);
                UInt16 practicalSubNameListOffset = er.ReadUInt16();

                Unknown = er.ReadUInt16();
                er.BaseStream.Position = startPosition + practicalSubNameListOffset;
                PracticalSubNameList   = new BSEQCodeNameList(er, nameTable);
            }
コード例 #3
0
            public BSEQSequenceBlock(EndianBinaryReaderEx er, BSEQNameTable nameTable, BSEQSequenceID seqID)
            {
                long startPos = er.BaseStream.Position;

                SequenceID2  = er.ReadUInt16();
                SequenceName = new BSEQNameOffset(er, nameTable);
                UInt16 subSectionOffset = er.ReadUInt16();
                UInt16 flowOffset       = er.ReadUInt16();

                er.BaseStream.Position = startPos + subSectionOffset;
                SubSectionTable        = new BSEQSubSectionTable(er);
                er.BaseStream.Position = startPos + flowOffset;
                FlowTable = new BSEQFlowTable(er, seqID);
            }
コード例 #4
0
            public BSEQSceneSequenceProxySectionBlock(EndianBinaryReaderEx er, BSEQNameTable nameTable)
            {
                long startPos = er.BaseStream.Position;

                SectionType = (SByte)er.ReadUInt32();
                SequenceID  = new BSEQSequenceID(er);
                Name        = new BSEQNameOffset(er, nameTable);
                UInt16 enterTableOffset = er.ReadUInt16();
                UInt16 exitTableOffset  = er.ReadUInt16();

                BlockType = er.ReadUInt16();
                UInt16 proxyBlockOffset = er.ReadUInt16();

                Unknown = er.ReadUInt16();
                er.BaseStream.Position = startPos + enterTableOffset;
                EnterCodeList          = new BSEQCodeNameList(er, nameTable);
                er.BaseStream.Position = startPos + exitTableOffset;
                ExitCodeList           = new BSEQCodeNameList(er, nameTable);
                er.BaseStream.Position = startPos + proxyBlockOffset;
                ProxyBlock             = new BSEQSceneSequenceProxyBlock(er, nameTable);

                SequenceID.RegisterSectionBlock(this);
            }
コード例 #5
0
 public BSEQEngineCreatorEntry(EndianBinaryReaderEx er, BSEQNameTable nameTable)
 {
     CreatorName = new BSEQNameOffset(er, nameTable);
     TargetName  = new BSEQNameOffset(er, nameTable);
 }
コード例 #6
0
 public BSEQCodeNamePair(EndianBinaryReaderEx er, BSEQNameTable nameTable)
 {
     ID         = er.ReadUInt16();
     NameOffset = new BSEQNameOffset(er, nameTable);
 }