* --------------------- */
#include "skaterift.h"
-#include "conf.h"
#include "steam.h"
#include "render.h"
#include "audio.h"
VG_STATIC void vg_preload(void)
{
- conf_init();
skaterift_read_savedata();
vg_info(" Copyright . . . -----, ,----- ,---. .---. \n" );
shader_model_entity_register();
}
-void temp_update_playermodel(void){
-#if 0
- player__use_model( &localplayer, &localplayer_models[k_playermdl_id] );
-#endif
-}
-
VG_STATIC void async_skaterift_player_start( void *payload, u32 size )
{
localplayer.viewable_world = world_current_instance();
/* player setup */
player__create( &localplayer );
- player_avatar_load( &localplayer_avatar, "models/ch_new.mdl" );
+ player_avatar_load( &localplayer_avatar, "models/ch_none.mdl" );
player__use_avatar( &localplayer, &localplayer_avatar );
-#if 0
- player__use_model( &localplayer, &localplayer_models[k_playermdl_id] );
-#endif
+ player_model_load( &localplayer.fallback_model, "models/ch_none.mdl" );
player__bind( &localplayer );
/* --------------------- */
/* understate diy. */
addon_reg *spawn = addon_mount_local_addon( "maps/mp_spawn",
- k_workshop_file_type_world,
+ k_addon_type_world,
".mdl" );
{
vg_msg msg = {0};
/* mtzero island */
addon_reg *mtzero = addon_mount_local_addon( "maps/mp_mtzero",
- k_workshop_file_type_world,
+ k_addon_type_world,
".mdl" );
{
vg_msg msg = {0};
global_skateshop.selected_world_id=1;
global_skateshop.pointcloud_world_id=1;
- skateshop_preview_loader_thread( mtzero ); /* HACK */
+ skateshop_world_preview_loader_thread( mtzero ); /* HACK */
vg_async_call( async_addon_reg_update, NULL, 0 );
vg_console_load_autos();
menu_link();
- temp_update_playermodel();
//vg_mem_log( vg_mem.rtmemory, 0, "Root" );
vg_async_call( async_skaterift_player_start, NULL, 0 );
skaterift_shift_op( k_async_op_board_scan );
- addon_mount_content_folder( k_workshop_file_type_player,
+ addon_mount_content_folder( k_addon_type_player,
"playermodels", ".mdl" );
- addon_mount_content_folder( k_workshop_file_type_board, "boards", ".mdl" );
+ addon_mount_content_folder( k_addon_type_board, "boards", ".mdl" );
addon_mount_workshop_items();
vg_async_call( async_addon_reg_update, NULL, 0 );
vg_async_stall();
sav.len = savedata.len;
sav.max = sizeof(savedata.buf);
- u64 query_workshop_id = 0;
- const char *query_local_folder = "";
-
if( vg_msg_seekframe(&sav, "player",0) ){
- vg_msg_print( &sav );
- vg_msg_cmd board = vg_msg_seekkv( &sav, "board", 0 );
- if( board.code == k_vg_msg_kvstring )
- query_local_folder = board.value;
- else
- query_workshop_id = vg_msg_read_as_u64( &board );
- }
- else{
- vg_error( "%u\n", sav.error );
- }
+ addon_alias q;
+
+ /* board */
+ skaterift_read_viewslot( &sav, "board", k_addon_type_board, &q );
+ u32 reg_id = addon_match( &q );
+ if( reg_id != 0xffffffff ){
+ localplayer.board_view_slot =
+ addon_cache_create_viewer( k_addon_type_board, reg_id );
+ }
-#if 0
- vg_info( "search: %lu '%s'\n", query_workshop_id, query_local_folder );
- u32 reg_id = addon_match( k_workshop_file_type_board,
- query_workshop_id, query_local_folder );
- if( reg_id != 0xffffffff ){
- localplayer.board_view_slot = skateshop_cache_fetch_board( reg_id );
- vg_pool_watch( &addon_system.board_cache, localplayer.board_view_slot );
+ /* playermodel */
+ skaterift_read_viewslot( &sav, "playermodel", k_addon_type_player, &q );
+ reg_id = addon_match( &q );
+
+ if( reg_id == 0xffffffff ) reg_id = 0;
+
+ localplayer.playermodel_view_slot =
+ addon_cache_create_viewer( k_addon_type_player, reg_id );
}
-#endif
board_processview_thread(NULL); /* END_OP!! */
}