Цитата:
Сообщение от Konctantin
но все же, как правильно получить поля rotation0, rotation1, rotation2, rotation3 для таблицы gameobject?
|
Значения в
SMSG_UPDATE_OBJECT приходят.
Код:
enum EGameObjectFields
{
...
GAMEOBJECT_PARENTROTATION = OBJECT_END + 0x0004, // Size: 4, Type: FLOAT, Flags: PUBLIC
...
}
Здесь все 4 значения, которые тебе нужны.
Когда-то делал для трупожорки:
Код:
obj0361:
f01_update_type: UPDATETYPE_CREATE_OBJECT (0x2)
f02_guid: 0xF11002FB970009B0
f03_type_id: TYPEID_GAMEOBJECT (0x5)
f04_movement_updateblock:
f010_rotation: 1355697
f01_flags1: UPDATEFLAG_HIGHGUID | UPDATEFLAG_HAS_POSITION | UPDATEFLAG_POSITION | UPDATEFLAG_ROTATION (0x350)
f03_3_1_x: 563.069
f03_3_2_y: 70.785
f03_3_3_z: 395.695
f03_3_4_o: -1.571
f05_4_pos_x: 563.069
f05_4_pos_y: 70.785
f05_4_pos_z: 395.695
f05_GUID_HIPART: 0x970009b0L
f05_p_orient: 0.000
unk_q: 0
f05_values_updateblock:
0000: ('OBJECT_GUID_LOW', 2533362096L)
0001: ('OBJECT_GUID_HIGH', 4044358395L)
0002: ('OBJECT_TYPE', 33)
0003: ('OBJECT_ENTRY', 195479)
0004: ('OBJECT_SCALE_X', 2.1942160129547119)
0008: ('GAMEOBJECT_DISPLAYID', 9041)
0012: ('GAMEOBJECT_PARENTROTATION3', 0.70710670948028564)
0013: ('GAMEOBJECT_PARENTROTATION4', 0.7071068286895752)
0014: ('GAMEOBJECT_DYNAMIC', 4294901762L)
0017: ('GAMEOBJECT_BYTES_1', 4278198017L)
Здесь:
orientation = f03_3_4_o
rotation0 = 0
rotation1 = 0
rotation2 = GAMEOBJECT_PARENTROTATION3
rotation3 = GAMEOBJECT_PARENTROTATION4
-----------------------------------
Если конечно ничего не изменилось....