/* =============== SV_GetUserinfo =============== */ void SV_GetUserinfo(int index, char *buffer, int bufferSize) { if (bufferSize < 1) { Com_Error(ERR_DROP, "SV_GetUserinfo: bufferSize == %i", bufferSize); } if (index < 0 || index >= sv_maxclients->integer) { Com_Error(ERR_DROP, "SV_GetUserinfo: bad index %i", index); } Q_strncpyz(buffer, svs.clients[index].userinfo, bufferSize); // Save userinfo changes to demo (also in SV_UpdateUserinfo_f() in sv_client.c) if (sv.demoState == DS_RECORDING) { SV_DemoWriteClientUserinfo(&svs.clients[index], buffer); } }
/** * @brief SV_SetUserinfo * @param[in] index * @param[in] val */ void SV_SetUserinfo(int index, const char *val) { if (index < 0 || index >= sv_maxclients->integer) { Com_Error(ERR_DROP, "SV_SetUserinfo: bad index %i", index); } if (!val) { val = ""; } Q_strncpyz(svs.clients[index].userinfo, val, sizeof(svs.clients[index].userinfo)); Q_strncpyz(svs.clients[index].name, Info_ValueForKey(val, "name"), sizeof(svs.clients[index].name)); // Save userinfo changes to demo (also in SV_UpdateUserinfo_f() in sv_client.c) if (sv.demoState == DS_RECORDING) { SV_DemoWriteClientUserinfo(&svs.clients[index], val); } }