Skip to content

Commit aebfb23

Browse files
committed
Reworked AlertMessage
1 parent 0af97d9 commit aebfb23

File tree

1 file changed

+36
-31
lines changed

1 file changed

+36
-31
lines changed

rehlds/engine/sys_dll.cpp

+36-31
Original file line numberDiff line numberDiff line change
@@ -1150,46 +1150,51 @@ void EXT_FUNC EngineFprintf(void *pfile, const char *szFmt, ...)
11501150

11511151
void EXT_FUNC AlertMessage(ALERT_TYPE atype, const char *szFmt, ...)
11521152
{
1153+
char szOut[2048];
11531154
va_list argptr;
1154-
static char szOut[1024];
11551155

1156-
va_start(argptr, szFmt);
11571156
if (atype == at_logged && g_psvs.maxclients > 1)
11581157
{
1158+
va_start(argptr, szFmt);
11591159
Q_vsnprintf(szOut, sizeof(szOut), szFmt, argptr);
1160+
va_end(argptr);
1161+
11601162
Log_Printf("%s", szOut);
1163+
return;
11611164
}
1162-
else if (developer.value != 0.0f)
1165+
1166+
if (!developer.value)
1167+
return;
1168+
1169+
if (atype == at_aiconsole && developer.value < 2)
1170+
return;
1171+
1172+
va_start(argptr, szFmt);
1173+
Q_vsnprintf(szOut, sizeof(szOut), szFmt, argptr);
1174+
va_end(argptr);
1175+
1176+
switch (atype)
11631177
{
1164-
switch (atype)
1165-
{
1166-
case at_notice:
1167-
Q_strcpy(szOut, "NOTE: ");
1168-
break;
1169-
case at_console:
1170-
szOut[0] = 0;
1171-
break;
1172-
case at_aiconsole:
1173-
if (developer.value < 2.0f)
1174-
return;
1175-
szOut[0] = 0;
1176-
break;
1177-
case at_warning:
1178-
Q_strcpy(szOut, "WARNING: ");
1179-
break;
1180-
case at_error:
1181-
Q_strcpy(szOut, "ERROR: ");
1182-
break;
1183-
case at_logged:
1184-
break;
1185-
default:
1186-
break;
1187-
}
1188-
int iLen = Q_strlen(szOut);
1189-
Q_vsnprintf(&szOut[iLen], sizeof(szOut) - iLen, szFmt, argptr);
1178+
case at_notice:
1179+
Con_Printf("NOTE: %s", szOut);
1180+
break;
1181+
case at_console:
1182+
break;
1183+
case at_aiconsole:
1184+
Con_Printf("%s", szOut);
1185+
break;
1186+
case at_warning:
1187+
Con_Printf("WARNING: %s", szOut);
1188+
break;
1189+
case at_error:
1190+
Con_Printf("ERROR: %s", szOut);
1191+
break;
1192+
case at_logged:
11901193
Con_Printf("%s", szOut);
1194+
break;
1195+
default:
1196+
break;
11911197
}
1192-
va_end(argptr);
11931198
}
11941199

11951200
NOXREF void Sys_SplitPath(const char *path, char *drive, char *dir, char *fname, char *ext)
@@ -1326,7 +1331,7 @@ void Con_Printf(const char *fmt, ...)
13261331
va_start(va, fmt);
13271332
Q_vsnprintf(Dest, sizeof(Dest), fmt, va);
13281333
va_end(va);
1329-
1334+
13301335
g_RehldsHookchains.m_Con_Printf.callChain(Con_Printf_internal, Dest);
13311336
}
13321337

0 commit comments

Comments
 (0)