plish
[carveJwlIkooP6JGAAIwe30JlM.git] / player_walk.h
index f1efabc52492cc227b9c61df01c9ab152617de6b..3d6f3adf515d80698c0b3514e21310f617f8bea5 100644 (file)
@@ -9,19 +9,37 @@ struct player_walk
 
    struct
    {
+#if 0
       v3f angles;
       float heading_angle;
+#endif
 
       v3f prev_pos;
+      v3f drop_in_target,
+          drop_in_foot_anchor,
+          drop_in_start,
+          drop_in_normal;
+
+      float drop_in_start_angle,
+            drop_in_angle;
 
       enum walk_activity
       {
          k_walk_activity_air,
          k_walk_activity_ground,
-         k_walk_activity_sleep
+         k_walk_activity_sleep,
+         k_walk_activity_immobile
       }
       activity;
 
+      enum walk_outro
+      {
+         k_walk_outro_none,
+         k_walk_outro_jump_to_air,
+         k_walk_outro_drop_in
+      }
+      outro_type;
+
       struct skeleton_anim *outro_anim;
       double outro_start_time;
    }
@@ -30,7 +48,7 @@ struct player_walk
 
    enum mdl_surface_prop surface;
    struct skeleton_anim *anim_walk, *anim_run, *anim_idle, *anim_jump,
-                        *anim_jump_to_air;
+                        *anim_jump_to_air, *anim_drop_in;
 
    float blend_fly,
          blend_run,