@@ -114,107 +114,147 @@ internal partial class TransElem
114114[ ProtoPackable ]
115115internal partial class CustomFace
116116{
117- [ ProtoMember ( 1 ) ] public byte [ ] Guid { get ; set ; }
118-
119- [ ProtoMember ( 2 ) ] public string FilePath { get ; set ; }
120-
121- [ ProtoMember ( 3 ) ] public string Shortcut { get ; set ; }
122-
123- [ ProtoMember ( 4 ) ] public byte [ ] Buffer { get ; set ; }
124-
125- [ ProtoMember ( 5 ) ] public byte [ ] Flag { get ; set ; }
126-
127- [ ProtoMember ( 6 ) ] public byte [ ] ? OldData { get ; set ; }
128-
129- [ ProtoMember ( 7 ) ] public uint FileId { get ; set ; }
130-
131- [ ProtoMember ( 8 ) ] public int ? ServerIp { get ; set ; }
132-
133- [ ProtoMember ( 9 ) ] public int ? ServerPort { get ; set ; }
134-
135- [ ProtoMember ( 10 ) ] public int FileType { get ; set ; }
136-
137- [ ProtoMember ( 11 ) ] public byte [ ] Signature { get ; set ; }
138-
139- [ ProtoMember ( 12 ) ] public int Useful { get ; set ; }
140-
141- [ ProtoMember ( 13 ) ] public byte [ ] Md5 { get ; set ; }
142-
117+ [ ProtoMember ( 1 ) ] public string FileMd5Hex { get ; set ; } // MD5 十六进制字符串
118+
119+ [ ProtoMember ( 2 ) ] public uint FileSize { get ; set ; } // 文件大小
120+
121+ [ ProtoMember ( 3 ) ] public string DownloadToken { get ; set ; } // 下载 Token
122+
123+ [ ProtoMember ( 4 ) ] public byte [ ] Unknown4 { get ; set ; }
124+
125+ [ ProtoMember ( 5 ) ] public uint Unknown5 { get ; set ; } // 标志位
126+
127+ [ ProtoMember ( 6 ) ] public byte [ ] Unknown6 { get ; set ; }
128+
129+ [ ProtoMember ( 7 ) ] public byte [ ] FileMd5 { get ; set ; } // MD5 二进制
130+
131+ [ ProtoMember ( 8 ) ] public uint Height { get ; set ; } // 图片高度
132+
133+ [ ProtoMember ( 9 ) ] public uint Width { get ; set ; } // 图片宽度
134+
135+ [ ProtoMember ( 10 ) ] public string FileId { get ; set ; } // 文件 ID
136+
137+ [ ProtoMember ( 11 ) ] public byte [ ] Unknown11 { get ; set ; }
138+
139+ [ ProtoMember ( 12 ) ] public int Unknown12 { get ; set ; }
140+
141+ [ ProtoMember ( 13 ) ] public uint Unknown13 { get ; set ; }
142+
143143 [ ProtoMember ( 14 ) ] public string ThumbUrl { get ; set ; }
144-
144+
145145 [ ProtoMember ( 15 ) ] public string BigUrl { get ; set ; }
146-
146+
147147 [ ProtoMember ( 16 ) ] public string OrigUrl { get ; set ; }
148-
148+
149149 [ ProtoMember ( 17 ) ] public int BizType { get ; set ; }
150-
151- [ ProtoMember ( 18 ) ] public int RepeatIndex { get ; set ; }
152-
153- [ ProtoMember ( 19 ) ] public int RepeatImage { get ; set ; }
154-
150+
151+ [ ProtoMember ( 18 ) ] public int Unknown18 { get ; set ; }
152+
153+ [ ProtoMember ( 19 ) ] public int Unknown19 { get ; set ; }
154+
155155 [ ProtoMember ( 20 ) ] public int ImageType { get ; set ; }
156-
157- [ ProtoMember ( 21 ) ] public int Index { get ; set ; }
158-
159- [ ProtoMember ( 22 ) ] public int Width { get ; set ; }
160-
161- [ ProtoMember ( 23 ) ] public int Height { get ; set ; }
162-
163- [ ProtoMember ( 24 ) ] public int Source { get ; set ; }
164-
165- [ ProtoMember ( 25 ) ] public uint Size { get ; set ; }
166-
167- [ ProtoMember ( 26 ) ] public int Origin { get ; set ; }
168-
169- [ ProtoMember ( 27 ) ] public int ? ThumbWidth { get ; set ; }
170-
171- [ ProtoMember ( 28 ) ] public int ? ThumbHeight { get ; set ; }
172-
173- [ ProtoMember ( 29 ) ] public int ShowLen { get ; set ; }
174-
175- [ ProtoMember ( 30 ) ] public int DownloadLen { get ; set ; }
176-
177- [ ProtoMember ( 31 ) ] public string ? X400Url { get ; set ; }
178-
179- [ ProtoMember ( 32 ) ] public int X400Width { get ; set ; }
180-
181- [ ProtoMember ( 33 ) ] public int X400Height { get ; set ; }
182-
183- [ ProtoMember ( 34 ) ] public PbReserve1 ? PbReserve { get ; set ; }
184156
185- [ ProtoPackable ]
186- public partial class PbReserve1
187- {
188- [ ProtoMember ( 1 ) ] public int SubType { get ; set ; }
157+ [ ProtoMember ( 21 ) ] public int Unknown21 { get ; set ; }
158+
159+ [ ProtoMember ( 22 ) ] public int Unknown22 { get ; set ; }
160+
161+ [ ProtoMember ( 23 ) ] public uint Unknown23 { get ; set ; } // 与 FileId 相同的 ID
162+
163+ [ ProtoMember ( 24 ) ] public int Unknown24 { get ; set ; }
164+
165+ [ ProtoMember ( 25 ) ] public uint Unknown25 { get ; set ; }
166+
167+ [ ProtoMember ( 26 ) ] public int Unknown26 { get ; set ; }
168+
169+ [ ProtoMember ( 27 ) ] public int Unknown27 { get ; set ; }
170+
171+ [ ProtoMember ( 28 ) ] public int Unknown28 { get ; set ; }
172+
173+ [ ProtoMember ( 29 ) ] public CustomFacePbReserve ? PbReserve { get ; set ; } // 扩展信息 (含 rkey)
174+
175+ [ ProtoMember ( 30 ) ] public int Unknown30 { get ; set ; }
176+
177+ [ ProtoMember ( 31 ) ] public string Unknown31 { get ; set ; }
178+
179+ [ ProtoMember ( 32 ) ] public int Unknown32 { get ; set ; }
180+
181+ [ ProtoMember ( 33 ) ] public int Unknown33 { get ; set ; }
182+
183+ [ ProtoMember ( 34 ) ] public CustomFaceOldPbReserve ? OldPbReserve { get ; set ; }
184+ }
185+
186+ [ ProtoPackable ]
187+ internal partial class CustomFacePbReserve
188+ {
189+ [ ProtoMember ( 1 ) ] public int Unknown1 { get ; set ; }
190+
191+ [ ProtoMember ( 3 ) ] public int Unknown3 { get ; set ; }
192+
193+ [ ProtoMember ( 4 ) ] public int Unknown4 { get ; set ; }
189194
190- [ ProtoMember ( 3 ) ] public int Field3 { get ; set ; }
195+ [ ProtoMember ( 9 ) ] public string Unknown9 { get ; set ; }
191196
192- [ ProtoMember ( 4 ) ] public int Field4 { get ; set ; }
197+ [ ProtoMember ( 10 ) ] public int Unknown10 { get ; set ; }
193198
194- [ ProtoMember ( 9 ) ] public string Summary { get ; set ; }
199+ [ ProtoMember ( 12 ) ] public string Unknown12 { get ; set ; }
195200
196- [ ProtoMember ( 10 ) ] public int Field10 { get ; set ; }
201+ [ ProtoMember ( 18 ) ] public string Unknown18 { get ; set ; }
197202
198- [ ProtoMember ( 21 ) ] public PbReserve2 Field21 { get ; set ; }
203+ [ ProtoMember ( 19 ) ] public string Unknown19 { get ; set ; }
199204
200- [ ProtoMember ( 31 ) ] public string Field31 { get ; set ; }
201- }
205+ [ ProtoMember ( 21 ) ] public CustomFacePbReserveInner ? Inner { get ; set ; }
202206
203- [ ProtoPackable ]
204- public partial class PbReserve2
205- {
206- [ ProtoMember ( 1 ) ] public int Field1 { get ; set ; }
207+ [ ProtoMember ( 30 ) ] public string Rkey { get ; set ; } // 下载密钥
208+ }
209+
210+ [ ProtoPackable ]
211+ internal partial class CustomFacePbReserveInner
212+ {
213+ [ ProtoMember ( 1 ) ] public int Unknown1 { get ; set ; }
214+
215+ [ ProtoMember ( 2 ) ] public string Unknown2 { get ; set ; }
216+
217+ [ ProtoMember ( 3 ) ] public int Unknown3 { get ; set ; }
218+
219+ [ ProtoMember ( 4 ) ] public int Unknown4 { get ; set ; }
220+
221+ [ ProtoMember ( 5 ) ] public int Unknown5 { get ; set ; }
222+
223+ [ ProtoMember ( 7 ) ] public string Unknown7 { get ; set ; }
224+ }
225+
226+ [ ProtoPackable ]
227+ internal partial class CustomFaceOldPbReserve
228+ {
229+ [ ProtoMember ( 1 ) ] public int SubType { get ; set ; }
230+
231+ [ ProtoMember ( 3 ) ] public int Field3 { get ; set ; }
232+
233+ [ ProtoMember ( 4 ) ] public int Field4 { get ; set ; }
234+
235+ [ ProtoMember ( 9 ) ] public string Summary { get ; set ; }
236+
237+ [ ProtoMember ( 10 ) ] public int Field10 { get ; set ; }
238+
239+ [ ProtoMember ( 21 ) ] public CustomFaceOldPbReserve2 Field21 { get ; set ; }
240+
241+ [ ProtoMember ( 31 ) ] public string Field31 { get ; set ; }
242+ }
243+
244+ [ ProtoPackable ]
245+ internal partial class CustomFaceOldPbReserve2
246+ {
247+ [ ProtoMember ( 1 ) ] public int Field1 { get ; set ; }
207248
208- [ ProtoMember ( 2 ) ] public string Field2 { get ; set ; }
249+ [ ProtoMember ( 2 ) ] public string Field2 { get ; set ; }
209250
210- [ ProtoMember ( 3 ) ] public int Field3 { get ; set ; }
251+ [ ProtoMember ( 3 ) ] public int Field3 { get ; set ; }
211252
212- [ ProtoMember ( 4 ) ] public int Field4 { get ; set ; }
253+ [ ProtoMember ( 4 ) ] public int Field4 { get ; set ; }
213254
214- [ ProtoMember ( 5 ) ] public int Field5 { get ; set ; }
255+ [ ProtoMember ( 5 ) ] public int Field5 { get ; set ; }
215256
216- [ ProtoMember ( 7 ) ] public string Md5Str { get ; set ; }
217- }
257+ [ ProtoMember ( 7 ) ] public string Md5Str { get ; set ; }
218258}
219259
220260[ ProtoPackable ]
0 commit comments