build system revision
[carveJwlIkooP6JGAAIwe30JlM.git] / player_replay.c
index f5a2ab9327ab03c9b7c0705c89596316d758d4ba..b0df4f27183648d87af07d9ffe9c49936db43faa 100644 (file)
@@ -138,7 +138,6 @@ static void replay_emit_frame_sounds( replay_frame *frame ){
 
 static int replay_seek( replay_buffer *replay, f64 t ){
    if( !replay->head ) return 0;
-   assert( replay->tail );
 
    if( t < replay->tail->time ) t = replay->tail->time;
    if( t > replay->head->time ) t = replay->head->time;
@@ -307,6 +306,8 @@ static void skaterift_record_frame( replay_buffer *replay,
       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) );
@@ -391,7 +392,7 @@ void skaterift_restore_frame( replay_frame *frame ){
       replay_frame_data( frame, k_replay_framedata_internal_gamestate );
    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 );