X-Git-Url: https://harrygodden.com/git/?a=blobdiff_plain;f=player_walk.h;h=b1213547c3d469c857a67a9a0417025bc3af1e53;hb=5f6a4f9df6c8accc89f1920bfe9ace3cbac4c4b6;hp=95ce2a0414e55ee7976e684933ff97575bac40c8;hpb=a109f126d8adab622e38fbcc2d4281e75255246a;p=carveJwlIkooP6JGAAIwe30JlM.git diff --git a/player_walk.h b/player_walk.h index 95ce2a0..b121354 100644 --- a/player_walk.h +++ b/player_walk.h @@ -1,13 +1,12 @@ -#ifndef PLAYER_WALK_H -#define PLAYER_WALK_H - +#pragma once #include "player.h" #include "player_api.h" #include "vg/vg_rigidbody.h" #define PLAYER_JUMP_EPSILON 0.1 /* 100ms jump allowance */ -struct player_walk{ +struct player_walk +{ rb_capsule collider; struct player_walk_state{ @@ -68,7 +67,8 @@ struct player_walk{ } animator; } -static player_walk; +extern player_walk; +extern struct player_subsystem_interface player_subsystem_walk; enum player_walk_soundeffect { k_player_walk_soundeffect_splash @@ -97,34 +97,15 @@ static void player__walk_register(void){ VG_VAR_F32( k_walk_accel, flags=VG_VAR_CHEAT ); } -static void player__walk_pre_update (void); -static void player__walk_update (void); -static void player__walk_post_update (void); -static void player__walk_animate (void); -static void player__walk_pose (void *animator, player_pose *pose); -static void player__walk_post_animate(void); -static void player__walk_im_gui (void); -static void player__walk_bind (void); -static void player__walk_reset (void); -static void player__walk_restore (void); -static void player__walk_animator_exchange( bitpack_ctx *ctx, void *data ); -static void player__walk_transition( bool grounded, f32 board_yaw ); - -struct player_subsystem_interface static player_subsystem_walk = { - .system_register = player__walk_register, - .bind = player__walk_bind, - .pre_update = player__walk_pre_update, - .update = player__walk_update, - .post_update = player__walk_post_update, - .im_gui = player__walk_im_gui, - .animate = player__walk_animate, - .post_animate = player__walk_post_animate, - .pose = player__walk_pose, - .network_animator_exchange = player__walk_animator_exchange, - - .animator_data = &player_walk.animator, - .animator_size = sizeof(player_walk.animator), - .name = "Walk" -}; - -#endif /* PLAYER_WALK_H */ +void player__walk_pre_update (void); +void player__walk_update (void); +void player__walk_post_update (void); +void player__walk_animate (void); +void player__walk_pose (void *animator, player_pose *pose); +void player__walk_post_animate(void); +void player__walk_im_gui (void); +void player__walk_bind (void); +void player__walk_reset (void); +void player__walk_restore (void); +void player__walk_animator_exchange( bitpack_ctx *ctx, void *data ); +void player__walk_transition( bool grounded, f32 board_yaw );