X-Git-Url: https://harrygodden.com/git/?a=blobdiff_plain;f=save.c;h=ad1b35e0414186b650596a4a094aed3e3b76c67b;hb=cbeec2e44e93ab43ccde54c2dd9cd02f559ebef8;hp=2c5e8fd3b8b1302a4db0fe4315290b2bf1d04dc7;hpb=f0677217ae486c01f0aba78aa5053e2a6273e4cc;p=carveJwlIkooP6JGAAIwe30JlM.git diff --git a/save.c b/save.c index 2c5e8fd..ad1b35e 100644 --- a/save.c +++ b/save.c @@ -1,13 +1,16 @@ #ifndef SAVE_C #define SAVE_C +#include "save.h" +#include "vg/vg_msg.h" + struct { u8 buf[1024]; u32 len; } static savedata; -static void skaterift_write_savedata_thread(void *){ +static void skaterift_write_savedata_thread(void *_){ FILE *fp = fopen( "save.bkv", "wb" ); if( fp ){ fwrite( savedata.buf, savedata.len, 1, fp ); @@ -27,13 +30,17 @@ static void skaterift_write_savedata(void){ vg_msg_frame( &sav, "player" ); + struct addon_cache *cache = &addon_system.cache[k_workshop_file_type_board]; + if( localplayer.board_view_slot ){ - struct cache_board *cache_ptr = localplayer.board_view_slot; - if( cache_ptr->reg_ptr ){ - if( cache_ptr->reg_ptr->workshop_id ) - vg_msg_wkvu64( &sav, "board", cache_ptr->reg_ptr->workshop_id ); + addon_cache_entry *entry = vg_pool_item( &cache->pool, + localplayer.board_view_slot ); + + if( entry->reg_ptr ){ + if( entry->reg_ptr->workshop_id ) + vg_msg_wkvu64( &sav, "board", entry->reg_ptr->workshop_id ); else - vg_msg_wkvstr( &sav, "board", cache_ptr->reg_ptr->foldername ); + vg_msg_wkvstr( &sav, "board", entry->reg_ptr->foldername ); } }