replay_gamestate *gs =
replay_frame_data( frame, k_replay_framedata_internal_gamestate );
+ gs->current_run_version = world_static.current_run_version;
+
/* permanent block */
memcpy( &gs->rb, &localplayer.rb, sizeof(rigidbody) );
memcpy( &gs->glider_rb, &player_glide.rb, sizeof(rigidbody) );
void *src = replay_frame_data( frame, k_replay_framedata_gamestate );
u16 src_size = frame->data_table[ k_replay_framedata_gamestate ][1];
assert( src_size );
+ world_static.current_run_version = gs->current_run_version;
if(frame->system == k_player_subsystem_walk ){
memcpy( &player_walk.state, src, src_size );
rb_update_matrices( rb );
}
+ localplayer.subsystem = frame->system;
+
/* restore the seperated glider data if we have it */
if( frame->data_table[ k_replay_framedata_glider ][1] ){
- localplayer.subsystem = frame->system;
-
struct replay_glider_data *inf =
replay_frame_data( frame, k_replay_framedata_glider );