projects
/
carveJwlIkooP6JGAAIwe30JlM.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
ent_challenge extra features
[carveJwlIkooP6JGAAIwe30JlM.git]
/
player_walk.c
diff --git
a/player_walk.c
b/player_walk.c
index 2c038431e175825427749f2f37f56c5acf0f56c8..87c2246fe6960a662852f3210d95abfc8e1c062d 100644
(file)
--- a/
player_walk.c
+++ b/
player_walk.c
@@
-660,12
+660,12
@@
VG_STATIC void player__walk_post_update( player_instance *player ){
int walk_phase = 0;
int walk_phase = 0;
- if( vg_fractf(w->walk_timer) > 0.5f )
+ if( vg_fractf(w->
state.
walk_timer) > 0.5f )
walk_phase = 1;
else
walk_phase = 0;
walk_phase = 1;
else
walk_phase = 0;
- if( (w->step_phase != walk_phase) &&
+ if( (w->st
ate.st
ep_phase != walk_phase) &&
(w->state.activity == k_walk_activity_ground ) )
{
audio_lock();
(w->state.activity == k_walk_activity_ground ) )
{
audio_lock();
@@
-692,7
+692,7
@@
VG_STATIC void player__walk_post_update( player_instance *player ){
audio_unlock();
}
audio_unlock();
}
- w->step_phase = walk_phase;
+ w->st
ate.st
ep_phase = walk_phase;
}
VG_STATIC void player__walk_animate( player_instance *player ){
}
VG_STATIC void player__walk_animate( player_instance *player ){
@@
-720,11
+720,11
@@
VG_STATIC void player__walk_animate( player_instance *player ){
run_norm = 30.0f/(float)w->anim_run->length,
walk_adv = vg_lerpf( walk_norm, run_norm, w->move_speed );
run_norm = 30.0f/(float)w->anim_run->length,
walk_adv = vg_lerpf( walk_norm, run_norm, w->move_speed );
- w->walk_timer += walk_adv * vg.time_delta;
- }
- else{
- w->walk_timer = 0.0f;
+ w->state.walk_timer += walk_adv * vg.time_delta;
}
}
+ else
+ w->state.walk_timer = 0.0f;
+ animator->walk_timer = w->state.walk_timer;
if( !player->immobile )
rb_extrapolate( &player->rb, animator->root_co, animator->root_q );
if( !player->immobile )
rb_extrapolate( &player->rb, animator->root_co, animator->root_q );
@@
-787,19
+787,20
@@
VG_STATIC void player__walk_animate( player_instance *player ){
q_normalize( animator->root_q );
}
q_normalize( animator->root_q );
}
-VG_STATIC void player__walk_pose( player_instance *player ){
+VG_STATIC void player__walk_pose( player_instance *player
, player_pose *pose
){
struct player_walk *w = &player->_walk;
struct player_walk_animator *animator = &w->animator;
struct skeleton *sk = &player->playeravatar->sk;
struct player_avatar *av = player->playeravatar;
struct player_walk *w = &player->_walk;
struct player_walk_animator *animator = &w->animator;
struct skeleton *sk = &player->playeravatar->sk;
struct player_avatar *av = player->playeravatar;
- player_pose *pose = &player->pose;
v3_copy( animator->root_co, pose->root_co );
v4_copy( animator->root_q, pose->root_q );
v3_copy( animator->root_co, pose->root_co );
v4_copy( animator->root_q, pose->root_q );
+ pose->board.lean = 0.0f;
+ pose->type = k_player_pose_type_ik;
float walk_norm = (float)w->anim_walk->length/30.0f,
run_norm = (float)w->anim_run->length/30.0f,
float walk_norm = (float)w->anim_walk->length/30.0f,
run_norm = (float)w->anim_run->length/30.0f,
- t =
w
->walk_timer,
+ t =
animator
->walk_timer,
l = vg_clampf( animator->run*15.0f, 0.0f, 1.0f ),
idle_walk = vg_clampf( (animator->run-0.1f)/(1.0f-0.1f), 0.0f, 1.0f );
l = vg_clampf( animator->run*15.0f, 0.0f, 1.0f ),
idle_walk = vg_clampf( (animator->run-0.1f)/(1.0f-0.1f), 0.0f, 1.0f );
@@
-914,9
+915,15
@@
VG_STATIC void player__walk_bind( player_instance *player ){
w->anim_intro = skeleton_get_anim( sk, "into_skate" );
}
w->anim_intro = skeleton_get_anim( sk, "into_skate" );
}
-VG_STATIC void player__walk_transition( player_instance *player
, v3f angles
){
+VG_STATIC void player__walk_transition( player_instance *player ){
struct player_walk *w = &player->_walk;
w->state.activity = k_walk_activity_air;
struct player_walk *w = &player->_walk;
w->state.activity = k_walk_activity_air;
+ w->state.outro_type = k_walk_outro_none;
+ w->state.outro_start_time = 0.0;
+ w->state.jump_queued = 0;
+ w->state.jump_input_time = 0.0;
+ w->state.walk_timer = 0.0f;
+ w->state.step_phase = 0;
v3f fwd = { 0.0f, 0.0f, 1.0f };
q_mulv( player->rb.q, fwd, fwd );
v3f fwd = { 0.0f, 0.0f, 1.0f };
q_mulv( player->rb.q, fwd, fwd );