m3x3_mulv( player->basis, forward_dir, forward_dir );
m3x3_mulv( player->basis, right_dir, right_dir );
- w->move_speed = v2_length( srinput.joy_steer );
+ v2f steer;
+ joystick_state( k_srjoystick_steer, steer );
+
+ w->move_speed = v2_length( steer );
world_instance *world = get_active_world();
/*
*/
float accel_speed = 0.0f, nominal_speed = 0.0f;
v3f movedir;
- v3_muls( right_dir, srinput.joy_steer[0], movedir );
- v3_muladds( movedir, forward_dir, srinput.joy_steer[1], movedir );
+
+ v3_muls( right_dir, steer[0], movedir );
+ v3_muladds( movedir, forward_dir, steer[1], movedir );
if( w->state.activity == k_walk_activity_ground ){
v3_normalize( surface_avg );
v3f tx, ty;
rb_tangent_basis( surface_avg, tx, ty );
- if( v2_length2(srinput.joy_steer) > 0.001f ){
+ if( v2_length2(steer) > 0.001f ){
/* clip movement to the surface */
float d = v3_dot(surface_avg,movedir);
v3_muladds( movedir, surface_avg, -d, movedir );
nominal_speed = k_airspeed;
}
- if( v2_length2( srinput.joy_steer ) > 0.001f ){
+ if( v2_length2( steer ) > 0.001f ){
player_accelerate( player->rb.v, movedir, nominal_speed, accel_speed );
v3_normalize( movedir );
}