Доступ к архиву

Переход в группу "Пользователь"

300.00 ₽
Одноразовый платёж
Быстрый переход в группу "Пользователи", без надобности написания постов и ожидания.

Покупка дает возможность:
Быть полноправным участником форума
Нормальное копирование кода
Создавать темы
Скачивать файлы
Доступ к архиву Pawno-Info

Система Админ Ников.

Статус
В этой теме нельзя размещать новые ответы.

MaSyan

Новичок
Система Админ Ников (для Godfather).
Описание: Суть работы данной системы такой, в любой стандартной администраторской команде используется sendername.
То есть при использование команды где используется имя администратора выходит так (пример).

Код:
*Внимание! Aleksandr_Belov был кикнут с сервера админом James_Taylor, причина: ДМ
После установки данной системы ваш прежний ник будет заменяться на Админ Ник.
Но для этого вам придется заменить все использующиеся в (администраторских командах) sendername, на.

PHP:
PlayerInfo[playerid][pAdminName]
Пример работы данной функции.

Код:
*Внимание! Aleksandr_Belov был кикнут с сервера админом Xotab, причина: ДМ
1. В enum pinfo добавляем.

PHP:
pAdminName[32],
2. В public OnPlayerRegister добавляем.

PHP:
format(var, 32, "AdminName=NoAdmin\n", PlayerInfo[playerid][pAdminName]);fwrite(hFile, var);
3. В public OnPlayerUpdate добавляем.

PHP:
format(var, 32, "AdminName=%s\n", PlayerInfo[playerid][pAdminName]);fwrite(hFile, var);
4. В public OnPlayerLogin добавляем.

PHP:
if( strcmp( key , "AdminName" , true ) == 0 ) { val = ini_GetValue( Data ); strmid(PlayerInfo[playerid][pAdminName], val, 0, strlen
5. В public OnPlayerCommandText добавляем.

PHP:
if(strcmp(cmd, "/makeadmin", true) == 0) 
    { 
        if(IsPlayerConnected(playerid)) 
        { 
            tmp = strtok(cmdtext, idx); 
            if(!strlen(tmp)) 
            { 
                SendClientMessage(playerid, COLOR_GRAD2, "Используйте: /makeadmin [ID игрока] [level(1-4)] [ADMIN-NAME]"); 
                return 1; 
            } 
            new AdmName[32]; 
            new para1; 
            new level; 
            para1 = ReturnUser(tmp); 
            tmp = strtok(cmdtext, idx); 
            level = strval(tmp); 
            AdmName = strtok(cmdtext, idx); 
            if (!strlen(AdmName)) 
            { 
                SendClientMessage(playerid, COLOR_GREY, "Используйте: /makeadmin [ID игрока] [level(1-5)] [ADMIN-NAME]"); 
                return 1; 
            } 
            if (PlayerInfo[playerid][pAdmin] >= 5) 
            { 
                if(IsPlayerConnected(para1)) 
                { 
                    if(para1 != INVALID_PLAYER_ID) 
                    { 
                        GetPlayerName(para1, giveplayer, sizeof(giveplayer)); 
                        GetPlayerName(playerid, sendername, sizeof(sendername)); 
                        PlayerInfo[para1][pAdmin] = level; 
                        format(string, sizeof(string), "%s", AdmName); 
                        strmid(PlayerInfo[para1][pAdminName], string, 0, strlen(string), 255); 
                        if(level > 0) 
                        { 
                            printf("*Внимание! %s был назначен администратором %d-го уровня администратором %s, Админ-ник: %s", giveplayer, level, PlayerInfo[playerid][pAdminName], AdmName); 
                            format(string, sizeof(string), "   Вы были назначены администратором %d-го уровня администратором %s. Ваш админ-ник: [%s]", level, PlayerInfo[playerid][pAdminName], AdmName); 
                            SendClientMessage(para1, COLOR_LIGHTBLUE, string); 
                            format(string, sizeof(string), "   Вы назначили %s администратором %d-го уровня, Админ-ник: %s", giveplayer,level, AdmName); 
                            SendClientMessage(playerid, COLOR_LIGHTBLUE, string); 
                        } 
                        if(level < 1) 
                        { 
                            printf("*Внимание! %s был снят с администрирования администратором %s", giveplayer, PlayerInfo[playerid][pAdminName]); 
                            format(string, sizeof(string), "   Вы были сняты с администрирования администратором %s", PlayerInfo[playerid][pAdminName]); 
                            SendClientMessage(para1, COLOR_LIGHTBLUE, string); 
                            format(string, sizeof(string), "   Вы сняли %s с администрирования", giveplayer); 
                            SendClientMessage(playerid, COLOR_LIGHTBLUE, string); 
                        } 
                    } 
                } 
            } 
        } 
        return 1; 
    }
Урок от MaSyan`a (Габидуллин А.А)

ВАЖНО: Данная функция была проверена на игровом моде Godfather. Если у вас возникнут какие либо вопросы по данной функции, вы можете задать их здесь. С радостью вам помогу.
 
Последнее редактирование:
Статус
В этой теме нельзя размещать новые ответы.
Сверху Снизу