X-Git-Url: https://harrygodden.com/git/?a=blobdiff_plain;f=ent_skateshop.c;h=4c55bb939477117aac5c1cb36ae900aa50830ed9;hb=67928190c66b05bd48b6b515278e930974d25cd2;hp=16225c7c9edf7b047f1819831553f60e591117a3;hpb=02e009ae6e20938675277e9ce2f467e17b170cc7;p=carveJwlIkooP6JGAAIwe30JlM.git diff --git a/ent_skateshop.c b/ent_skateshop.c index 16225c7..4c55bb9 100644 --- a/ent_skateshop.c +++ b/ent_skateshop.c @@ -53,20 +53,17 @@ VG_STATIC void world_scan_thread( void *_args ){ addon_mount_content_folder( k_addon_type_world, "maps", ".mdl" ); addon_mount_workshop_items(); vg_async_call( async_addon_reg_update, NULL, 0 ); - skaterift_end_op(); } /* * Asynchronous scan of local disk for worlds */ VG_STATIC void skateshop_op_world_scan(void){ - skaterift_begin_op( k_async_op_world_scan ); vg_loader_start( world_scan_thread, NULL ); } VG_STATIC void board_processview_thread( void *_args ){ addon_cache_load_loop(); - skaterift_end_op(); } VG_STATIC void board_scan_thread( void *_args ){ @@ -78,12 +75,10 @@ VG_STATIC void board_scan_thread( void *_args ){ } VG_STATIC void skateshop_op_board_scan(void){ - skaterift_begin_op( k_async_op_board_scan ); vg_loader_start( board_scan_thread, NULL ); } VG_STATIC void skateshop_op_processview(void){ - skaterift_begin_op( k_async_op_board_scan ); vg_loader_start( board_processview_thread, NULL ); } @@ -158,12 +153,9 @@ VG_STATIC void skateshop_world_preview_loader_thread( void *_data ) VG_STATIC void skateshop_world_preview_loader_thread_and_end( void *_data ){ skateshop_world_preview_loader_thread( _data ); - skaterift_end_op(); } -VG_STATIC void skateshop_load_world_preview( addon_reg *reg ) -{ - skaterift_begin_op( k_async_op_world_load_preview ); +VG_STATIC void skateshop_load_world_preview( addon_reg *reg ){ vg_loader_start( skateshop_world_preview_loader_thread_and_end, reg ); } @@ -216,7 +208,7 @@ VG_STATIC void global_skateshop_preupdate(void) /* input */ if( shop->type == k_skateshop_type_boardshop ){ - if( skaterift.async_op != k_async_op_none ) return; + if( !vg_loader_availible() ) return; gui_helper_action( axis_display_string( k_sraxis_mbrowse_h ), "browse" ); gui_helper_action( button_display_string( k_srbind_mback ), "exit" ); @@ -266,7 +258,7 @@ VG_STATIC void global_skateshop_preupdate(void) } } else if( shop->type == k_skateshop_type_charshop ){ - if( skaterift.async_op != k_async_op_none ) return; + if( !vg_loader_availible() ) return; gui_helper_action( axis_display_string( k_sraxis_mbrowse_h ), "browse" ); gui_helper_action( button_display_string( k_srbind_mback ), "exit" ); @@ -311,15 +303,12 @@ VG_STATIC void global_skateshop_preupdate(void) int browseable = 0, loadable = 0; - if( addon_count(k_addon_type_world) && - ((skaterift.async_op == k_async_op_none)|| - (skaterift.async_op == k_async_op_world_load_preview))){ + if( addon_count(k_addon_type_world) && vg_loader_availible() ){ gui_helper_action( axis_display_string(k_sraxis_mbrowse_h), "browse" ); browseable = 1; } - if( (skaterift.async_op == k_async_op_none) && - global_skateshop.selected_world_id > 0 ){ + if( vg_loader_availible() && global_skateshop.selected_world_id > 0 ){ gui_helper_action( button_display_string(k_srbind_maccept), "open rift" ); loadable = 1; @@ -350,7 +339,7 @@ VG_STATIC void global_skateshop_preupdate(void) pointcloud_animate( k_pointcloud_anim_hiding ); } - if( skaterift.async_op == k_async_op_none ){ + if( vg_loader_availible() ){ addon_reg *reg = get_addon_from_index( k_addon_type_world, global_skateshop.selected_world_id ); @@ -443,9 +432,11 @@ VG_STATIC void skateshop_render_boardshop(void) q_nlerp( xform.q, mark_display->transform.q, t, xform.q ); v3_lerp( xform.s, mark_display->transform.s, t, xform.s ); + struct board_pose pose = {0}; m4x3f mmdl; mdl_transform_m4x3( &xform, mmdl ); - render_board( &main_camera, world, board, mmdl, k_board_shader_entity ); + render_board( &main_camera, world, board, mmdl, + &pose, k_board_shader_entity ); fade_out:; float rate = 5.0f*vg.time_delta; @@ -610,8 +601,7 @@ VG_STATIC void skateshop_render_worldshop(void) info.buffer[info.i] = '\0'; vg_strcat( &info, global_skateshop.render.world_title ); - if( skaterift.async_op == k_async_op_world_loading || - skaterift.async_op == k_async_op_world_preloading ){ + if( !vg_loader_availible() ){ vg_strcat( &subtext, "Loading..." ); } else{ @@ -698,7 +688,7 @@ VG_STATIC void ent_skateshop_call( world_instance *world, ent_call *call ) vg_info( "skateshop_call\n" ); if( menu.active ) return; - if( skaterift.async_op != k_async_op_none ) return; + if( !vg_loader_availible() ) return; if( call->function == k_ent_function_trigger ){ if( localplayer.subsystem != k_player_subsystem_walk ){