X-Git-Url: https://harrygodden.com/git/?a=blobdiff_plain;f=player_skate.h;h=1429ff04a04c7a16c7b17c5a9c12ac7b4d045060;hb=1e62339d8fb24596eed19b75bde2ef452bd37938;hp=464ef50d9326a81264d94a565be1fb1a03d08918;hpb=f99902f513b0ad606437bf32de47405dd4ea5f98;p=carveJwlIkooP6JGAAIwe30JlM.git diff --git a/player_skate.h b/player_skate.h index 464ef50..1429ff0 100644 --- a/player_skate.h +++ b/player_skate.h @@ -8,7 +8,7 @@ typedef struct jump_info jump_info; struct player_skate{ - struct{ + struct player_skate_state{ enum skate_activity{ k_skate_activity_air, k_skate_activity_air_to_grind, @@ -37,6 +37,13 @@ struct player_skate{ v3f trick_vel, /* measured in units of TAU/s */ trick_euler; /* measured in units of TAU */ float trick_time; + enum trick_type{ + k_trick_type_none, + k_trick_type_kickflip, + k_trick_type_shuvit, + k_trick_type_treflip + } + trick_type; float gravity_bias; v3f up_dir; @@ -89,6 +96,7 @@ struct player_skate{ blend_jump, blend_airdir, blend_weight, + blend_trick_foot, subslap; /* vectors representing the direction of the axels in localspace */ @@ -184,6 +192,7 @@ VG_STATIC float k_cog_damp = 0.02f, k_cog_mass_ratio = 0.9f, + k_mmthrow_steer = 1.0f, k_mmthrow_scale = 6.0f, k_mmcollect_lat = 2.0f, k_mmcollect_vert = 0.0f, @@ -244,6 +253,7 @@ VG_STATIC void player__skate_register(void) VG_VAR_F32( k_mmcollect_lat, flags=VG_VAR_CHEAT ); VG_VAR_F32( k_mmcollect_vert, flags=VG_VAR_CHEAT ); VG_VAR_F32( k_mmdecay, flags=VG_VAR_CHEAT ); + VG_VAR_F32( k_mmthrow_steer, flags=VG_VAR_CHEAT ); } VG_STATIC void player__skate_bind ( player_instance *player );