shader vacuuming
[carveJwlIkooP6JGAAIwe30JlM.git] / player_walk.h
index f1efabc52492cc227b9c61df01c9ab152617de6b..beb87d25e476cab9f0595fd2e75f4e1d92234761 100644 (file)
@@ -9,19 +9,34 @@ struct player_walk
 
    struct
    {
-      v3f angles;
-      float heading_angle;
-
       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,
+         k_walk_activity_lockedmove
       }
       activity;
 
+      enum walk_outro
+      {
+         k_walk_outro_none,
+         k_walk_outro_jump_to_air,
+         k_walk_outro_drop_in,
+         k_walk_outro_regular
+      }
+      outro_type;
+
       struct skeleton_anim *outro_anim;
       double outro_start_time;
    }
@@ -30,7 +45,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, *anim_intro;
 
    float blend_fly,
          blend_run,