update helpers/location to 'frosted' ui
[carveJwlIkooP6JGAAIwe30JlM.git] / player_dead.c
index 5f4ab7260a26cfca7648a0074d01014ecbf10648..72eba265f443c92512051b77b485e41b6e15b030 100644 (file)
@@ -18,8 +18,12 @@ struct player_subsystem_interface player_subsystem_dead = {
    .name = "Dead"
 };
 
-void player__dead_update(void){
+void player__dead_update(void)
+{
    player_ragdoll_iter( &localplayer.ragdoll );
+
+   world_instance *world = world_current_instance();
+   world_water_player_safe( world, 0.2f );
 }
 
 void player__dead_post_update(void){
@@ -157,6 +161,9 @@ void player__dead_im_gui(void)
 
 void player__dead_transition( enum player_die_type type )
 {
+   if( localplayer.subsystem == k_player_subsystem_dead )
+      return;
+
    localplayer.subsystem = k_player_subsystem_dead;
    copy_localplayer_to_ragdoll( &localplayer.ragdoll, type );
 
@@ -171,14 +178,14 @@ void player__dead_transition( enum player_die_type type )
 
    struct gui_helper *h;
    if( (h = gui_new_helper(input_button_list[k_srbind_reset], &str) )){
-      vg_strcat( &str, "rewind" );
+      vg_strcat( &str, "Rewind" );
 
       if( world_static.active_instance == k_world_purpose_hub )
          h->greyed = 1;
    }
 
    if( gui_new_helper(input_button_list[k_srbind_dead_respawn], &str ))
-      vg_strcat( &str, "spawn" );
+      vg_strcat( &str, "Spawn" );
 }
 
 void player__dead_animator_exchange( bitpack_ctx *ctx, void *data )