protected override void Deserialize() { base.Deserialize(); // _SuperIndex got moved into UStruct since 700+ if (Package.Version < 756) { Super = GetIndexObject(_Buffer.ReadObjectIndex()) as UField; Record("Super", Super); NextField = GetIndexObject(_Buffer.ReadObjectIndex()) as UField; Record("NextField", NextField); } else { NextField = GetIndexObject(_Buffer.ReadObjectIndex()) as UField; Record("NextField", NextField); // Should actually resist in UStruct if (this is UStruct) { Super = GetIndexObject(_Buffer.ReadObjectIndex()) as UField; Record("Super", Super); } } }
protected override void Deserialize() { base.Deserialize(); // _SuperIndex got moved into UStruct since 700+ if ((Package.Version < 756 #if SPECIALFORCE2 || Package.Build == UnrealPackage.GameBuild.BuildName.SpecialForce2 #endif ) #if BIOSHOCK && Package.Build != UnrealPackage.GameBuild.BuildName.Bioshock_Infinite #endif ) { Super = GetIndexObject(_Buffer.ReadObjectIndex()) as UField; Record("Super", Super); NextField = GetIndexObject(_Buffer.ReadObjectIndex()) as UField; Record("NextField", NextField); } else { NextField = GetIndexObject(_Buffer.ReadObjectIndex()) as UField; Record("NextField", NextField); // Should actually resist in UStruct if (this is UStruct) { Super = GetIndexObject(_Buffer.ReadObjectIndex()) as UField; Record("Super", Super); } } }
protected override void Deserialize() { base.Deserialize(); // _SuperIndex got moved into UStruct since 700+ if( (Package.Version < 756 #if SPECIALFORCE2 || Package.Build == UnrealPackage.GameBuild.BuildName.SpecialForce2 #endif ) #if BIOSHOCK && Package.Build != UnrealPackage.GameBuild.BuildName.Bioshock_Infinite #endif ) { Super = GetIndexObject( _Buffer.ReadObjectIndex() ) as UField; Record( "Super", Super ); NextField = GetIndexObject( _Buffer.ReadObjectIndex() ) as UField; Record( "NextField", NextField ); } else { NextField = GetIndexObject( _Buffer.ReadObjectIndex() ) as UField; Record( "NextField", NextField ); // Should actually resist in UStruct if( this is UStruct ) { Super = GetIndexObject( _Buffer.ReadObjectIndex() ) as UField; Record( "Super", Super ); } } }
public bool IsMember(UField membersClass) { for (var p = membersClass; p != null; p = p.Super) { if (Outer == p) { return(true); } } return(false); }
public void Deserialize(IUnrealStream stream) { if (stream.Version <= 540) { // e.g. Core.Object.X _FieldName = stream.ReadText(); } else { // TODO: Possibly linked to a non-ufield? _Field = (UField)stream.ReadObject(); _Field.MetaData = this; } int length = stream.ReadInt32(); Tags = new Dictionary <string, string>(length); for (var i = 0; i < length; ++i) { var key = stream.ReadNameReference(); string value = stream.ReadText(); Tags.Add(key.Name, value); } }
public bool IsMember( UField membersClass ) { for( var p = membersClass; p != null; p = p.Super ) { if( Outer == p ) { return true; } } return false; }