water fog material prop; ragdoll float only on drowned
[carveJwlIkooP6JGAAIwe30JlM.git] / player_replay.c
index 15bbd477ca2597c95dd6542b25435fe5dc43395a..7abd993d5659cf370b661004acc70cfaefd96b98 100644 (file)
@@ -442,6 +442,7 @@ void skaterift_record_frame( replay_buffer *replay, int force_gamestate )
          replay_frame_data( frame, k_replay_framedata_internal_gamestate );
 
       gs->current_run_version = world_static.current_run_version;
+      gs->drowned = localplayer.drowned;
 
       /* permanent block */
       memcpy( &gs->rb, &localplayer.rb, sizeof(rigidbody) );
@@ -521,13 +522,14 @@ void skaterift_record_frame( replay_buffer *replay, int force_gamestate )
    localplayer.local_sfx_buffer_count = 0;
 }
 
-static
-void skaterift_restore_frame( replay_frame *frame ){
+static void skaterift_restore_frame( replay_frame *frame )
+{
    replay_gamestate *gs = 
       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];
    world_static.current_run_version = gs->current_run_version;
+   localplayer.drowned = gs->drowned;
 
    if(frame->system == k_player_subsystem_walk ){
       memcpy( &player_walk.state, src, src_size );