示例#1
0
                public override void Deserialize(IUnrealStream stream)
                {
                    FunctionNameIndex = stream.ReadNameIndex();
                    Decompiler.AlignNameSize();

                    DeserializeCall();
                }
示例#2
0
        public void Deserialize( IUnrealStream stream )
        {
            var index = stream.ReadNameIndex( out _Number );
            _NameItem = stream.Package.Names[index];

            Debug.Assert( _NameItem != null, "_NameItem cannot be null! " + index );
            Debug.Assert( _Number >= -1, "Invalid _Number value! " + _Number );
        }
示例#3
0
        public void Deserialize(IUnrealStream stream)
        {
            var index = stream.ReadNameIndex(out _Number);

            _NameItem = stream.Package.Names[index];

            Debug.Assert(_NameItem != null, "_NameItem cannot be null! " + index);
            Debug.Assert(_Number >= -1, "Invalid _Number value! " + _Number);
        }
示例#4
0
        public static string ReadName(this IUnrealStream stream)
        {
            int num;
            var name = stream.Package.GetIndexName(stream.ReadNameIndex(out num));

            if (num > UName.Numeric)
            {
                name += "_" + num;
            }
            return(name);
        }
示例#5
0
                public override void Deserialize(IUnrealStream stream)
                {
                    // FIXME: MOHA or general?
                    if (stream.Version == 421)
                    {
                        Decompiler.AlignSize(sizeof(int));
                    }

                    // Unknown purpose.
                    NameIndex = stream.ReadNameIndex();
                    Decompiler.AlignNameSize();

                    // TODO: Corrigate version. Seen in version ~648(The Ball) may have been introduced earlier, but not prior 610.
                    if (stream.Version > 610)
                    {
                        base.Deserialize(stream);
                    }
                }
示例#6
0
                public override void Deserialize(IUnrealStream stream)
                {
                    // TODO: Corrigate Version
                    if (stream.Version > 180)
                    {
                        ++stream.Position;  // ReadByte()
                        Decompiler.AlignSize(sizeof(byte));
                    }

                    // Delegate object index
                    stream.ReadObjectIndex();
                    Decompiler.AlignObjectSize();

                    // Delegate name index
                    FunctionNameIndex = stream.ReadNameIndex();
                    Decompiler.AlignNameSize();

                    DeserializeCall();
                }
示例#7
0
                public override void Deserialize(IUnrealStream stream)
                {
                    // TODO: Corrigate Version (Definitely not in MOHA, but in roboblitz(369))
                    if (stream.Version >= 178 && stream.Version < 421 /*MOHA*/)
                    {
                        byte isSuperCall = stream.ReadByte();
                        Decompiler.AlignSize(sizeof(byte));
                    }

                    if (stream.Version == 421)
                    {
                        Decompiler.AlignSize(sizeof(int));
                    }

                    FunctionNameIndex = stream.ReadNameIndex();
                    Decompiler.AlignNameSize();

                    DeserializeCall();
                }
示例#8
0
                public override void Deserialize( IUnrealStream stream )
                {
                    // TODO: Corrigate Version
                    if( stream.Version > 180 )
                    {
                        ++ stream.Position; // ReadByte()
                        Decompiler.AlignSize( sizeof(byte) );
                    }

                    // Delegate object index
                    stream.ReadObjectIndex();
                    Decompiler.AlignObjectSize();

                    // Delegate name index
                    FunctionNameIndex = stream.ReadNameIndex();
                    Decompiler.AlignNameSize();

                    DeserializeCall();
                }
示例#9
0
                public override void Deserialize( IUnrealStream stream )
                {
                    // TODO: Corrigate Version (Definitely not in MOHA, but in roboblitz(369))
                    //       Not in mass effect xbox 391
                    if( stream.Version >= 178 && stream.Version < 391/*MOHA*/ )
                    {
                        byte isSuperCall = stream.ReadByte();
                        Decompiler.AlignSize( sizeof(byte) );
                    }

                    if( stream.Version == 421 )
                    {
                        Decompiler.AlignSize( sizeof(int) );
                    }

                    FunctionNameIndex = stream.ReadNameIndex();
                    Decompiler.AlignNameSize();

                    DeserializeCall();
                }
示例#10
0
                public override void Deserialize( IUnrealStream stream )
                {
                    FunctionNameIndex = stream.ReadNameIndex();
                    Decompiler.AlignNameSize();

                    DeserializeCall();
                }
示例#11
0
                public override void Deserialize( IUnrealStream stream )
                {
                    // FIXME: MOHA or general?
                    if( stream.Version == 421 )
                    {
                        Decompiler.AlignSize( sizeof(int) );
                    }

                    // Unknown purpose.
                    NameIndex = stream.ReadNameIndex();
                    Decompiler.AlignNameSize();

                    // TODO: Corrigate version. Seen in version ~648(The Ball) may have been introduced earlier, but not prior 610.
                    if( stream.Version > 610 )
                    {
                        base.Deserialize( stream );
                    }
                }