-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathheader_animations.py
150 lines (131 loc) · 5.44 KB
/
header_animations.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
arf_blend_in_0 = 0x00000001
arf_blend_in_1 = 0x00000002
arf_blend_in_2 = 0x00000003
arf_blend_in_3 = 0x00000004
arf_blend_in_4 = 0x00000005
arf_blend_in_5 = 0x00000006
arf_blend_in_6 = 0x00000007
arf_blend_in_7 = 0x00000008
arf_blend_in_8 = 0x00000009
arf_blend_in_9 = 0x0000000a
arf_blend_in_10 = 0x0000000b
arf_blend_in_11 = 0x0000000c
arf_blend_in_12 = 0x0000000d
arf_blend_in_13 = 0x0000000e
arf_blend_in_14 = 0x0000000f
arf_blend_in_15 = 0x00000010
arf_blend_in_16 = 0x00000011
arf_blend_in_17 = 0x00000012
arf_blend_in_18 = 0x00000013
arf_blend_in_19 = 0x00000014
arf_blend_in_20 = 0x00000015
arf_blend_in_21 = 0x00000016
arf_blend_in_22 = 0x00000017
arf_blend_in_23 = 0x00000018
arf_blend_in_24 = 0x00000019
arf_blend_in_25 = 0x0000001a
arf_blend_in_26 = 0x0000001b
arf_blend_in_27 = 0x0000001c
arf_blend_in_28 = 0x0000001d
arf_blend_in_29 = 0x0000001e
arf_blend_in_30 = 0x0000001f
arf_blend_in_31 = 0x00000020
arf_blend_in_32 = 0x00000021
arf_blend_in_48 = 0x00000031
arf_blend_in_64 = 0x00000041
arf_blend_in_128 = 0x00000081
arf_blend_in_254 = 0x000000ff
arf_make_walk_sound = 0x00000100
arf_make_custom_sound = 0x00000200
##arf_start_pos_0 = 0x00000100
##arf_end_pos_0 = 0x00000200
##arf_start_pos_0_25 = 0x00000400
##arf_end_pos_0_25 = 0x00000800
##arf_start_pos_0_5 = 0x00001000
##arf_end_pos_0_5 = 0x00002000
##arf_start_pos_0_75 = 0x00004000
##arf_end_pos_0_75 = 0x00008000
##arf_loop_pos_0 = arf_start_pos_0 | arf_end_pos_0
##arf_loop_pos_0_25 = arf_start_pos_0_25 | arf_end_pos_0_25
##arf_loop_pos_0_5 = arf_start_pos_0_5 | arf_end_pos_0_5
##arf_loop_pos_0_75 = arf_start_pos_0_75 | arf_end_pos_0_75
##arf_phase_even = 0x00010000
##arf_phase_odd = 0x00030000
##arf_phase_inverse_even = 0x00050000
##arf_phase_inverse_odd = 0x00070000
arf_two_handed_blade = 0x01000000
arf_lancer = 0x02000000
arf_stick_item_to_left_hand = 0x04000000
arf_cyclic = 0x10000000
arf_use_walk_progress = 0x20000000
arf_use_stand_progress = 0x40000000
arf_use_inv_walk_progress = 0x80000000
##arf_walk = arf_phase_even | arf_cyclic
#-----------------------------------------
amf_priority_mask = 0x00000fff
amf_rider_rot_bow = 0x00001000
amf_rider_rot_throw = 0x00002000
amf_rider_rot_crossbow = 0x00003000
amf_rider_rot_pistol = 0x00004000
amf_rider_rot_overswing = 0x00005000
amf_rider_rot_thrust = 0x00006000
amf_rider_rot_swing_right = 0x00007000
amf_rider_rot_swing_left = 0x00008000
amf_rider_rot_couched_lance = 0x00009000
amf_rider_rot_shield = 0x0000a000
amf_rider_rot_defend = 0x0000b000
amf_start_instantly = 0x00010000
amf_use_cycle_period = 0x00100000
amf_use_weapon_speed = 0x00200000
amf_use_defend_speed = 0x00400000
amf_accurate_body = 0x00800000
amf_client_prediction = 0x01000000
amf_play = 0x02000000
amf_keep = 0x04000000
amf_restart = 0x08000000 # restart animation even if it is the current animation
amf_hide_weapon = 0x10000000
amf_client_owner_prediction = 0x20000000
amf_use_inertia = 0x40000000
amf_continue_to_next = 0x80000000
#-----------------------------------------
acf_synch_with_horse = 0x00000001
acf_align_with_ground = 0x00000002
acf_enforce_lowerbody = 0x00000100
acf_enforce_rightside = 0x00000200
acf_enforce_all = 0x00000400
acf_parallels_for_look_slope = 0x00001000
acf_lock_camera = 0x00002000
acf_displace_position = 0x00004000
acf_ignore_slope = 0x00008000
acf_thrust = 0x00010000
acf_right_cut = 0x00020000
acf_left_cut = 0x00040000
acf_overswing = 0x00080000
acf_rot_vertical_mask = 0x00300000
acf_rot_vertical_bow = 0x00100000
acf_rot_vertical_sword = 0x00200000
acf_anim_length_mask = 0xff000000
acf_anim_length_bits = 24
def acf_anim_length(x):
return (x << acf_anim_length_bits) & acf_anim_length_mask
#------------------------------------------
#### Do not edit these lines
def get_byte(f):
if f == 0.0:
return 0
i = int(f * 255.0)
if (i< 1):
i=1
elif (i > 255):
i = 255
return i
def pack2f(a,b):
ai = get_byte(a)
bi = get_byte(b)
return ((bi << 8) | ai)
def pack4f(a,b,c,d):
ai = get_byte(a)
bi = get_byte(b)
ci = get_byte(c)
di = get_byte(d)
return ((di << 24) | (ci << 16) | (bi << 8) | ai)