Fix ZONE being all caps, standardize the function comments

This commit is contained in:
Sally Coolatta 2020-08-17 06:13:32 -04:00
parent da5bda72ee
commit 83192827dc
8 changed files with 139 additions and 41 deletions

View File

@ -1382,7 +1382,7 @@ static void SV_SendServerInfo(INT32 node, tic_t servertime)
mapheaderinfo[gamemap-1]->lvlttl, mapheaderinfo[gamemap-1]->zonttl, mapheaderinfo[gamemap-1]->actnum) < 0)
{
// If there's an encoding error, send UNKNOWN, we accept that the above may be truncated
strncpy(netbuffer->u.serverinfo.maptitle, "UNKNOWN", 33);
strncpy(netbuffer->u.serverinfo.maptitle, "Unknown", 33);
}
}
else
@ -1393,13 +1393,13 @@ static void SV_SendServerInfo(INT32 node, tic_t servertime)
mapheaderinfo[gamemap-1]->lvlttl, mapheaderinfo[gamemap-1]->zonttl) < 0)
{
// If there's an encoding error, send UNKNOWN, we accept that the above may be truncated
strncpy(netbuffer->u.serverinfo.maptitle, "UNKNOWN", 33);
strncpy(netbuffer->u.serverinfo.maptitle, "Unknown", 33);
}
}
}
}
else
strncpy(netbuffer->u.serverinfo.maptitle, "UNKNOWN", 33);
strncpy(netbuffer->u.serverinfo.maptitle, "Unknown", 33);
netbuffer->u.serverinfo.maptitle[32] = '\0';
@ -1725,7 +1725,7 @@ static void CL_LoadReceivedSavegame(void)
if (strlen(mapheaderinfo[gamemap-1]->zonttl) > 0)
CON_LogMessage(va(" %s", mapheaderinfo[gamemap-1]->zonttl));
else if (!(mapheaderinfo[gamemap-1]->levelflags & LF_NOZONE))
CON_LogMessage(M_GetText(" ZONE"));
CON_LogMessage(M_GetText(" Zone"));
if (strlen(mapheaderinfo[gamemap-1]->actnum) > 0)
CON_LogMessage(va(" %s", mapheaderinfo[gamemap-1]->actnum));
}

View File

