X-Git-Url: https://harrygodden.com/git/?a=blobdiff_plain;ds=sidebyside;f=save.c;h=a8076c76a9f0fe3434eb7b1c55a2f07cd4d65639;hb=6b036c10d38e7d691eb0bc06c29235b450c3ff10;hp=a3990d981dbef4c66e45e2569af79ab5704e9781;hpb=188685bc8454ff40b733d9e9df8da45e3c2e2c39;p=carveJwlIkooP6JGAAIwe30JlM.git diff --git a/save.c b/save.c index a3990d9..a8076c7 100644 --- a/save.c +++ b/save.c @@ -65,13 +65,15 @@ static void skaterift_read_addon_alias( vg_msg *msg, const char *key, alias->workshop_id = 0; alias->type = type; - vg_msg_cmd kv = vg_msg_seekkv( msg, key, 0 ); - if( kv.code == k_vg_msg_kvstring ){ - vg_strncpy( kv.value, alias->foldername, sizeof(alias->foldername), - k_strncpy_allow_cutoff ); + vg_msg_cmd kv; + if( vg_msg_getkvcmd( msg, key, &kv ) ){ + if( kv.code == k_vg_msg_kvstring ){ + vg_strncpy( kv.value, alias->foldername, sizeof(alias->foldername), + k_strncpy_allow_cutoff ); + } + else + vg_msg_cast( kv.value, kv.code, &alias->workshop_id, k_vg_msg_u64 ); } - else - alias->workshop_id = vg_msg_read_as_u64( &kv ); } static void skaterift_populate_world_savedata( savedata_file *file, @@ -89,9 +91,8 @@ static void skaterift_populate_world_savedata( savedata_file *file, skaterift_world_get_save_path( which, file->path ); - vg_msg sav = {0}; - sav.buf = file->buf; - sav.max = sizeof(file->buf); + vg_msg sav; + vg_msg_init( &sav, file->buf, sizeof(file->buf) ); if( which == k_world_purpose_hub ){ if( world_static.instances[0].status == k_world_status_loaded ) @@ -106,15 +107,14 @@ static void skaterift_populate_world_savedata( savedata_file *file, } } - file->len = sav.len; + file->len = sav.cur.co; } static void skaterift_populate_main_savedata( savedata_file *file ){ strcpy( file->path, str_skaterift_main_save ); - vg_msg sav = {0}; - sav.buf = file->buf; - sav.max = sizeof(file->buf); + vg_msg sav; + vg_msg_init( &sav, file->buf, sizeof(file->buf) ); vg_msg_frame( &sav, "player" ); { @@ -137,7 +137,7 @@ static void skaterift_populate_main_savedata( savedata_file *file ){ } vg_msg_end_frame( &sav ); - file->len = sav.len; + file->len = sav.cur.co; } static int skaterift_autosave( int async ){