X-Git-Url: https://harrygodden.com/git/?a=blobdiff_plain;f=player_dead.h;h=19d6e5900c3eaa96cd664cf39d0746edce9e6a06;hb=38514b4ba03412ad51df02dc2ba345e1be41005d;hp=43f7574b738529da34a8a2959c0654e4be52d3c1;hpb=09fc72b08113fa157a3abb2ded6086babedd10cf;p=carveJwlIkooP6JGAAIwe30JlM.git diff --git a/player_dead.h b/player_dead.h index 43f7574..19d6e59 100644 --- a/player_dead.h +++ b/player_dead.h @@ -1,18 +1,44 @@ #ifndef PLAYER_DEAD_H #define PLAYER_DEAD_H +#include "player.h" #include "player_api.h" struct player_dead{ v3f co_lpf, v_lpf, w_lpf; -}; -VG_STATIC void player__dead_update ( player_instance *player ); -VG_STATIC void player__dead_animate ( player_instance *player ); -VG_STATIC void player__dead_pose ( player_instance *player ); + struct player_dead_animator{ + struct { + v3f co; + v4f q; + } + transforms[ 32 ]; + } + animator; +} +static player_dead; + +static void player__dead_update (void); +static void player__dead_post_update (void); +static void player__dead_animate (void); +static void player__dead_pose (void *animator, player_pose *pose); +static void player__dead_post_animate(void); +static void player__dead_im_gui (void); +static void player__dead_transition (void); +static void player__dead_animator_exchange( bitpack_ctx *ctx, void *data ); -VG_STATIC void player__dead_post_animate( player_instance *player ); -VG_STATIC void player__dead_im_gui ( player_instance *player ); -VG_STATIC void player__dead_transition ( player_instance *player ); +struct player_subsystem_interface static player_subsystem_dead = { + .update = player__dead_update, + .post_update = player__dead_post_update, + .animate = player__dead_animate, + .pose = player__dead_pose, + .post_animate = player__dead_post_animate, + .im_gui = player__dead_im_gui, + + .animator_data = &player_dead.animator, + .animator_size = sizeof(player_dead.animator), + .network_animator_exchange = player__dead_animator_exchange, + .name = "Dead" +}; #endif /* PLAYER_DEAD_H */