помогите с плагином который блокирует стандартные сообщения о подключении и отключении

Edmon666

Участник
Сообщения
24
Реакции
0
хочу чтобы при подключении писался стим и айпи чтобы в настройках можно было их изменить причина отключения "отключился - Disconnect by user." или "отключился - Игрок Забанен!" при этом игроку выводит тоже сообщение ( причину) если у кого есть такой плагин выложите в этой теме. Спасибо!
PHP:
#include <sourcemod>
new String:teams[3][] = {"\x03Наблюдателям \x03","\x03Террористам","\x03Контр-Террористам"}

public Plugin:myinfo =
{
    name = "Game Joing",
    author = "GuDMan / RuskyDubl",
    description = "",
    version = "1.0",
    url = "N/A"
}
public OnPluginStart()
{
    HookEvent("player_disconnect", event_PlayerConn, EventHookMode_Pre);
    HookEvent("player_connect", event_PlayerConn, EventHookMode_Pre);
    HookEvent("player_team", event_PlayerTeam, EventHookMode_Pre);
}
//GameEvents Begin
public Action:event_PlayerTeam(Handle:event, const String:name[], bool:dontBroadcast)
{
    new client=GetClientOfUserId(GetEventInt(event, "userid"))
    if (!dontBroadcast && !GetEventBool(event,"disconnect") && !GetEventBool(event,"silent") && IsClientConnected(client))
    {
        SetEventBroadcast(event, true);
        PrintToChatAll("\x04[RGD] \x01Игрок \x03%N \x01присоеденился к \x03%s",client,teams[GetEventInt(event,"team")-1]);
    }
}
public Action:event_PlayerConn(Handle:event, const String:name[], bool:dontBroadcast)
{
    if (!dontBroadcast)
        SetEventBroadcast(event, true);
    decl String:rawmsg[255];
    decl String:rawadmmsg[255];
    decl String:steam[24];
    decl String:nick[48];
    decl String:ip[16];
    decl String:reason[192];
    GetEventString(event, "networkid", steam, sizeof(steam));
    GetEventString(event, "name", nick, sizeof(nick));
    if (strcmp(name,"player_connect"))
    {
        new client=GetClientOfUserId(GetEventInt(event,"userid"))
        if(client<1) return;
        GetEventString(event, "reason", reason, sizeof(reason));
        GetClientIP(client, ip, sizeof(ip)); // В player_disconnect нет address
        ReplaceString(reason, sizeof(reason), "\n", " ");
        Format(rawadmmsg,sizeof(rawadmmsg),"\x04[RGD] \x03%s \x01отключился - \x03Disconnect by user.", nick, reason);
        Format(rawmsg,sizeof(rawmsg),"\x04[RGD] \x03%s \x01отключился - \x03Disconnect by user.", nick, reason);
    }
    else
    { 
        GetEventString(event, "address", ip, sizeof(ip));
        SplitString(ip,":",ip,sizeof(ip));
        Format(rawmsg,sizeof(rawmsg), "\x04[RGD] \x03%s \x01вступает в игру \x03✔", nick);
        Format(rawadmmsg,sizeof(rawadmmsg), "\x04[RGD] \x03%s \x01вступает в игру \x03✔", nick);
    }
 
    for (new i = 1; i <= MaxClients; i++)
        if(IsClientConnected(i) && IsClientInGame(i))
            if (GetUserFlagBits(i))
                PrintToChat(i, "%s", rawadmmsg);
            else
                PrintToChat(i, "%s", rawmsg);
}
 

Вложения

  • joinservers.sp
    2.5 КБ · Просмотры: 20
Последнее редактирование:

AlmazON

Не путать с самим yand3xmail
Сообщения
5,099
Реакции
2,755
писался стим и айпи чтобы в настройках можно было их изменить причина отключения "отключился - Disconnect by user." или "отключился - Игрок Забанен!" при этом игроку выводит тоже сообщение ( причину)
Ничего толком не понял. Оффтоп То ли настройки, чтобы можно было отключать показ Стима/IP, то ли свою причину разрешить указывать, то ли просто её показывать, как она есть на самом деле.
 

Edmon666

Участник
Сообщения
24
Реакции
0
Ничего толком не понял. Оффтоп То ли настройки, чтобы можно было отключать показ Стима/IP, то ли свою причину разрешить указывать, то ли просто её показывать, как она есть на самом деле.
При подключении пишет "ник игрока вступает в игру " и выводит стим его или айпи ну или на выбор, при выходе выводится сообщение "игрок покинул сервер" и если он забанен то выводит что игрок забанен и настройки чтобы можно было управлять плагином
 

Черная вдова

Участник
Сообщения
2,795
Реакции
670
Оффтоп
 
Сверху Снизу