@@ -181,7 +181,7 @@ dmodels_animate:
181181dmodels_move_to_frame :
182182 type : task
183183 debug : false
184- definitions : root_entity|animation|timespot
184+ definitions : root_entity|animation|timespot|delay_pose
185185 script :
186186 - define model_data <server.flag[dmodels_data.model_<[root_entity] .flag[dmodel_model_id] > ] >
187187 - define animation_data <server.flag[dmodels_data.animations_<[root_entity] .flag[dmodel_model_id] > .<[animation] > ] >
@@ -259,8 +259,12 @@ dmodels_move_to_frame:
259259 - adjust <[ent] > reset_client_location
260260 - define radian_rot <[new_rot] .xyz.split[,] >
261261 - define pose <[radian_rot] .get[1] > ,<[radian_rot] .get[2] > ,<[radian_rot] .get[3] >
262- - adjust <[ent] > armor_pose:[head=<[pose] > ]
263- - adjust <[ent] > send_update_packets
262+ - if <[delay_pose] > :
263+ - adjust <[ent] > armor_pose:[head=<[ent] .flag[dmodels_next_pose] .if_null[<[ent] .flag[dmodel_def_pose] > ] > ]
264+ - flag <[ent] > dmodels_next_pose:<[pose] >
265+ - else :
266+ - adjust <[ent] > armor_pose:[head=<[pose] > ]
267+ - adjust <[ent] > send_update_packets
264268
265269dmodels_rot_proc :
266270 type : procedure
@@ -321,5 +325,5 @@ dmodels_animator:
321325 - foreach <server.flag[dmodels_anim_active] > key:root_id:
322326 - define root <entity[<[root_id] > ] ||null>
323327 - if <[root] .is_spawned||false> :
324- - run dmodels_move_to_frame def.root_entity:<[root] > def.animation:<[root] .flag[dmodels_animation_id] > def.timespot:<[root] .flag[dmodels_anim_time] .div[20] >
328+ - run dmodels_move_to_frame def.root_entity:<[root] > def.animation:<[root] .flag[dmodels_animation_id] > def.timespot:<[root] .flag[dmodels_anim_time] .div[20] > def.delay_pose:true
325329 - flag <[root] > dmodels_anim_time:++
0 commit comments