X-Git-Url: https://harrygodden.com/git/?a=blobdiff_plain;f=player_skate.c;h=ac1423962e8f52113ceaed2bc788219e6fbe2371;hb=da1a0abc0c32b4283746949ba9a135a7d3c0b82c;hp=d56fc982787b323111af1849b44ce185362ccb6a;hpb=3e59ac7081ea3005060b56449bc77c8f73cdc6b6;p=carveJwlIkooP6JGAAIwe30JlM.git diff --git a/player_skate.c b/player_skate.c index d56fc98..ac14239 100644 --- a/player_skate.c +++ b/player_skate.c @@ -2781,7 +2781,7 @@ VG_STATIC void player__skate_animate( player_instance *player ){ if( fabsf(lean1)>fabsf(lean2) ) lean = lean1; else lean = lean2; - if( ((int)roundf(animator->board_euler[0])) % 2 ) lean = -lean; + if( ((int)roundf(animator->board_euler[0]/VG_PIf)) % 2 ) lean = -lean; lean = vg_clampf( lean, -1.0f, 1.0f ); animator->board_lean = vg_lerpf(animator->board_lean, lean, vg.time_delta*18.0f); @@ -2824,6 +2824,10 @@ VG_STATIC void player__skate_animate( player_instance *player ){ /* steer */ joystick_state( k_srjoystick_steer, animator->steer ); + animator->airdir = vg_lerpf( animator->airdir, -animator->steer[0], + 2.4f*vg.time_delta ); + + /* flip angle */ if( (s->state.activity <= k_skate_activity_air_to_grind) && (fabsf(s->state.flip_rate) > 0.01f) ){ @@ -2892,7 +2896,6 @@ VG_STATIC void player__skate_animate( player_instance *player ){ vg_line_arrow( player->rb.co, p1, 0.25f, VG__PINK ); vg_line_arrow( player->rb.co, p2, 0.25f, VG__PINK ); - } else q_identity( animator->qfixuptotal ); q_identity( animator->qfixuptotal ); @@ -2966,10 +2969,6 @@ VG_STATIC void player__skate_pose( player_instance *player, player_pose *pose ){ mdl_keyframe air_pose[32]; { - float target = -animator->steer[1]; - animator->airdir = vg_lerpf( animator->airdir, target, - 2.4f*vg.time_delta ); - float air_frame = (animator->airdir*0.5f+0.5f) * (15.0f/30.0f); skeleton_sample_anim( sk, s->anim_air, air_frame, apose );