Nekro
Терра инкогнита
- Сообщения
- 4,025
- Реакции
- 2,260
Увидел эту тему Спам подключений игрока.
И у самого на серверах начался этот спам, в связи с этим сделал блокировку вот таким образом
И у самого на серверах начался этот спам, в связи с этим сделал блокировку вот таким образом
C-подобный:
char
sFile[PLATFORM_MAX_PATH];
public Plugin myinfo =
{
name = "Check Connect",
author = "Nek.'a 2x2 | ggwp.site ",
description = "Блировка подключения с ников Дискорда",
version = "1.0.2",
url = "https://ggwp.site/"
}
public void OnPluginStart()
{
BuildPath(Path_SM, sFile, sizeof(sFile), "logs/check_block.log");
HookEvent("player_disconnect", OnConn, EventHookMode_Pre);
HookEvent("player_connect", OnConn, EventHookMode_Pre);
if(HookEventEx("player_connect_client", OnConClient, EventHookMode_Pre))
HookEvent("player_connect_client", OnConClient, EventHookMode_Pre);
}
Action OnConClient(Handle event, const char[] name, bool dontBroadcast)
{
SetEventBroadcast(event, true);
return Plugin_Handled;
}
Action OnConn(Event event, const char[] name, bool dontBroadcast)
{
int client = GetClientOfUserId(event.GetInt("userid"));
if(!(0 < client <= MaxClients))
return Plugin_Continue;
if(IsFakeClient(client))
return Plugin_Continue;
char sName[MAX_NAME_LENGTH];
GetClientName(client, sName, sizeof(sName));
if(StrContains(sName, "discord.gg") != -1)
{
LogToFile(sFile, "Ник игрока %N вывод остановлен", client);
return Plugin_Handled;
}
return Plugin_Continue;
//else
// LogToFile(sFile, "Ник игрока %N плагин информирует", client);
}