variable length exchange
authorhgn <hgodden00@gmail.com>
Wed, 4 Oct 2023 05:23:30 +0000 (06:23 +0100)
committerhgn <hgodden00@gmail.com>
Wed, 4 Oct 2023 05:23:30 +0000 (06:23 +0100)
player_walk.c

index 1306e2a012258fbbb0b8169fea8df21b4ec09720..6400d304c51debcdc964a605c784164544e383de 100644 (file)
@@ -972,11 +972,11 @@ static void player__walk_animator_exchange( bitpack_ctx *ctx, void *data ){
    bitpack_qf32( ctx, 8, 0.0f, 1.0f, &animator->walk );
    bitpack_qf32( ctx, 16, 0.0f, 120.0f, &animator->walk_timer );
 
-   /* we can do variable length exchanges now? */
-
-   bitpack_bytes( ctx, sizeof(animator->foot_anchor), animator->foot_anchor );
    bitpack_bytes( ctx, 8, &animator->outro_type );
-   bitpack_qf32( ctx, 8, 0.0f, 1.0f, &animator->outro_t );
-   bitpack_qf32( ctx, 8, 0.0f, 1.0f, &animator->commit_t );
+   if( animator->outro_type ){
+      bitpack_bytes(ctx, sizeof(animator->foot_anchor), animator->foot_anchor );
+      bitpack_qf32( ctx, 8, 0.0f, 1.0f, &animator->outro_t );
+      bitpack_qf32( ctx, 8, 0.0f, 1.0f, &animator->commit_t );
+   }
 }
 #endif /* PLAYER_DEVICE_WALK_H */