projects
/
carveJwlIkooP6JGAAIwe30JlM.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
..
[carveJwlIkooP6JGAAIwe30JlM.git]
/
player_ragdoll.h
diff --git
a/player_ragdoll.h
b/player_ragdoll.h
index be7506407561c4573469ef3afa196bc908abf8aa..6193bf73e4f8bd4ca59fed263d1c6654fa05d670 100644
(file)
--- a/
player_ragdoll.h
+++ b/
player_ragdoll.h
@@
-3,15
+3,16
@@
#include "player.h"
#include "player.h"
-
static float k_ragdoll_floatyiness = 4
0.0f,
+
VG_STATIC float k_ragdoll_floatyiness = 2
0.0f,
k_ragdoll_floatydrag = 1.0f;
/*
* Setup ragdoll colliders
*/
k_ragdoll_floatydrag = 1.0f;
/*
* Setup ragdoll colliders
*/
-
static void player_init_ragdoll( mdl_header *src
)
+
VG_STATIC void player_init_ragdoll(void
)
{
struct player_model *mdl = &player.mdl;
{
struct player_model *mdl = &player.mdl;
+ mdl_context *src = &mdl->meta;
if( !mdl->sk.collider_count )
{
if( !mdl->sk.collider_count )
{
@@
-19,7
+20,6
@@
static void player_init_ragdoll( mdl_header *src )
return;
}
return;
}
- mdl->ragdoll = vg_alloc(sizeof(struct ragdoll_part)*mdl->sk.collider_count);
mdl->ragdoll_count = 0;
for( u32 i=0; i<mdl->sk.bone_count; i ++ )
mdl->ragdoll_count = 0;
for( u32 i=0; i<mdl->sk.bone_count; i ++ )
@@
-28,6
+28,9
@@
static void player_init_ragdoll( mdl_header *src )
if( bone->collider )
{
if( bone->collider )
{
+ if( mdl->ragdoll_count > vg_list_size(player.mdl.ragdoll) )
+ vg_fatal_exit_loop( "Playermodel has too many colliders" );
+
struct ragdoll_part *rp = &mdl->ragdoll[ mdl->ragdoll_count ++ ];
rp->bone_id = i;
struct ragdoll_part *rp = &mdl->ragdoll[ mdl->ragdoll_count ++ ];
rp->bone_id = i;
@@
-73,7
+76,7
@@
static void player_init_ragdoll( mdl_header *src )
/*
* Make the player model copy the ragdoll
*/
/*
* Make the player model copy the ragdoll
*/
-
static
void player_model_copy_ragdoll(void)
+
VG_STATIC
void player_model_copy_ragdoll(void)
{
struct player_model *mdl = &player.mdl;
{
struct player_model *mdl = &player.mdl;
@@
-92,7
+95,7
@@
static void player_model_copy_ragdoll(void)
/*
* Make the ragdoll copy the player model
*/
/*
* Make the ragdoll copy the player model
*/
-
static
void player_ragdoll_copy_model( v3f v )
+
VG_STATIC
void player_ragdoll_copy_model( v3f v )
{
struct player_model *mdl = &player.mdl;
{
struct player_model *mdl = &player.mdl;
@@
-117,7
+120,7
@@
static void player_ragdoll_copy_model( v3f v )
/*
* Draw rigidbody colliders for ragdoll
*/
/*
* Draw rigidbody colliders for ragdoll
*/
-
static
void player_debug_ragdoll(void)
+
VG_STATIC
void player_debug_ragdoll(void)
{
struct player_model *mdl = &player.mdl;
{
struct player_model *mdl = &player.mdl;
@@
-128,7
+131,7
@@
static void player_debug_ragdoll(void)
/*
* Ragdoll physics step
*/
/*
* Ragdoll physics step
*/
-
static
void player_ragdoll_iter(void)
+
VG_STATIC
void player_ragdoll_iter(void)
{
struct player_model *mdl = &player.mdl;
rb_solver_reset();
{
struct player_model *mdl = &player.mdl;
rb_solver_reset();