Как правильно считывать значения хп цп? Красный ХП, Орандж ЦП
18 E0 51 02 10 03 00 00 00 09 00 00 00
E3 12 00 00 0B 00 00 00 61 07 00 00 21 00 00 00
78 09 00 00
Код:
Tип: 0x18 (StatusUpdate)
Pазмер: 33+2
Время прихода: 16:32:09:553
0002 d ObjectID: 268587488 (0x100251E0)
0006 d AttribCount: 3 (0x00000003)
[Начало повторяющегося блока 1/3]
0010 d AttrID: cur_HP ID:9 (0x0009) (0x00000009)
0014 d AttrValue: 4835 (0x000012E3)
[Конец повторяющегося блока 1/3]
[Начало повторяющегося блока 2/3]
0018 d AttrID: cur_MP ID:11 (0x000B) (0x0000000B)
0022 d AttrValue: 1889 (0x00000761)
[Конец повторяющегося блока 2/3]
[Начало повторяющегося блока 3/3]
0026 d AttrID: cur_CP ID:33 (0x0021) (0x00000021)
0030 d AttrValue: 2424 (0x00000978)
[Конец повторяющегося блока 3/3]
delphi Код:
if FromServer and (pck[1]=#$18) then //берем значения из пакета StatusUpdate
begin
CurHP:=ReadD(5);
CurCP:=ReadD(20); // НЕ понимаю как работает реадд
SAY(IntToStr(CurCP));
end;