csgo-2018-source/game/shared/shared_gcmessages.h
2021-07-24 21:11:47 -07:00

65 lines
1.9 KiB
C

//====== Copyright (C), Valve Corporation, All rights reserved. =======
//
// Purpose: This file defines all of our over-the-wire net protocols for the
// Inter-Game Coordinator messages. Note that we never use types
// with undefined length (like int). Always use an explicit type
// (like int32).
//
//=============================================================================
#ifndef SHARED_GCMESSAGES_H
#define SHARED_GCMESSAGES_H
#ifdef _WIN32
#pragma once
#endif
enum EGCSharedMsg
{
k_EMsgInterGCBase = 7000,
k_EMsgInterGCAchievementAwarded = k_EMsgInterGCBase + 1,
k_EMsgInterGCAchievementAwardedResponse = k_EMsgInterGCBase + 2,
k_EMsgInterGCLoadAchievements = k_EMsgInterGCBase + 3,
k_EMsgInterGCLoadAchievementResponse = k_EMsgInterGCBase + 4,
};
// k_EMsgInterGCAchievementAwarded
struct MsgInterGCAchievementAwarded_t
{
uint64 m_ulSteamID; // steam ID of the user that earned the achievement
// Variable data:
// - name of the achievement
};
// k_EMsgInterGCAchievementAwardedResponse
struct MsgInterGCAchievementAwardedResponse_t
{
uint64 m_ulSteamID; // steam ID of the user that earned the achievement
uint64 m_ulItemID; // ID of the item awarded
bool m_bAppPlayed; // true if the user has played the target game
// Variable data:
// - name of the achievement
};
// k_EMsgInterGCLoadAchievements
struct MsgInterGCLoadAchievements_t
{
uint64 m_ulSteamID; // steam ID of the user that earned the achievement
uint32 m_cAchievements; // number of achievement names in the variable data
// Variable data:
// - name of the achievement
};
// k_EMsgInterGCLoadAchievementsResponse
struct MsgInterGCLoadAchievementsResponse_t
{
uint64 m_ulSteamID; // steam ID of the user that earned the achievement
uint32 m_cAchievements; // number of achievement bools in the variable data
// Variable data:
// - a bool for the achievement
};
#endif