private void ParseSubObjectSection() { SubObject subObject = new SubObject(); subObject.subModelNumber = reader.ReadInt(); subObject.radius = reader.ReadFloat(); subObject.submodelParent = reader.ReadInt(); subObject.offset = reader.ReadVector3(); subObject.geometricCenter = reader.ReadVector3(); subObject.boundingBoxMin = reader.ReadVector3(); subObject.boundingBoxMax = reader.ReadVector3(); subObject.submodelName = reader.ReadString(); subObject.properties = reader.ReadString(); subObject.movementType = reader.ReadInt(); subObject.movementAxis = reader.ReadInt(); subObject.reserved = reader.ReadInt(); subObject.bspData = reader.ReadByteArray(reader.ReadInt()); subObject.reserved = 0; if (subObject.submodelName == string.Empty) { subObject.submodelName = "SubObject " + subObject.subModelNumber; } model.subObjects.Add(subObject); }
public EncryptedString LoadEncryptedString() { var enc = _reader.ReadByteArray(); var size = _symmetricCipher.CalcPlainSizeFor(enc); var dec = new byte[size]; if (!_symmetricCipher.Decrypt(enc, dec)) { throw new CryptographicException(); } var r = new ByteArrayReader(dec); return(r.ReadString()); }