def __init__(self, reader: BinaryStream): self.MaterialInterface = reader.readObject() self.MaterialSlotName = reader.readFName() if FRenderingObjectVersion().get( reader ) >= FRenderingObjectVersion.TextureStreamingMeshUVChannelData: self.UVChannelData = FMeshUVChannelInfo(reader)
def __init__(self, reader: BinaryStream, tag: FPropertyTag, readType): self.position = reader.base_stream.tell() from .BaseProperty import ReadType if readType == ReadType.ZERO: #ZERO self.Value = FName(self.IndexToEnum(reader, tag, 0)) elif readType.value == 0: byteValue = 0 innerType = getattr(tag, "InnerType", None) if innerType is not None: from .BaseProperty import ReadAsValue byteValue = ReadAsValue(reader, tag.InnerData, innerType, 0) else: byteValue = reader.readByteToInt() self.Value = FName(self.IndexToEnum(reader, tag, byteValue)) else: self.Value = reader.readFName()
def __init__(self, reader: BinaryStream): self.position = reader.base_stream.tell() self.Value = reader.readFName()
def __init__(self, reader: BinaryStream, propMappings: StructProps = None): if propMappings: propdata = propMappings.data self.Name = FName(propMappings.Name) self.ArrayIndex = propMappings.ArraySize # data section for attr in [ "EnumName", "InnerType", "StructName", "ValueType", "Type" ]: val = getattr(propdata, attr, None) if val is None: continue if attr == "InnerType": self.InnerData = val #FPropertyTag2(**val) elif attr == "ValueType": self.ValueData = val #FPropertyTag2(val) if isinstance(val, str): val = FName(val) if isinstance(val, UsmapTag): val = FName(val.Type) setattr(self, attr, val) return self.Name = reader.readFName() if self.Name.isNone: return self.Type = reader.readFName() self.Size = reader.readInt32() self.ArrayIndex = reader.readInt32() self.position = reader.base_stream.tell() if self.Type.Number == 0: Type = self.Type.string if Type == "StructProperty": self.StructName = reader.readFName() if reader.version >= UE4Versions.VER_UE4_STRUCT_GUID_IN_PROPERTY_TAG: self.StructGuid = FGuid(reader) elif Type == "BoolProperty": self.BoolVal = reader.readByteToInt() elif Type == "ByteProperty" or Type == "EnumProperty": self.EnumName = reader.readFName() elif Type == "ArrayProperty": if reader.version >= UE4Versions.VAR_UE4_ARRAY_PROPERTY_INNER_TAGS: self.InnerType = reader.readFName() elif Type == "SetProperty": if reader.version >= UE4Versions.VER_UE4_PROPERTY_TAG_SET_MAP_SUPPORT: self.InnerType = reader.readFName() elif Type == "MapProperty": if reader.version >= UE4Versions.VER_UE4_PROPERTY_TAG_SET_MAP_SUPPORT: self.InnerType = reader.readFName() self.ValueType = reader.readFName() HasPropertyGuid = reader.readByteToInt() if HasPropertyGuid != 0: FGuid(reader) self.end_pos = reader.tell()
def __init__(self, reader: BinaryStream) -> None: self.ClassPackage = reader.readFName() self.ClassName = reader.readFName() self.OuterIndex = FPackageIndex(reader) self.ObjectName = reader.readFName()
def __init__(self, reader: BinaryStream) -> None: self.Object = reader.readInt32() self.Name = reader.readFName()
def __init__(self, reader: BinaryStream): self.TableId = reader.readFName() self.Key = reader.readFString()
def __init__(self, reader: BinaryStream) -> None: self.position = reader.base_stream.tell() self.AssetPathName = reader.readFName() self.SubPathString = reader.readFString()