@ -34,33 +34,96 @@
consvar_t cv_discordrp = {"discordrp", "On", CV_SAVE|CV_CALL, CV_OnOff, DRPC_UpdatePresence, 0, NULL, NULL, 0, 0, NULL};
//
// DRPC_Handle's
//
static inline void DRPC_HandleReady(const DiscordUser *user)
#ifdef HAVE_CURL
struct SelfIPbuffer
{
CURL *curl;
char *pointer;
size_t length;
};
#define IP_SIZE 16
static char self_ip[IP_SIZE];
#endif
/*--------------------------------------------------
static void DRPC_HandleReady(const DiscordUser *user)
Handler function, ran when the game connects to Discord.
Input Arguments:-
user - Struct containing Discord user info.
Return:-
None
--------------------------------------------------*/
static void DRPC_HandleReady(const DiscordUser *user)
{
CONS_Printf("Discord: connected to %s#%s - %s\n", user->username, user->discriminator, user->userId);
}
static inline void DRPC_HandleDisconnect(int err, const char *msg)
/*--------------------------------------------------
static void DRPC_HandleDisconnect(int err, const char *msg)
Handler function, ran when disconnecting from Discord.
Input Arguments:-
err - Error type
msg - Error message
Return:-
None
--------------------------------------------------*/
static void DRPC_HandleDisconnect(int err, const char *msg)
{
CONS_Printf("Discord: disconnected (%d: %s)\n", err, msg);
}
static inline void DRPC_HandleError(int err, const char *msg)
/*--------------------------------------------------
static void DRPC_HandleError(int err, const char *msg)
Handler function, ran when Discord outputs an error.
Input Arguments:-
err - Error type
msg - Error message
Return:-
None
--------------------------------------------------*/
static void DRPC_HandleError(int err, const char *msg)
{
CONS_Alert(CONS_WARNING, "Discord: error (%d, %s)\n", err, msg);
CONS_Alert(CONS_WARNING, "Discord error (%d: %s)\n", err, msg);
}
static inline void DRPC_HandleJoin(const char *secret)
/*--------------------------------------------------
static void DRPC_HandleJoin(const char *secret)
Handler function, ran when Discord wants to
connect a player to the game via a channel invite
or a join request.
Input Arguments:-
secret - Value that links you to the server.
Return:-
None
--------------------------------------------------*/
static void DRPC_HandleJoin(const char *secret)
{
CONS_Printf("Discord: connecting to %s\n", secret);
// Yes, this is called a "secret", but we send & use it
// directly, because if you're hosting SRB2, then you've
// already made your IP address totally public.
CONS_Printf("Connecting to %s via Discord\n", secret);
COM_BufAddText(va("connect \"%s\"\n", secret));
}
//
// DRPC_Init: starting up the handles, call Discord_initalize
//
/*--------------------------------------------------
void DRPC_Init(void)
See header file for description.
--------------------------------------------------*/
void DRPC_Init(void)
{
DiscordEventHandlers handlers;
@ -77,17 +140,21 @@ void DRPC_Init(void)
}
#ifdef HAVE_CURL
#define IP_SIZE 16
static char self_ip[IP_SIZE];
/*--------------------------------------------------
static size_t DRPC_WriteServerIP(char *s, size_t size, size_t n, void *userdata)
struct SelfIPbuffer
{
CURL *curl;
char *pointer;
size_t length;
};
Writing function for use with curl. Only intended to be used with simple text.
static size_t DRPC_WriteServerIP(char *s, size_t size, size_t n, void *userdata )
Input Arguments:-
s - Data to write
size - Always 1.
n - Length of data
userdata - Passed in from CURLOPT_WRITEDATA, intended to be SelfIPbuffer
Return:-
Number of bytes wrote in this pass.
--------------------------------------------------*/
static size_t DRPC_WriteServerIP(char *s, size_t size, size_t n, void *userdata)
{
struct SelfIPbuffer *buffer;
size_t newlength;
@ -106,9 +173,13 @@ static size_t DRPC_WriteServerIP(char *s, size_t size, size_t n, void *userdata
}
#endif
//
// DRPC_GetServerIP: Gets the server's IP address, used to
//
/*--------------------------------------------------
static const char *DRPC_GetServerIP(void)
Retrieves the IP address of the server that you're
connected to. Will attempt to use curl for getting your
own IP address, if it's not yours.
--------------------------------------------------*/
static const char *DRPC_GetServerIP(void)
{
const char *address;
@ -117,7 +188,11 @@ static const char *DRPC_GetServerIP(void)
if (I_GetNodeAddress && (address = I_GetNodeAddress(servernode)) != NULL)
{
if (strcmp(address, "self"))
return address; // We're not the server, so we could successfully get the IP! No problem here :)
{
// We're not the server, so we could successfully get the IP!
// No need to do anything else :)
return address;
}
}
#ifdef HAVE_CURL
@ -133,7 +208,10 @@ static const char *DRPC_GetServerIP(void)
if (curl)
{
const char *api = "http://ip4only.me/api/"; // API to get your public IP address from
// The API to get your public IP address from.
// Picked because it's stupid simple and it's been up for a long time.
const char *api = "http://ip4only.me/api/";
struct SelfIPbuffer buffer;
CURLcode success;
@ -171,9 +249,11 @@ static const char *DRPC_GetServerIP(void)
return NULL; // Could not get your IP for whatever reason, so we cannot do Discord invites
}
//
// DRPC_UpdatePresence: Called whenever anything changes about server info
//
/*--------------------------------------------------
void DRPC_UpdatePresence(void)
See header file for description.
--------------------------------------------------*/
void DRPC_UpdatePresence(void)
{
char mapimg[8+1];
@ -271,10 +351,10 @@ void DRPC_UpdatePresence(void)
discordPresence.largeImageText = mapname; // Map name
}
if (gamestate == GS_LEVEL)
if (Playing())
{
const time_t currentTime = time(NULL);
const time_t mapTimeStart = currentTime - (leveltime / TICRATE);
const time_t mapTimeStart = currentTime - ((leveltime + (modeattacking ? starttime : 0)) / TICRATE);
discordPresence.startTimestamp = mapTimeStart;

View File

@ -19,9 +19,27 @@
extern consvar_t cv_discordrp;
/*--------------------------------------------------
void DRPC_Init(void);
Initalizes Discord Rich Presence by linking the Application ID
and setting the handler functions.
--------------------------------------------------*/
void DRPC_Init(void);
/*--------------------------------------------------
void DRPC_UpdatePresence(void);
Updates what is displayed by Rich Presence on the user's profile.
Should be called whenever something that is displayed is
changed in-game.
--------------------------------------------------*/
void DRPC_UpdatePresence(void);
#endif // HAVE_DISCORDRPC
#endif // __DISCORD__

View File

@ -4725,7 +4725,7 @@ char *G_BuildMapTitle(INT32 mapnum)
}
else if (!(mapheaderinfo[mapnum-1]->levelflags & LF_NOZONE))
{
zonetext = M_GetText("ZONE");
zonetext = M_GetText("Zone");
len += strlen(zonetext) + 1; // ' ' + zonetext
}
if (strlen(mapheaderinfo[mapnum-1]->actnum) > 0)

View File

@ -7474,7 +7474,7 @@ static void M_DrawStatsMaps(int location)
else
V_DrawString(20, y, 0, va("%s %s %s",
mapheaderinfo[mnum]->lvlttl,
(mapheaderinfo[mnum]->zonttl[0] ? mapheaderinfo[mnum]->zonttl : "ZONE"),
(mapheaderinfo[mnum]->zonttl[0] ? mapheaderinfo[mnum]->zonttl : "Zone"),
mapheaderinfo[mnum]->actnum));
y += 8;

View File

@ -2974,7 +2974,7 @@ boolean P_SetupLevel(boolean skipprecip)
snprintf(tx, 63, "%s%s%s",
mapheaderinfo[gamemap-1]->lvlttl,
(strlen(mapheaderinfo[gamemap-1]->zonttl) > 0) ? va(" %s",mapheaderinfo[gamemap-1]->zonttl) : // SRB2kart
((mapheaderinfo[gamemap-1]->levelflags & LF_NOZONE) ? "" : " ZONE"),
((mapheaderinfo[gamemap-1]->levelflags & LF_NOZONE) ? "" : " Zone"),
(strlen(mapheaderinfo[gamemap-1]->actnum) > 0) ? va(", Act %s",mapheaderinfo[gamemap-1]->actnum) : "");
V_DrawSmallString(1, 195, V_ALLOWLOWERCASE, tx);
I_UpdateNoVsync();

View File

@ -776,7 +776,7 @@ static void ST_drawLevelTitle(void)
if (zonttl[0])
zonexpos -= V_LevelNameWidth(zonttl); // SRB2kart
else
zonexpos -= V_LevelNameWidth(M_GetText("ZONE"));
zonexpos -= V_LevelNameWidth(M_GetText("Zone"));
}
if (lvlttlxpos < 0)
@ -813,7 +813,7 @@ static void ST_drawLevelTitle(void)
if (strlen(zonttl) > 0)
V_DrawLevelTitle(zonexpos, bary+6, 0, zonttl);
else if (!(mapheaderinfo[gamemap-1]->levelflags & LF_NOZONE))
V_DrawLevelTitle(zonexpos, bary+6, 0, M_GetText("ZONE"));
V_DrawLevelTitle(zonexpos, bary+6, 0, M_GetText("Zone"));
if (actnum[0])
V_DrawLevelTitle(ttlnumxpos+12, bary+6, 0, actnum);

View File

@ -233,7 +233,7 @@ static void Y_CalculateMatchData(UINT8 rankingsmode, void (*comparison)(INT32))
}
else
{
const char *zonttl = (mapheaderinfo[prevmap]->zonttl[0] ? mapheaderinfo[prevmap]->zonttl : "ZONE");
const char *zonttl = (mapheaderinfo[prevmap]->zonttl[0] ? mapheaderinfo[prevmap]->zonttl : "Zone");
if (mapheaderinfo[prevmap]->actnum[0])
snprintf(data.match.levelstring,
sizeof data.match.levelstring,