inf files
[carveJwlIkooP6JGAAIwe30JlM.git] / player_walk.c
index dea80e567e671cfaf4bb8b921aced0d055f6074d..b37095da28ded733db41f629dfad1a3d2a61cf45 100644 (file)
@@ -88,7 +88,7 @@ VG_STATIC void player_walk_drop_in_to_skate( player_instance *player )
    v3_muladds( player->rb.co, player->rb.to_world[1], 1.0f, s->state.cog );
    v3_copy( init_velocity, s->state.cog_v );
    v3_copy( init_velocity, player->rb.v );
-   v3_copy( init_velocity, player->cam_velocity_smooth );
+   v3_copy( init_velocity, player->cam_control.cam_velocity_smooth );
    v3_copy( (v3f){1.0f,0.0f,0.0f}, s->state.trick_euler );
 }
 
@@ -751,7 +751,12 @@ VG_STATIC void player__walk_animate( player_instance *player,
    skeleton_lerp_pose( sk, apose, bpose, w->blend_fly, apose );
 
    /* Create transform */
-   rb_extrapolate( &player->rb, dest->root_co, dest->root_q );
+   if( !player->immobile )
+      rb_extrapolate( &player->rb, dest->root_co, dest->root_q );
+   else{
+      v3_copy( player->rb.co, dest->root_co );
+      v4_copy( player->rb.q,  dest->root_q );
+   }
 
    float walk_yaw = player_get_heading_yaw( player );