better lateflip filtering
[carveJwlIkooP6JGAAIwe30JlM.git] / player_skate.c
index 7f4bc37f741991deb72b99cca2495cfe0a2731af..72055cf7ffb6a54dd9eb435ca0c581cd2c2236c3 100644 (file)
@@ -957,6 +957,7 @@ static void skate_apply_jump_model(void){
          q_mulv( qtilt, jumpdir, jumpdir );
       }
       state->surface_cooldown = 10;
+      state->trick_input_collect = 0.0f;
       
       float force = k_jump_force*state->jump_charge;
       v3_muladds( localplayer.rb.v, jumpdir, force, localplayer.rb.v );
@@ -1100,9 +1101,14 @@ static void player__skate_pre_update(void){
       return;
    }
 
+   enum trick_type trick = player_skate_trick_input();
+   if( trick )
+      state->trick_input_collect += vg.time_frame_delta;
+   else 
+      state->trick_input_collect = 0.0f;
+
    if( state->activity <= k_skate_activity_air_to_grind ){
-      enum trick_type trick = k_trick_type_none;
-      if( (trick = player_skate_trick_input()) ){
+      if( trick && (state->trick_input_collect < 0.1f) ){
          if( state->trick_time == 0.0f ){
             audio_lock();
             audio_oneshot_3d( &audio_flips[vg_randu32(&vg.rand)%4],