From: hgn Date: Mon, 21 Apr 2025 07:20:42 +0000 (+0100) Subject: sanding X-Git-Url: https://harrygodden.com/git/?a=commitdiff_plain;h=56cf0edd0c4478c4e5ca136d73929d1484843119;p=carveJwlIkooP6JGAAIwe30JlM.git sanding --- diff --git a/src/control_overlay.c b/src/control_overlay.c index 735bb0b..3a7750a 100644 --- a/src/control_overlay.c +++ b/src/control_overlay.c @@ -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); diff --git a/src/menu.c b/src/menu.c index 1296bdd..5abf2e6 100644 --- a/src/menu.c +++ b/src/menu.c @@ -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(); } diff --git a/src/player_common.c b/src/player_common.c index f8ebdbf..3f1b66d 100644 --- a/src/player_common.c +++ b/src/player_common.c @@ -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; diff --git a/src/world_load.c b/src/world_load.c index ab35480..a09719e 100644 --- a/src/world_load.c +++ b/src/world_load.c @@ -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 ) diff --git a/src/world_map.c b/src/world_map.c index 6253eee..bdd61d4 100644 --- a/src/world_map.c +++ b/src/world_map.c @@ -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; diff --git a/src/world_render.c b/src/world_render.c index 887f6ae..f52a5fe 100644 --- a/src/world_render.c +++ b/src/world_render.c @@ -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 );