sanding
authorhgn <hgodden00@gmail.com>
Mon, 21 Apr 2025 07:20:42 +0000 (08:20 +0100)
committerhgn <hgodden00@gmail.com>
Mon, 21 Apr 2025 07:20:42 +0000 (08:20 +0100)
src/control_overlay.c
src/menu.c
src/player_common.c
src/world_load.c
src/world_map.c
src/world_render.c

index 735bb0bfcc5d875e82cb19d28580ca9885b00b13..3a7750a27ae877277eaffda7423ef210eddc9f7e 100644 (file)
@@ -74,6 +74,16 @@ void control_overlay_render(void)
    if( skaterift.activity != k_skaterift_default ) return;
    if( _cutscene.state != k_cutscene_state_none ) return;
    if( localplayer.subsystem == k_player_subsystem_dead ) return;
+   if( _world.event != k_world_event_none ) 
+   {
+      if( _world.event == k_world_event_challenge )
+      {
+         if( _world.challenge_state <= k_challenge_state_viewing )
+            return;
+      }
+      else
+         return;
+   }
 
    glEnable(GL_BLEND);
    glDisable(GL_DEPTH_TEST);
@@ -436,10 +446,12 @@ void control_overlay_render(void)
       if( press_dpad_e )
          render_overlay_mesh( ov_dpad_e );
 
+#if 0
       colorize( press_dpad_w, !(_world.main.info.flags & k_world_flag_no_rewind) );
       render_overlay_mesh( ov_text_dw_rewind );
       if( press_dpad_w )
          render_overlay_mesh( ov_dpad_w );
+#endif
 
       if( subsytem == k_player_subsystem_dead )
       {
@@ -711,9 +723,11 @@ void control_overlay_render(void)
       shader_model_menu_uColour( cnorm );
       shader_model_menu_uMdl( mmdl );
 
+#if 0
       colorize( press_r, !(_world.main.info.flags & k_world_flag_no_rewind) );
       draw_key( press_r, 0 );
       render_overlay_mesh( ov_text_rewind );
+#endif
 
       /* space */
       bool press_space = vg_getkey(SDLK_SPACE);
index 1296bddbba02833bfeb4ec28692d5613530cda4e..5abf2e6a34db894984ff3597cf63f24d578e35f9 100644 (file)
@@ -666,23 +666,21 @@ void menu_gui( ui_context *ctx )
       ui_rect title;
       ui_split( panel, k_ui_axis_h, 28*2, 0, title, panel );
       ctx->font = &vgf_default_title;
-      ui_text( ctx, title, 
-               "Welcome to Skate Rift", 1, k_ui_align_middle_center, 0 );
+      ui_text( ctx, title, "Welcome to Skate Rift", 1, k_ui_align_middle_center, 0 );
 
       ui_split( panel, k_ui_axis_h, 28, 0, title, panel );
       ctx->font = &vgf_default_large;
 
-      menu_checkbox( ctx, panel, R == 0, 
-            "Show controls overlay (good for new players)",
-            &control_overlay.enabled );
-      menu_checkbox( ctx, panel, R == 1, "Auto connect to global server",
-            &network_client.auto_connect );
+      menu_checkbox( ctx, panel, R == 0, "Show controls overlay (good for new players)", &control_overlay.enabled );
+      menu_checkbox( ctx, panel, R == 1, "Auto connect to global server", &network_client.auto_connect );
 
       ui_rect end = { panel[0], panel[1] + panel[3] - 100, panel[2], 100 };
-      menu_checkbox( ctx, end, R == 2, 
-                     "Don't show this again", &menu.skip_starter );
+      menu_checkbox( ctx, end, R == 2, "Don't show this again", &menu.skip_starter );
       if( menu_button( ctx, end, R == 3, 1, "OK" ) )
       {
+         if( network_client.auto_connect )
+            network_client.user_intent = k_server_intent_online;
+
          menu.page = k_menu_page_main;
          menu_close();
       }
index f8ebdbfe6d1f6f1a86a9c3dcd22836a1f4721890..3f1b66d93482dd089d3431d00ed3d3e48b544999 100644 (file)
@@ -252,7 +252,19 @@ void player__cam_iterate(void)
 
 void player_look( v3f angles, float speed )
 {
-   if( vg_ui.ctx.wants_mouse ) return;
+   ui_context *ui_ctx = &vg_ui.ctx;
+   if( ui_ctx->wants_mouse ) 
+   {
+      if( skaterift.activity == k_skaterift_replay ) 
+      {
+         if( !ui_clicking( ui_ctx, UI_MOUSE_LEFT ) )
+            return;
+         if( ui_ctx->focused_control_type != k_ui_control_none )
+            return;
+      }
+      else
+         return;
+   }
 
    angles[2] = 0.0f;
 
index ab3548079f03cb8024c2edf199d3298bc02a68bb..a09719e89f00c7b33191d34b3cad1e1019a6e227 100644 (file)
@@ -378,6 +378,10 @@ void async_worldsave_go( vg_async_task *task )
    _world.load_addon = 0;
    _vg_tower_set_flag( skaterift.sig_world, 1 );
    menu_on_world_change( _world.main.addon_id );
+
+   vg_audio_lock();
+   vg_audio_oneshot( &audio_ui[2], 1.0f, 0.0f, 0, 0 );
+   vg_audio_unlock();
 }
 
 void load_world_savedata_t1( void *userdata )
index 6253eee59ac47c3e68ba450dda8dd9760cf375b4..bdd61d48a32d0d67ea80d3c993faa588d02ee1dd 100644 (file)
@@ -898,7 +898,9 @@ void world_map_gui( ui_context *ctx, ui_rect main_area, i32 mh, i32 mv, bool *al
       if( enter_location && menu.clicked_world_id )
       {
          if( menu.clicked_world_id != _world.main.addon_id )
+         {
             skaterift_load_world_start( menu.clicked_world_id, 0 );
+         }
 
          world_map.activity = k_map_activity_local_world;
          world_map.superworld_actual_world = world_map.superworld_list_selected;
index 887f6ae9185e7c4ade32af9fe78a9b8be3968c26..f52a5fecd8491d66a1ff1147da1c3c34cf761e9b 100644 (file)
@@ -502,7 +502,7 @@ static void world_render_challenges( world_instance *world, struct world_pass *p
    u32 objective_count = 0,
        challenge_count = 0;
 
-   if( _world.event == k_world_event_challenge )
+   if( (_world.event == k_world_event_challenge) && (_world.challenge_state != k_challenge_state_none) )
    {
       u32 challenge_index = mdl_entity_id_id( _world.active_challenge_id );
       ent_challenge *challenge = af_arritm( &world->ent_challenge, challenge_index );