X-Git-Url: https://harrygodden.com/git/?a=blobdiff_plain;f=workshop.c;h=10c482942b4f809683824b34e768267c516ca816;hb=be5e25dee2c54c2a22ca3bbb5bbe0eb6149343be;hp=469eeea2260d40bca903f93cb0e1990187c6fc28;hpb=a109f126d8adab622e38fbcc2d4281e75255246a;p=carveJwlIkooP6JGAAIwe30JlM.git diff --git a/workshop.c b/workshop.c index 469eeea..10c4829 100644 --- a/workshop.c +++ b/workshop.c @@ -1,6 +1,7 @@ -#include "workshop.h" +#include "vg/vg_engine.h" #include "vg/vg_tex.h" +#include "vg/vg_image.h" #include "vg/vg_msg.h" #include "vg/vg_binstr.h" #include "vg/vg_loader.h" @@ -10,6 +11,9 @@ #include "vg/vg_steam_ugc.h" #include "vg/vg_steam_friends.h" #include "steam.h" +#include "workshop.h" + +struct workshop_form workshop_form; static struct ui_enum_opt workshop_form_visibility_opts[] = { { k_ERemoteStoragePublishedFileVisibilityPublic, "Public" }, @@ -669,28 +673,32 @@ static void workshop_op_download_and_view_submission( int result_index ) workshop_form.submission.type = k_addon_type_none; workshop_form.submission.submission_type_selection = k_addon_type_none; - if( have_meta ){ + if( have_meta ) + { u32 len = strlen(metadata_str); vg_info( "Metadata: %s\n", metadata_str ); vg_str_bin( metadata_str, metadata_buf, len ); vg_msg msg; vg_msg_init( &msg, metadata_buf, len/2 ); - if( vg_msg_seekframe( &msg, "workshop" )){ + if( vg_msg_seekframe( &msg, "workshop" )) + { u32 type; - vg_msg_getkvintg( &msg, "type", k_vg_msg_u32, &type ); + vg_msg_getkvintg( &msg, "type", k_vg_msg_u32, &type, NULL ); workshop_form.submission.type = type; workshop_form.submission.submission_type_selection = type; const char *kv_folder = vg_msg_getkvstr( &msg, "folder" ); - if( kv_folder ){ + if( kv_folder ) + { vg_strncpy( kv_folder, workshop_form.addon_folder, sizeof(workshop_form.addon_folder), k_strncpy_always_add_null ); } } } - else{ + else + { vg_error( "No metadata was returned with this item.\n" ); } @@ -805,7 +813,7 @@ static void on_workshop_UGCQueryComplete( void *data, void *userdata ) /* * Console command to open the workshop publisher */ -static int workshop_submit_command( int argc, const char *argv[] ) +int workshop_submit_command( int argc, const char *argv[] ) { if( !steam_ready ){ ui_start_modal( "Steam API is not initialized\n", UI_MODAL_BAD ); @@ -841,7 +849,7 @@ static int workshop_submit_command( int argc, const char *argv[] ) return 0; } -static void workshop_init(void) +void workshop_init(void) { vg_console_reg_cmd( "workshop_submit", workshop_submit_command, NULL ); } @@ -894,7 +902,7 @@ static void workshop_render_player_preview(void){ skeleton_apply_inverses( sk, localplayer.final_mtx ); skeleton_apply_transform( sk, transform, localplayer.final_mtx ); - camera cam; + vg_camera cam; v3_copy( (v3f){ 0.0f, 201.7f, 1.2f }, cam.pos ); cam.nearz = 0.01f; @@ -902,10 +910,10 @@ static void workshop_render_player_preview(void){ cam.fov = 57.0f; v3_zero( cam.angles ); - camera_update_transform( &cam ); - camera_update_view( &cam ); - camera_update_projection( &cam ); - camera_finalize( &cam ); + vg_camera_update_transform( &cam ); + vg_camera_update_view( &cam ); + vg_camera_update_projection( &cam ); + vg_camera_finalize( &cam ); render_playermodel( &cam, world_current_instance(), 0, &workshop_form.player_model, sk, localplayer.final_mtx ); @@ -943,7 +951,7 @@ static void workshop_render_board_preview(void){ v3_add( display->transform.co, display1->transform.co, baseco ); v3_muls( baseco, 0.5f, baseco ); - camera cam; + vg_camera cam; v3f basevector; v3_sub( display->transform.co, ref->transform.co, basevector ); float dist = v3_length( basevector ); @@ -974,10 +982,10 @@ static void workshop_render_board_preview(void){ cam.farz = 100.0f; cam.fov = ref->fov; - camera_update_transform( &cam ); - camera_update_view( &cam ); - camera_update_projection( &cam ); - camera_finalize( &cam ); + vg_camera_update_transform( &cam ); + vg_camera_update_view( &cam ); + vg_camera_update_projection( &cam ); + vg_camera_finalize( &cam ); m4x3f mmdl, mmdl1; mdl_transform_m4x3( &display->transform, mmdl ); @@ -1373,7 +1381,7 @@ static void workshop_form_gui_sidebar( ui_rect sidebar ) } } -static void workshop_form_gui(void) +void workshop_form_gui(void) { enum workshop_form_page stable_page = workshop_form.page; if( stable_page == k_workshop_form_hidden ) return; @@ -1501,7 +1509,7 @@ static void workshop_form_gui(void) * ----------------------------------------------------------------------------- */ -static void async_workshop_get_filepath( void *data, u32 len ) +void async_workshop_get_filepath( void *data, u32 len ) { struct async_workshop_filepath_info *info = data; @@ -1517,7 +1525,7 @@ static void async_workshop_get_filepath( void *data, u32 len ) } } -static void async_workshop_get_installed_files( void *data, u32 len ) +void async_workshop_get_installed_files( void *data, u32 len ) { struct async_workshop_installed_files_info *info = data;