m4x3_mulv( gate->transport, launch_co, launch_co );
m3x3_mul( gate->transport, basis, basis );
- if( gate->type == k_gate_type_nonlocel ){
- trace_world = &world_static.worlds[ gate->target ];
+ if( gate->flags & k_ent_gate_nonlocal ){
+ trace_world = &world_static.instances[ gate->target ];
}
}
}
return;
}
- enum trick_type trick = k_trick_type_none;
- if( (s->state.activity <= k_skate_activity_air_to_grind) &&
- (trick = player_skate_trick_input( player )) )
- {
- if( (vg.time - s->state.jump_time) < 0.1f ){
- v3_zero( s->state.trick_vel );
- s->state.trick_time = 0.0f;
-
- if( trick == k_trick_type_kickflip ){
- s->state.trick_vel[0] = 3.0f;
- }
- else if( trick == k_trick_type_shuvit ){
- s->state.trick_vel[2] = 3.0f;
- }
- else if( trick == k_trick_type_treflip ){
- s->state.trick_vel[0] = 2.0f;
- s->state.trick_vel[2] = 2.0f;
+ if( s->state.activity <= k_skate_activity_air_to_grind ){
+ enum trick_type trick = k_trick_type_none;
+ if( (trick = player_skate_trick_input( player )) ){
+ if( (vg.time - s->state.jump_time) < 0.1f ){
+ v3_zero( s->state.trick_vel );
+ s->state.trick_time = 0.0f;
+
+ if( trick == k_trick_type_kickflip ){
+ s->state.trick_vel[0] = 3.0f;
+ }
+ else if( trick == k_trick_type_shuvit ){
+ s->state.trick_vel[2] = 3.0f;
+ }
+ else if( trick == k_trick_type_treflip ){
+ s->state.trick_vel[0] = 2.0f;
+ s->state.trick_vel[2] = 2.0f;
+ }
+ s->state.trick_type = trick;
}
- s->state.trick_type = trick;
}
}
+ else
+ s->state.trick_type = k_trick_type_none;
}
VG_STATIC void player__skate_post_update( player_instance *player ){
if( fabsf(lean1)>fabsf(lean2) ) lean = lean1;
else lean = lean2;
- if( ((int)roundf(animator->board_euler[0])) % 2 ) lean = -lean;
+ if( ((int)roundf(animator->board_euler[0]/VG_PIf)) % 2 ) lean = -lean;
lean = vg_clampf( lean, -1.0f, 1.0f );
animator->board_lean =
vg_lerpf(animator->board_lean, lean, vg.time_delta*18.0f);