add logs for fall off reason
authorhgn <hgodden00@gmail.com>
Wed, 31 Jan 2024 06:27:06 +0000 (06:27 +0000)
committerhgn <hgodden00@gmail.com>
Wed, 31 Jan 2024 06:27:06 +0000 (06:27 +0000)
player_glide.c
player_glide.h
player_skate.c
player_walk.c
skaterift.c

index 27d16ddee0b1a6fe70e31047b21d60e43b9b6499..7725cf023a12948c9666246ede6c7afefecd25e4 100644 (file)
@@ -208,6 +208,7 @@ static void player_glide_update(void){
    joystick_state( k_srjoystick_steer, steer );
 
    if( glider_physics( steer ) ){
+      vg_info( "player fell off due to glider hitting ground\n" );
       player__dead_transition( k_player_die_type_generic );
       localplayer.glider_orphan = 1;
    }
@@ -255,6 +256,13 @@ static void player_glide_post_animate(void){
    localplayer.cam_dist = 2.0f + v3_length( localplayer.rb.v )*0.2f;
 }
 
+static void player_glide_animator_exchange( bitpack_ctx *ctx, void *data ){
+   struct player_glide_animator *animator = data;
+
+   bitpack_qv3f( ctx, 24, -1024.0f, 1024.0f, animator->root_co );
+   bitpack_qquat( ctx, animator->root_q );
+}
+
 static void player_glide_im_gui(void){
    player__debugtext( 1, "Nothing here" );
    player__debugtext( 1, " lift: %.2f %.2f %.2f", 
index 2e2d1eb288d67ae52f5999d47971263011ef169c..9889eb4f35f322ed13d669fdb1c5cc339ddba694 100644 (file)
@@ -90,6 +90,7 @@ static void player_glide_im_gui(void);
 static void player_glide_bind(void);
 static void player_glide_transition(void);
 static bool glider_physics( v2f steer );
+static void player_glide_animator_exchange( bitpack_ctx *ctx, void *data );
 
 struct player_subsystem_interface static player_subsystem_glide = {
    .pre_update = player_glide_pre_update,
@@ -98,6 +99,7 @@ struct player_subsystem_interface static player_subsystem_glide = {
    .animate = player_glide_animate,
    .pose = player_glide_pose,
    .post_animate = player_glide_post_animate,
+   .network_animator_exchange = player_glide_animator_exchange,
    .im_gui = player_glide_im_gui,
    .bind = player_glide_bind,
 
index d9b9c04626e50907e60884495a70484203f6c19a..cbf43ec36fc57837463f29be2d6ffd43195248f3 100644 (file)
@@ -765,6 +765,7 @@ static void skate_apply_trick_model(void){
       if( (v3_length2(state->trick_vel) >= 0.0001f ) &&
           state->trick_time > 0.2f)
       {
+         vg_info( "player fell off due to lack of skill\n" );
          player__dead_transition( k_player_die_type_feet );
       }
 
@@ -2208,6 +2209,7 @@ static void player__skate_update(void){
 
    if( world->water.enabled ){
       if( localplayer.rb.co[1]+0.25f < world->water.height ){
+         vg_info( "player fell off due to being in water\n" );
          player__networked_sfx( k_player_subsystem_walk, 32, 
                                 k_player_walk_soundeffect_splash,
                                 localplayer.rb.co, 1.0f );
@@ -2491,6 +2493,7 @@ begin_collision:;
       v3_lerp( start_co, localplayer.rb.co, t, localplayer.rb.co );
       rb_update_matrices( &localplayer.rb );
 
+      vg_info( "player fell of due to hitting head\n" );
       player__dead_transition( k_player_die_type_head );
       return;
    }
@@ -2656,6 +2659,7 @@ begin_collision:;
    f32 nforce = v3_length(normal_total);
    if( nforce > 4.0f ){
       if( nforce > 17.6f ){
+         vg_info( "player fell off due to hitting ground too hard\n" );
          v3_muladds( localplayer.rb.v, normal_total, -1.0f, localplayer.rb.v );
          player__dead_transition( k_player_die_type_feet );
          return;
index cd5e52c7a3f9ddd9d1950820e039c8127cbfb4fa..560d61a69a32fec28bf85268523f01e8825e1323 100644 (file)
@@ -452,6 +452,7 @@ static void player_walk_update_generic(void){
          player__networked_sfx( k_player_subsystem_walk, 32, 
                                 k_player_walk_soundeffect_splash,
                                 localplayer.rb.co, 1.0f );
+         vg_info( "player fell of due to walking into walker\n" );
          player__dead_transition( k_player_die_type_generic );
          return;
       }
index ae34d5b0eee487b654b9a93391773b39becab5d1..bc0bd3c79f0b5623c5b36169eb5d337280bb0964 100644 (file)
@@ -14,7 +14,7 @@
 #define SR_NETWORKED
 #define VG_AUDIO_FORCE_COMPRESSED
 #define SDL_MAIN_HANDLED
-//#define SR_ALLOW_REWIND_HUB
+#define SR_ALLOW_REWIND_HUB
 
 #ifndef VG_RELEASE
  #define VG_DEVWINDOW
@@ -683,6 +683,35 @@ static void vg_render(void){
 static void vg_gui(void){
    if( skaterift.op == k_async_op_clientloading ) return;
 
+   if( k_tools_mode ){
+      ui_rect null;
+      ui_rect screen = { 0, 0, vg.window_x, vg.window_y };
+      ui_rect panel = { 0, 0, 1000, 700 };
+      ui_rect_center( screen, panel );
+      vg_ui.wants_mouse = 1;
+
+      ui_fill( panel, ui_colour( k_ui_bg+1 ) );
+      ui_outline( panel, 1, ui_colour( k_ui_bg+7 ), 0 );
+
+      ui_rect_pad( panel, (ui_px[2]){ 8, 8 } );
+
+      static i32 example;
+      ui_enum( panel, "example enum", vg_settings_vsync_enum, 3, &example );
+
+      static f32 val = 30.0f;
+      ui_slider( panel, "Slider", 0.0f, 100.0f, &val, NULL );
+
+      ui_dev_colourview();
+
+      static v4f colour = { 0.5f, 0.6f, 0.1f, 1.0f };
+      ui_colourpicker( panel, "hello", colour );
+
+      return;
+   }
+
+   if( k_light_editor )
+      imgui_world_light_edit( world_current_instance() );
+
    vg_ui.tex_bg = gpipeline.fb_main->attachments[0].id;
    render_fb_inverse_ratio( gpipeline.fb_main, vg_ui.bg_inverse_ratio );