projects
/
carveJwlIkooP6JGAAIwe30JlM.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
allow replays to pass through rifts
[carveJwlIkooP6JGAAIwe30JlM.git]
/
player_ragdoll.h
diff --git
a/player_ragdoll.h
b/player_ragdoll.h
index 2ea5727fe1e94b3fbe17348edd057cf7a177b14d..6f5a33137a8e5a48ef53b21da64d86b1a21555d7 100644
(file)
--- a/
player_ragdoll.h
+++ b/
player_ragdoll.h
@@
-33,18
+33,31
@@
struct player_ragdoll{
rb_constr_swingtwist cone_constraints[32];
u32 cone_constraints_count;
rb_constr_swingtwist cone_constraints[32];
u32 cone_constraints_count;
+ /* TODO: Fix duplicated data */
+ u32 constraint_associations[32][2];
int shoes[2];
};
static float k_ragdoll_floatyiness = 20.0f,
k_ragdoll_floatydrag = 1.0f,
int shoes[2];
};
static float k_ragdoll_floatyiness = 20.0f,
k_ragdoll_floatydrag = 1.0f,
- k_ragdoll_limit_scale = 1.0f;
+ k_ragdoll_limit_scale = 1.0f,
+ k_ragdoll_spring = 127.0f,
+ k_ragdoll_dampening = 15.0f,
+ k_ragdoll_correction = 0.5f,
+ k_ragdoll_angular_drag = 0.08f,
+ k_ragdoll_active_threshold = 5.0f;
static int k_ragdoll_div = 1,
ragdoll_frame = 0,
k_ragdoll_debug_collider = 1,
k_ragdoll_debug_constraints = 0;
static int k_ragdoll_div = 1,
ragdoll_frame = 0,
k_ragdoll_debug_collider = 1,
k_ragdoll_debug_constraints = 0;
+enum player_die_type {
+ k_player_die_type_generic,
+ k_player_die_type_head,
+ k_player_die_type_feet
+};
+
static void player_ragdoll_init(void);
static void player_init_ragdoll_bone_collider( struct skeleton_bone *bone,
struct ragdoll_part *rp );
static void player_ragdoll_init(void);
static void player_init_ragdoll_bone_collider( struct skeleton_bone *bone,
struct ragdoll_part *rp );
@@
-52,7
+65,9
@@
static u32 ragdoll_bone_parent( struct player_ragdoll *rd, u32 bone_id );
static void setup_ragdoll_from_skeleton( struct skeleton *sk,
struct player_ragdoll *rd );
static void copy_ragdoll_pose_to_localplayer( struct player_ragdoll *rd );
static void setup_ragdoll_from_skeleton( struct skeleton *sk,
struct player_ragdoll *rd );
static void copy_ragdoll_pose_to_localplayer( struct player_ragdoll *rd );
-static void copy_localplayer_to_ragdoll( struct player_ragdoll *rd, v3f v );
+static void copy_localplayer_to_ragdoll( struct player_ragdoll *rd,
+ enum player_die_type type );
+
static void player_debug_ragdoll(void);
static void player_ragdoll_iter( struct player_ragdoll *rd );
static void player_debug_ragdoll(void);
static void player_ragdoll_iter( struct player_ragdoll *rd );