From: hgn Date: Sat, 8 Feb 2025 19:34:14 +0000 (+0000) Subject: removed little bit of shit X-Git-Url: https://harrygodden.com/git/?a=commitdiff_plain;h=d39f0916c036f4c8a31516be0a65fee4ae0daf0d;p=carveJwlIkooP6JGAAIwe30JlM.git removed little bit of shit --- diff --git a/src/addon.c b/src/addon.c index 11fe3ed..5cfd075 100644 --- a/src/addon.c +++ b/src/addon.c @@ -290,7 +290,6 @@ static addon_reg *addon_alloc_reg( PublishedFileId_t workshop_id, reg->flags = 0; reg->metadata_len = 0; reg->cache_id = 0; - reg->state = k_addon_state_indexed; reg->alias.workshop_id = workshop_id; reg->alias.foldername[0] = '\0'; reg->alias.type = type; @@ -397,12 +396,14 @@ addon_reg *addon_mount_local_addon( const char *folder, const char *folder_name = vg_strch( &folder_path, '/' )+1; u32 folder_hash = vg_strdjb2(folder_name); - for( u32 i=0; ialias.type == type) && (reg->foldername_hash == folder_hash) ){ - if( !strcmp( reg->alias.foldername, folder_name ) ){ - reg->state = k_addon_state_indexed; + if( (reg->alias.type == type) && (reg->foldername_hash == folder_hash) ) + { + if( !strcmp( reg->alias.foldername, folder_name ) ) + { return reg; } } @@ -413,7 +414,8 @@ addon_reg *addon_mount_local_addon( const char *folder, addon_set_foldername( reg, folder_name ); addon_try_load_metadata( reg, folder_path ); - if( reg->metadata_len == 0 ){ + if( reg->metadata_len == 0 ) + { /* create our own content commands */ vg_msg msg; vg_msg_init( &msg, reg->metadata, sizeof(reg->metadata) ); @@ -493,10 +495,8 @@ void addon_mount_workshop_items(void) for( u32 i=0; ialias.workshop_id == id ){ - reg->state = k_addon_state_indexed; + if( reg->alias.workshop_id == id ) goto next_file_workshop; - } } vg_async_item *call1 = diff --git a/src/addon.h b/src/addon.h index fc5a5fb..db51af1 100644 --- a/src/addon.h +++ b/src/addon.h @@ -31,13 +31,6 @@ struct addon_system u32 flags; u16 cache_id; - - enum addon_state{ - k_addon_state_none, - k_addon_state_indexed, - k_addon_state_indexed_absent /* gone but not forgotten */ - } - state; } *registry; u32 registry_count; diff --git a/src/save.c b/src/save.c index b24b758..fe8c0b6 100644 --- a/src/save.c +++ b/src/save.c @@ -206,7 +206,7 @@ void skaterift_load_mainsave(void) savedata_file_read( &sav ); vg_msg kvsav; - vg_msg_init( &kvsav, sav.buf, sizeof(sav.buf) ); + vg_msg_init( &kvsav, sav.buf, sav.len ); u32 ach; vg_msg_getkvintg( &kvsav, "ach", k_vg_msg_u32, &ach, NULL ); @@ -230,8 +230,7 @@ void skaterift_load_mainsave(void) } /* playermodel */ - if( skaterift_read_addon_alias( &kvsav, "playermodel", - k_addon_type_player, &q ) ) + if( skaterift_read_addon_alias( &kvsav, "playermodel", k_addon_type_player, &q ) ) { reg_id = addon_match( &q ); if( reg_id != 0xffffffff ) @@ -267,5 +266,14 @@ void skaterift_load_mainsave(void) kvsav.cur = orig; if( vg_msg_seekframe( &kvsav, "story" ) ) + { skaterift_script_load_savedata( &kvsav ); + } + else + { + vg_info( "Starting new story!\n" ); + _world.switch_to_addon = + addon_mount_local_addon( "maps/dev_heaven", k_addon_type_world, ".mdl" ); + _skaterift_script_hook( 2, (const char *[]){ "unlock", "intro" } ); + } } diff --git a/src/skaterift.c b/src/skaterift.c index e56ee07..f31e604 100644 --- a/src/skaterift.c +++ b/src/skaterift.c @@ -65,7 +65,8 @@ void game_launch_opt(void) skaterift.override_load_world = arg; } -static addon_reg *skaterift_mount_world_unloadable( const char *path, u32 ext ){ +static addon_reg *skaterift_mount_world_unloadable( const char *path, u32 ext ) +{ addon_reg *reg = addon_mount_local_addon( path, k_addon_type_world, ".mdl" ); if( !reg ) vg_fatal_error( "world not found\n" ); reg->flags |= (ADDON_REG_HIDDEN | ext); diff --git a/src/skaterift_script.h b/src/skaterift_script.h index b2dfe90..9d153a1 100644 --- a/src/skaterift_script.h +++ b/src/skaterift_script.h @@ -5,3 +5,4 @@ void _skaterift_script_init(void); void _skaterift_script_marker( const char *marker ); void skaterift_script_write_savedata( vg_msg *sav ); void skaterift_script_load_savedata( vg_msg *sav ); +static int _skaterift_script_hook( int argc, const char *argv[] );