X-Git-Url: https://harrygodden.com/git/?a=blobdiff_plain;f=steam.h;h=e0569a7a8046d50c23e451342c2e0d656843a27b;hb=e311bbe2fa903a7e2a922f202f389b799193195d;hp=2c8bd2d5ca886c347becf3c8ab2724d6fc0d0673;hpb=825c3bce18272c0f81659e0eac469709d0462836;p=carveJwlIkooP6JGAAIwe30JlM.git diff --git a/steam.h b/steam.h index 2c8bd2d..e0569a7 100644 --- a/steam.h +++ b/steam.h @@ -27,7 +27,7 @@ * nothing. */ -static char steam_username_at_startup[128]; +static char steam_username_at_startup[128] = "Unassigned"; static void recv_steam_warning( int severity, const char *msg ) { @@ -48,9 +48,10 @@ static HSteamPipe hSteamClientPipe; static const char *steam_achievement_names[] = { - "ALBERT", "MARC", + "ALBERT", "MARC", "JANET", "BERNADETTA", "ROUTE_MPY", "ROUTE_MPG", "ROUTE_MPB", "ROUTE_MPR", - "ROUTE_TO", "ROUTE_TC" + "ROUTE_TO", "ROUTE_TC", "CITY_COMPLETE", "MTZERO_SILVER", "MTZERO_GOLD", + "80FT" }; static void steam_store_achievements(void) @@ -60,11 +61,19 @@ static void steam_store_achievements(void) } } -static void steam_set_achievement( const char *name ) -{ +static void update_ach_models(void); +static void steam_set_achievement( const char *name ){ + /* hack lol */ + if( !strcmp(name,"MARC") ) skaterift.achievements |= 0x1; + if( !strcmp(name,"ALBERT") ) skaterift.achievements |= 0x2; + if( !strcmp(name,"JANET") ) skaterift.achievements |= 0x4; + if( !strcmp(name,"BERNADETTA") ) skaterift.achievements |= 0x8; + update_ach_models(); + if( steam_ready && steam_stats_ready ){ if( SteamAPI_ISteamUserStats_SetAchievement( hSteamUserStats, name ) ){ vg_success( "Achievement set! '%s'\n", name ); + } else{ vg_warn( "Failed to set achievement: %s\n", name ); @@ -155,6 +164,25 @@ static void steam_on_recieve_current_stats( CallbackMsg_t *msg ) vg_info( "Recieved stats for: %lu (user: %lu)\n", rec->m_nGameID, rec->m_steamIDUser ); steam_stats_ready = 1; + + steamapi_bool set = 0; + if( SteamAPI_ISteamUserStats_GetAchievement( + hSteamUserStats, "MARC", &set ) ){ + if( set ) skaterift.achievements |= 0x1; + } + if( SteamAPI_ISteamUserStats_GetAchievement( + hSteamUserStats, "ALBERT", &set ) ){ + if( set ) skaterift.achievements |= 0x2; + } + if( SteamAPI_ISteamUserStats_GetAchievement( + hSteamUserStats, "JANET", &set ) ){ + if( set ) skaterift.achievements |= 0x4; + } + if( SteamAPI_ISteamUserStats_GetAchievement( + hSteamUserStats, "BERNADETTA", &set ) ){ + if( set ) skaterift.achievements |= 0x8; + } + update_ach_models(); } else{ vg_error( "Error recieveing stats for user (%u)\n", rec->m_eResult );