-
Notifications
You must be signed in to change notification settings - Fork 3
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
11 changed files
with
122 additions
and
5 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Binary file not shown.
Binary file not shown.
File renamed without changes.
File renamed without changes.
File renamed without changes.
Binary file not shown.
Binary file not shown.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,26 @@ | ||
#pragma once | ||
|
||
#if defined(DISCORD_DYNAMIC_LIB) | ||
#if defined(_WIN32) | ||
#if defined(DISCORD_BUILDING_SDK) | ||
#define DISCORD_EXPORT __declspec(dllexport) | ||
#else | ||
#define DISCORD_EXPORT __declspec(dllimport) | ||
#endif | ||
#else | ||
#define DISCORD_EXPORT __attribute__((visibility("default"))) | ||
#endif | ||
#else | ||
#define DISCORD_EXPORT | ||
#endif | ||
|
||
#ifdef __cplusplus | ||
extern "C" { | ||
#endif | ||
|
||
DISCORD_EXPORT void Discord_Register(const char* applicationId, const char* command); | ||
DISCORD_EXPORT void Discord_RegisterSteamGame(const char* applicationId, const char* steamId); | ||
|
||
#ifdef __cplusplus | ||
} | ||
#endif |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,87 @@ | ||
#pragma once | ||
#include <stdint.h> | ||
|
||
// clang-format off | ||
|
||
#if defined(DISCORD_DYNAMIC_LIB) | ||
# if defined(_WIN32) | ||
# if defined(DISCORD_BUILDING_SDK) | ||
# define DISCORD_EXPORT __declspec(dllexport) | ||
# else | ||
# define DISCORD_EXPORT __declspec(dllimport) | ||
# endif | ||
# else | ||
# define DISCORD_EXPORT __attribute__((visibility("default"))) | ||
# endif | ||
#else | ||
# define DISCORD_EXPORT | ||
#endif | ||
|
||
// clang-format on | ||
|
||
#ifdef __cplusplus | ||
extern "C" { | ||
#endif | ||
|
||
typedef struct DiscordRichPresence { | ||
const char* state; /* max 128 bytes */ | ||
const char* details; /* max 128 bytes */ | ||
int64_t startTimestamp; | ||
int64_t endTimestamp; | ||
const char* largeImageKey; /* max 32 bytes */ | ||
const char* largeImageText; /* max 128 bytes */ | ||
const char* smallImageKey; /* max 32 bytes */ | ||
const char* smallImageText; /* max 128 bytes */ | ||
const char* partyId; /* max 128 bytes */ | ||
int partySize; | ||
int partyMax; | ||
const char* matchSecret; /* max 128 bytes */ | ||
const char* joinSecret; /* max 128 bytes */ | ||
const char* spectateSecret; /* max 128 bytes */ | ||
int8_t instance; | ||
} DiscordRichPresence; | ||
|
||
typedef struct DiscordUser { | ||
const char* userId; | ||
const char* username; | ||
const char* discriminator; | ||
const char* avatar; | ||
} DiscordUser; | ||
|
||
typedef struct DiscordEventHandlers { | ||
void (*ready)(const DiscordUser* request); | ||
void (*disconnected)(int errorCode, const char* message); | ||
void (*errored)(int errorCode, const char* message); | ||
void (*joinGame)(const char* joinSecret); | ||
void (*spectateGame)(const char* spectateSecret); | ||
void (*joinRequest)(const DiscordUser* request); | ||
} DiscordEventHandlers; | ||
|
||
#define DISCORD_REPLY_NO 0 | ||
#define DISCORD_REPLY_YES 1 | ||
#define DISCORD_REPLY_IGNORE 2 | ||
|
||
DISCORD_EXPORT void Discord_Initialize(const char* applicationId, | ||
DiscordEventHandlers* handlers, | ||
int autoRegister, | ||
const char* optionalSteamId); | ||
DISCORD_EXPORT void Discord_Shutdown(void); | ||
|
||
/* checks for incoming messages, dispatches callbacks */ | ||
DISCORD_EXPORT void Discord_RunCallbacks(void); | ||
|
||
/* If you disable the lib starting its own io thread, you'll need to call this from your own */ | ||
#ifdef DISCORD_DISABLE_IO_THREAD | ||
DISCORD_EXPORT void Discord_UpdateConnection(void); | ||
#endif | ||
|
||
DISCORD_EXPORT void Discord_UpdatePresence(const DiscordRichPresence* presence); | ||
DISCORD_EXPORT void Discord_ClearPresence(void); | ||
|
||
DISCORD_EXPORT void Discord_Respond(const char* userid, /* DISCORD_REPLY_ */ int reply); | ||
|
||
DISCORD_EXPORT void Discord_UpdateHandlers(DiscordEventHandlers* handlers); | ||
|
||
#ifdef __cplusplus | ||
} /* extern "C" */ | ||
#endif |
Binary file not shown.