#ifndef PLAYER_DEAD_H
#define PLAYER_DEAD_H
+#include "player.h"
#include "player_api.h"
-struct player_dead
-{
+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,
- player_animation *anim );
+ 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 */