Если Вы нашли ответ на вопрос, пожалуйста, пометьте необходимый ответ лучшим (галочка сбоку от сообщения) и поблагодарите автора этого ответа поднятием репутации (плюс в нижней правой части сообщения). Спасибо.
Подробнее:
FAQ по форуму
Как пометить ответ лучшим

Рекомендованные сообщения



26 posts in this topic

1. Помогите, как сделать что бы с папки "scriptfiles" лежала музыка и запускалась при авторизации например в /alogin

2. И так же как сделать что бы при авторизации администратора писалось какой администратор. Например: "Разработчик сервера на дежурстве" (При ввода команды в чат)

 

Edited by Daniil Roslyakov

Share this post


Link to post
Share on other sites

@Daniil Roslyakov 1. Никак. Музыка запускается только по URL. 

2. У вас есть массив с рангами администратора, например скиньте команду /admins. 

Share this post


Link to post
Share on other sites

@stibs 1. А как сделать свою музыку по ссылке?
2. 

Спойлер

CMD:admins(playerid)
{
    if(PI[playerid][pAdmin] > 0 || PI[playerid][pVip])
    {
        new str[100];
        SCM(playerid, COLOR_LIME, "Администрация в сети:");
        foreach(new i: Player)
        {
            if(!PlayerLogged) continue;
            if(PI[pAdmin] > 0 && PI[pAdmin] < 8)
            {
                format(str, sizeof(str), "%s[%d] (%i lvl) | Выговоры: %d/3", GetName(i), i, PI[pAdmin],AdminInfo[admWarns]);
                if(PI[pAFK] >= 3) format(str, sizeof(str), "%s {FF9900}AFK %s", str, Converts(PI[pAFK]));
                //else if(PI[Spectating] != INVALID_PLAYER_ID && PI[pAFK] < 3) format(str, sizeof(str), "%s {FF0000}/spec %i", str, PI[Spectating]);
                //else if(PI[Spectating] != INVALID_PLAYER_ID && PI[pAFK] >= 3) format(str, sizeof(str), "%s {FF9900}AFK %s {FF0000}/spec %i", str, Converts(PI[pAFK]), PI[Spectating]);
                SCM(playerid, COLOR_WHITE, str);
            }
        }
        new string[128];
        format(string, sizeof(string), "Время администратирования за сегодня: %i минут", AdminInfo[playerid][admPlayOnline]/60);
        SCM(playerid, COLOR_YELLOW, string);
    }
    return 1;
}

 

 

Edited by stibs

Share this post


Link to post
Share on other sites

@Daniil Roslyakov Использование спойлера с кодом для подсветки синтаксиса

1. Можно залить на какой-нибудь сайт и вставить прямую ссылку для проигрывания. Если нужна одна песня могу сюда залить и дать вам ссылку. 

2. Скиньте массив или команду в котором перечисляются названия рангов администраторских. Например Основатель, Главный администратор и пр. 

Share this post


Link to post
Share on other sites

@stibs 1. В том и дело я не знаю какой сайт :(

 

Спойлер

CMD:a(playerid,params[])
{
    if(PI[playerid][pAdmin] < 1) return 1;
    else if(AdminLogged[playerid] == false) return SCM(playerid, COLOR_GREY, YouAreNotLoggedInAsAdmin);
    else if(isnull(params)) return SCM(playerid, COLOR_WHITE, "• {66CC00}[ Подсказка ] {ffffff}Введите: /a [текст]");
    else if(TextReset[playerid] > gettime() && GetString(OldMessage[playerid], params[0])) return SCM(playerid, COLOR_GREY, "Не флуди");
    new string[128];
    static const Admin_Names[8][32] = {"Мл.Модератор","Модератор","Ст.Модератор","Мл.Администратор","Администратор","Ст.Администратор","Заместитель","Разработчик"};
    format(string, sizeof(string), "[A] %s %s [%d]: %s", Admin_Names[PI[playerid][pAdmin]-1], GetName(playerid), playerid, params[0]);
    SendAdminMessage(COLOR_LIME, string);
    SetString(OldMessage[playerid], params[0]);
    TextReset[playerid] = gettime()+3;
    SendLog("Adminlog",string);
    return 1;
}

 

 

Edited by stibs

Share this post


Link to post
Share on other sites

@stibs 2. 

Спойлер

CMD:alogin(playerid)
{
    if(GetPVarInt(playerid, "check_alogin") > gettime()) return 1;
    else if(AdminLogged[playerid]) return SCM(playerid, COLOR_DARKORANGE, "Вы уже авторизовались как администратор!");
     new string[128];
    format(string, sizeof(string), "SELECT * FROM "T_ADMIN" WHERE `name` = '%s'", GetName(playerid));
    mysql_tquery(dbHandle, string, "Alogin", "is", playerid, GetName(playerid));
     SetPVarInt(playerid, "check_alogin", gettime()+5);
     return 1;
}

 

 

Edited by stibs

Share this post


Link to post
Share on other sites

@stibs 

Спойлер

       


case D_ALOGIN:
        {
            if(!response) return Kick(playerid), SCM(playerid, COLOR_RED, "Вы должны обязательно ввести пароль администратора. Вы были кикнуты с сервера."), SCM(playerid, COLOR_RED, "Сообщите основателю, если забыли пароль от АЦ.");
            new string[144];
            switch(GetPVarInt(playerid,"aLogin"))
            {
                case 1:
                {
                    if(!strlen(inputtext)|| !strcmp(inputtext, "qwerty", true) || strlen(inputtext) < 4 || strlen(inputtext) > 16 || strfind(inputtext, "=", true) != -1)
                        return ShowPlayerDialog(playerid, D_ALOGIN, DIALOG_STYLE_PASSWORD, "{FFCC00}Регистрация администратора", "{FFFFFF}Введите пароль, который будет от панели администратора\n\n{63BD4E}Примечание:\n\t- Пароль должен состоять из латинских букв и цифр\n\t- Размер пароля от 4 до 15 символов", "Принять", "Отмена");
                    SetPVarString(playerid, "inputtext", inputtext);
                    mysql_format(dbHandle, string, sizeof(string), "SELECT * FROM "T_ADMIN" WHERE `name` = '%s'", GetName(playerid));
                    mysql_tquery(dbHandle, string, "AloginReg", "is", playerid, GetName(playerid));
                }
                case 0:
                {
                    if(!strlen(inputtext)) return ShowPlayerDialog(playerid, D_ALOGIN, DIALOG_STYLE_PASSWORD, "{FFCC00}Доступ администратора", "{FFFFFF}Введите Ваш пароль от панели администратора", "Принять", "Отмена");
                    mysql_format(dbHandle, string, sizeof(string), "SELECT * FROM "T_ADMIN" WHERE `name` = '%s' AND `password` = '%e'", GetName(playerid), inputtext);
                    mysql_tquery(dbHandle, string, "AloginAuth", "is", playerid, inputtext);
                }
            }
            return 1;
         }
    }
    return 1;
}

 

 

Edited by stibs

Share this post


Link to post
Share on other sites

@stibs 

Спойлер

forward AloginAuth(playerid, inputtext[]);
public AloginAuth(playerid, inputtext[])
{
     new rows, fields;
    cache_get_data(rows, fields);
    if(!rows)
    {
        SCM(playerid, COLOR_GREY, "[Ошибка] Неверный пароль");
        SetPVarInt(playerid, "attempt_pass", GetPVarInt(playerid, "attempt_pass") + 1);
        if(GetPVarInt(playerid, "attempt_pass") > 3)
        {
            DeletePVar(playerid, "attempt_pass");
            return SKick(playerid, 2112);
        }
    }
    else
    {
        AdminLogged[playerid] = true;
        PI[playerid][pAdmin] = cache_get_row_int(0, 1, dbHandle);
        AdminInfo[playerid][admGoto] = cache_get_row_int(0, 6, dbHandle);
        AdminInfo[playerid][admGethere] = cache_get_row_int(0, 7, dbHandle);
        AdminInfo[playerid][admSpectate] = cache_get_row_int(0, 8, dbHandle);
        AdminInfo[playerid][admKicked] = cache_get_row_int(0, 16, dbHandle);
        cache_get_row(0, 17, AdminInfo[playerid][admKickedReason], dbHandle, 32);
        AdminInfo[playerid][admSKicked] = cache_get_row_int(0, 18, dbHandle);
        AdminInfo[playerid][admWarned] = cache_get_row_int(0, 19, dbHandle);
           cache_get_row(0, 20, AdminInfo[playerid][admWarnedReason], dbHandle, 32);
        AdminInfo[playerid][admOffWarned] = cache_get_row_int(0, 21, dbHandle);
        cache_get_row(0, 22, AdminInfo[playerid][admOffWarnedReason], dbHandle, 32);
        AdminInfo[playerid][admBaned] = cache_get_row_int(0, 23, dbHandle);
        cache_get_row(0, 24, AdminInfo[playerid][admBanedReason], dbHandle, 32);
        AdminInfo[playerid][admOffBaned] = cache_get_row_int(0, 25, dbHandle);
        cache_get_row(0, 26, AdminInfo[playerid][admOffBanedReason], dbHandle, 32);
        AdminInfo[playerid][admMuted] = cache_get_row_int(0, 27, dbHandle);
        cache_get_row(0, 28, AdminInfo[playerid][admMutedReason], dbHandle, 32);
        AdminInfo[playerid][admAnsed] = cache_get_row_int(0, 29, dbHandle);
        cache_get_row(0, 30, AdminInfo[playerid][admAnsedText], dbHandle, 64);
        AdminInfo[playerid][admWarns] = cache_get_row_int(0, 31, dbHandle);
        AdminInfo[playerid][admPlayOnline] = cache_get_row_int(0, 32, dbHandle);
        
        /*new who_load[64];
         format(who_load, sizeof(who_load), "online_%s", getDay());
           cache_get_field_content(0, who_load, AdminInfo[playerid][admPlayOnline]);*/
           
         new string[256];
        static const Admin_Names[8][32] = {"Мл.Модератор","Модератор","Ст.Модератор","Мл.Администратор","Администратор","Ст.Администратор","Заместитель","Разработчик"};
        if(PI[playerid][pSex] == 1 && PI[playerid][pAdmin] != 8) format(string, sizeof(string), "[A] %s %s[%i] вошёл в систему администратирования", Admin_Names[PI[playerid][pAdmin]-1], GetName(playerid), playerid),SendAdminMessage(COLOR_GREY, string);
        else if(PI[playerid][pSex] == 2 && PI[playerid][pAdmin] != 8)  format(string, sizeof(string), "[A] %s {FFFFFF}%s[%i] вошла в систему администратирования", Admin_Names[PI[playerid][pAdmin]-1], GetName(playerid), playerid),SendAdminMessage(COLOR_GREY, string);
          new Query[156];
        format(Query, sizeof(Query), "UPDATE "T_ADMIN" SET `last_connect` = CURDATE() WHERE `name` = '%s' LIMIT 1",GetName(playerid));
        mysql_tquery(dbHandle, Query, "", "");
        MysqlUpdatePlayerInt(playerid, "admin", PI[playerid][pAdmin]);
        
        if(AdminInfo[playerid][admWarns] >= 3 && PI[playerid][pAdmin] < 8)
        {
            PI[playerid][pAdmin] --,AdminInfo[playerid][admWarns] = 0;
            switch(PI[playerid][pAdmin])
            {
                case 0,1: f(string,"[A] Администратор %s[%d] был снят. Причина: 3 выговора"),SCM(playerid,COLOR_WHITE,"Вы были сняты по причине 3-ёх выговоров."),RemoveAdmin(playerid, GetName(playerid));
                default: f(string,"[A] Администратор %s[%d] был понижен до %d-ого уровня. Причина: 3 выговора",PI[playerid][pName],playerid,PI[playerid][pAdmin]),SCM(playerid,COLOR_WHITE,"Вы были понижены по причине 3-ёх выговоров! Больше не нарушайте админ.правил!");
            }
            SendAdminMessage(COLOR_GREY, string);
        }
    }
    return 1;
}


 

 

Edited by stibs

Share this post


Link to post
Share on other sites

У вас итак в этой системе выводится ранг администратора, который вошел. Или я неправильно понял Вас?

Share this post


Link to post
Share on other sites

@stibs Что бы над головой отображалась после того как пропишет человек /alogin

 

Share this post


Link to post
Share on other sites

@Daniil Roslyakov ну так сразу так и надо было говорить :)

Спойлер

forward AloginAuth(playerid, inputtext[]);
public AloginAuth(playerid, inputtext[])
{
     new rows, fields;
    cache_get_data(rows, fields);
    if(!rows)
    {
        SCM(playerid, COLOR_GREY, "[Ошибка] Неверный пароль");
        SetPVarInt(playerid, "attempt_pass", GetPVarInt(playerid, "attempt_pass") + 1);
        if(GetPVarInt(playerid, "attempt_pass") > 3)
        {
            DeletePVar(playerid, "attempt_pass");
            return SKick(playerid, 2112);
        }
    }
    else
    {
        AdminLogged[playerid] = true;
        PI[playerid][pAdmin] = cache_get_row_int(0, 1, dbHandle);
        AdminInfo[playerid][admGoto] = cache_get_row_int(0, 6, dbHandle);
        AdminInfo[playerid][admGethere] = cache_get_row_int(0, 7, dbHandle);
        AdminInfo[playerid][admSpectate] = cache_get_row_int(0, 8, dbHandle);
        AdminInfo[playerid][admKicked] = cache_get_row_int(0, 16, dbHandle);
        cache_get_row(0, 17, AdminInfo[playerid][admKickedReason], dbHandle, 32);
        AdminInfo[playerid][admSKicked] = cache_get_row_int(0, 18, dbHandle);
        AdminInfo[playerid][admWarned] = cache_get_row_int(0, 19, dbHandle);
           cache_get_row(0, 20, AdminInfo[playerid][admWarnedReason], dbHandle, 32);
        AdminInfo[playerid][admOffWarned] = cache_get_row_int(0, 21, dbHandle);
        cache_get_row(0, 22, AdminInfo[playerid][admOffWarnedReason], dbHandle, 32);
        AdminInfo[playerid][admBaned] = cache_get_row_int(0, 23, dbHandle);
        cache_get_row(0, 24, AdminInfo[playerid][admBanedReason], dbHandle, 32);
        AdminInfo[playerid][admOffBaned] = cache_get_row_int(0, 25, dbHandle);
        cache_get_row(0, 26, AdminInfo[playerid][admOffBanedReason], dbHandle, 32);
        AdminInfo[playerid][admMuted] = cache_get_row_int(0, 27, dbHandle);
        cache_get_row(0, 28, AdminInfo[playerid][admMutedReason], dbHandle, 32);
        AdminInfo[playerid][admAnsed] = cache_get_row_int(0, 29, dbHandle);
        cache_get_row(0, 30, AdminInfo[playerid][admAnsedText], dbHandle, 64);
        AdminInfo[playerid][admWarns] = cache_get_row_int(0, 31, dbHandle);
        AdminInfo[playerid][admPlayOnline] = cache_get_row_int(0, 32, dbHandle);
        
        /*new who_load[64];
         format(who_load, sizeof(who_load), "online_%s", getDay());
           cache_get_field_content(0, who_load, AdminInfo[playerid][admPlayOnline]);*/
           
         new string[256];
        static const Admin_Names[8][32] = {"Мл.Модератор","Модератор","Ст.Модератор","Мл.Администратор","Администратор","Ст.Администратор","Заместитель","Разработчик"};
        if(PI[playerid][pSex] == 1 && PI[playerid][pAdmin] != 8) format(string, sizeof(string), "[A] %s %s[%i] вошёл в систему администратирования", Admin_Names[PI[playerid][pAdmin]-1], GetName(playerid), playerid),SendAdminMessage(COLOR_GREY, string);
        else if(PI[playerid][pSex] == 2 && PI[playerid][pAdmin] != 8)  format(string, sizeof(string), "[A] %s {FFFFFF}%s[%i] вошла в систему администратирования", Admin_Names[PI[playerid][pAdmin]-1], GetName(playerid), playerid),SendAdminMessage(COLOR_GREY, string);
      new str[33];
      format(str, sizeof(str), "%s", Admin_Names[PI[playerid][pAdmin]-1);
      new Text:AdminRang;
      AdminRang = Create3DTextLabel(str, -1, 0.0, 0.0, 0.0, 30.0, 0, 0); 
       Attach3DTextLabelToPlayer(AdminRang, playerid, 0.0, 0.0, 0.0);
          new Query[156];
        format(Query, sizeof(Query), "UPDATE "T_ADMIN" SET `last_connect` = CURDATE() WHERE `name` = '%s' LIMIT 1",GetName(playerid));
        mysql_tquery(dbHandle, Query, "", "");
        MysqlUpdatePlayerInt(playerid, "admin", PI[playerid][pAdmin]);
        
        if(AdminInfo[playerid][admWarns] >= 3 && PI[playerid][pAdmin] < 8)
        {
            PI[playerid][pAdmin] --,AdminInfo[playerid][admWarns] = 0;
            switch(PI[playerid][pAdmin])
            {
                case 0,1: f(string,"[A] Администратор %s[%d] был снят. Причина: 3 выговора"),SCM(playerid,COLOR_WHITE,"Вы были сняты по причине 3-ёх выговоров."),RemoveAdmin(playerid, GetName(playerid));
                default: f(string,"[A] Администратор %s[%d] был понижен до %d-ого уровня. Причина: 3 выговора",PI[playerid][pName],playerid,PI[playerid][pAdmin]),SCM(playerid,COLOR_WHITE,"Вы были понижены по причине 3-ёх выговоров! Больше не нарушайте админ.правил!");
            }
            SendAdminMessage(COLOR_GREY, string);
        }
    }
    return 1;
}

 

 

Share this post


Link to post
Share on other sites

@stibs так об этом я и пытался вам сказать, но походу не написал где то что именно и запустались

Share this post


Link to post
Share on other sites

@stibs 

Спойлер

J:åðâåð TimePlay RolePlayîä\gamemodes\stel.pwn(31312) : warning 217: loose indentation
J:åðâåð TimePlay RolePlayîä\gamemodes\stel.pwn(31334) : warning 217: loose indentation
J:åðâåð TimePlay RolePlayîä\gamemodes\stel.pwn(31335) : warning 217: loose indentation
J:åðâåð TimePlay RolePlayîä\gamemodes\stel.pwn(31352) : warning 217: loose indentation
J:åðâåð TimePlay RolePlayîä\gamemodes\stel.pwn(31353) : warning 217: loose indentation
J:åðâåð TimePlay RolePlayîä\gamemodes\stel.pwn(31356) : warning 217: loose indentation
J:åðâåð TimePlay RolePlayîä\gamemodes\stel.pwn(31357) : error 001: expected token: "]", but found ")"
J:åðâåð TimePlay RolePlayîä\gamemodes\stel.pwn(31359) : warning 213: tag mismatch
J:åðâåð TimePlay RolePlayîä\gamemodes\stel.pwn(31360) : warning 217: loose indentation
J:åðâåð TimePlay RolePlayîä\gamemodes\stel.pwn(31360) : warning 213: tag mismatch
J:åðâåð TimePlay RolePlayîä\gamemodes\stel.pwn(31361) : warning 217: loose indentation
J:åðâåð TimePlay RolePlayîä\gamemodes\stel.pwn(31362) : warning 217: loose indentation
Pawn compiler 3.10.20150531              Copyright (c) 1997-2006, ITB CompuPhase

1 Error.


    cache_get_data(rows, fields);

 

 

Edited by stibs

Share this post


Link to post
Share on other sites

Код лесенкой поправьте, есть программы, которые табулируют все сами. 

Вот эту строку замените у себя в коде

format(str, sizeof(str), "%s", Admin_Names[PI[playerid][pAdmin]-1]);

Если будут еще ошибки выкладывайте строки. 

Share this post


Link to post
Share on other sites

@stibs 

Спойлер

J:\Ñåðâåð TimePlay RolePlay\Ìîä\gamemodes\stel.pwn(31312) : error 017: undefined symbol "str"
J:\Ñåðâåð TimePlay RolePlay\Ìîä\gamemodes\stel.pwn(31312) : error 017: undefined symbol "str"
J:\Ñåðâåð TimePlay RolePlay\Ìîä\gamemodes\stel.pwn(31312) : warning 215: expression has no effect
J:\Ñåðâåð TimePlay RolePlay\Ìîä\gamemodes\stel.pwn(31312) : error 001: expected token: ";", but found "]"
J:\Ñåðâåð TimePlay RolePlay\Ìîä\gamemodes\stel.pwn(31312) : fatal error 107: too many error messages on one line

Compilation aborted.

Pawn compiler 3.10.20150531              Copyright (c) 1997-2006, ITB CompuPhase


4 Errors.


 

Спойлер

     format(str, sizeof(str), "%s", Admin_Names[PI[playerid][pAdmin]-1]);

 

Share this post


Link to post
Share on other sites
Спойлер

forward AloginAuth(playerid, inputtext[]);
public AloginAuth(playerid, inputtext[])
{
     new rows, fields;
    cache_get_data(rows, fields);
    if(!rows)
    {
        SCM(playerid, COLOR_GREY, "[Ошибка] Неверный пароль");
        SetPVarInt(playerid, "attempt_pass", GetPVarInt(playerid, "attempt_pass") + 1);
        if(GetPVarInt(playerid, "attempt_pass") > 3)
        {
            DeletePVar(playerid, "attempt_pass");
            return SKick(playerid, 2112);
        }
    }
    else
    {
        AdminLogged[playerid] = true;
        PI[playerid][pAdmin] = cache_get_row_int(0, 1, dbHandle);
        AdminInfo[playerid][admGoto] = cache_get_row_int(0, 6, dbHandle);
        AdminInfo[playerid][admGethere] = cache_get_row_int(0, 7, dbHandle);
        AdminInfo[playerid][admSpectate] = cache_get_row_int(0, 8, dbHandle);
        AdminInfo[playerid][admKicked] = cache_get_row_int(0, 16, dbHandle);
        cache_get_row(0, 17, AdminInfo[playerid][admKickedReason], dbHandle, 32);
        AdminInfo[playerid][admSKicked] = cache_get_row_int(0, 18, dbHandle);
        AdminInfo[playerid][admWarned] = cache_get_row_int(0, 19, dbHandle);
           cache_get_row(0, 20, AdminInfo[playerid][admWarnedReason], dbHandle, 32);
        AdminInfo[playerid][admOffWarned] = cache_get_row_int(0, 21, dbHandle);
        cache_get_row(0, 22, AdminInfo[playerid][admOffWarnedReason], dbHandle, 32);
        AdminInfo[playerid][admBaned] = cache_get_row_int(0, 23, dbHandle);
        cache_get_row(0, 24, AdminInfo[playerid][admBanedReason], dbHandle, 32);
        AdminInfo[playerid][admOffBaned] = cache_get_row_int(0, 25, dbHandle);
        cache_get_row(0, 26, AdminInfo[playerid][admOffBanedReason], dbHandle, 32);
        AdminInfo[playerid][admMuted] = cache_get_row_int(0, 27, dbHandle);
        cache_get_row(0, 28, AdminInfo[playerid][admMutedReason], dbHandle, 32);
        AdminInfo[playerid][admAnsed] = cache_get_row_int(0, 29, dbHandle);
        cache_get_row(0, 30, AdminInfo[playerid][admAnsedText], dbHandle, 64);
        AdminInfo[playerid][admWarns] = cache_get_row_int(0, 31, dbHandle);
        AdminInfo[playerid][admPlayOnline] = cache_get_row_int(0, 32, dbHandle);
        
        /*new who_load[64];
         format(who_load, sizeof(who_load), "online_%s", getDay());
           cache_get_field_content(0, who_load, AdminInfo[playerid][admPlayOnline]);*/
           
         new string[256];
        static const Admin_Names[8][32] = {"Мл.Модератор","Модератор","Ст.Модератор","Мл.Администратор","Администратор","Ст.Администратор","Заместитель","Разработчик"};
        if(PI[playerid][pSex] == 1 && PI[playerid][pAdmin] != 8) format(string, sizeof(string), "[A] %s %s[%i] вошёл в систему администратирования", Admin_Names[PI[playerid][pAdmin]-1], GetName(playerid), playerid),SendAdminMessage(COLOR_GREY, string);
        else if(PI[playerid][pSex] == 2 && PI[playerid][pAdmin] != 8)  format(string, sizeof(string), "[A] %s {FFFFFF}%s[%i] вошла в систему администратирования", Admin_Names[PI[playerid][pAdmin]-1], GetName(playerid), playerid),SendAdminMessage(COLOR_GREY, string);
      new str[33];
      format(str, sizeof(str), "%s", Admin_Names[PI[playerid][pAdmin]-1]);
      new Text:AdminRang;
      AdminRang = Create3DTextLabel(str, -1, 0.0, 0.0, 0.0, 30.0, 0, 0); 
       Attach3DTextLabelToPlayer(AdminRang, playerid, 0.0, 0.0, 0.0);
          new Query[156];
        format(Query, sizeof(Query), "UPDATE "T_ADMIN" SET `last_connect` = CURDATE() WHERE `name` = '%s' LIMIT 1",GetName(playerid));
        mysql_tquery(dbHandle, Query, "", "");
        MysqlUpdatePlayerInt(playerid, "admin", PI[playerid][pAdmin]);
        
        if(AdminInfo[playerid][admWarns] >= 3 && PI[playerid][pAdmin] < 8)
        {
            PI[playerid][pAdmin] --,AdminInfo[playerid][admWarns] = 0;
            switch(PI[playerid][pAdmin])
            {
                case 0,1: f(string,"[A] Администратор %s[%d] был снят. Причина: 3 выговора"),SCM(playerid,COLOR_WHITE,"Вы были сняты по причине 3-ёх выговоров."),RemoveAdmin(playerid, GetName(playerid));
                default: f(string,"[A] Администратор %s[%d] был понижен до %d-ого уровня. Причина: 3 выговора",PI[playerid][pName],playerid,PI[playerid][pAdmin]),SCM(playerid,COLOR_WHITE,"Вы были понижены по причине 3-ёх выговоров! Больше не нарушайте админ.правил!");
            }
            SendAdminMessage(COLOR_GREY, string);
        }
    }
    return 1;
}

 

 

Share this post


Link to post
Share on other sites

@stibs 

Спойлер

J:\Ñåðâåð TimePlay RolePlay\Ìîä\gamemodes\stel.pwn(31312) : warning 217: loose indentation
J:\Ñåðâåð TimePlay RolePlay\Ìîä\gamemodes\stel.pwn(31334) : warning 217: loose indentation
J:\Ñåðâåð TimePlay RolePlay\Ìîä\gamemodes\stel.pwn(31335) : warning 217: loose indentation
J:\Ñåðâåð TimePlay RolePlay\Ìîä\gamemodes\stel.pwn(31352) : warning 217: loose indentation
J:\Ñåðâåð TimePlay RolePlay\Ìîä\gamemodes\stel.pwn(31353) : warning 217: loose indentation
J:\Ñåðâåð TimePlay RolePlay\Ìîä\gamemodes\stel.pwn(31356) : warning 217: loose indentation
J:\Ñåðâåð TimePlay RolePlay\Ìîä\gamemodes\stel.pwn(31359) : warning 213: tag mismatch
J:\Ñåðâåð TimePlay RolePlay\Ìîä\gamemodes\stel.pwn(31360) : warning 217: loose indentation
J:\Ñåðâåð TimePlay RolePlay\Ìîä\gamemodes\stel.pwn(31360) : warning 213: tag mismatch
J:\Ñåðâåð TimePlay RolePlay\Ìîä\gamemodes\stel.pwn(31361) : warning 217: loose indentation
J:\Ñåðâåð TimePlay RolePlay\Ìîä\gamemodes\stel.pwn(31362) : warning 217: loose indentation
Pawn compiler 3.10.20150531              Copyright (c) 1997-2006, ITB CompuPhase

Header size:          17012 bytes
Code size:          8141044 bytes
Data size:          2644904 bytes
Stack/heap size:      16384 bytes; estimated max. usage=6682 cells (26728 bytes)
Total requirements:10819344 bytes

11 Warnings.
 

Спойлер

    cache_get_data(rows, fields);
 

           cache_get_row(0, 20, AdminInfo[playerid][admWarnedReason], dbHandle, 32);

        AdminInfo[playerid][admOffWarned] = cache_get_row_int(0, 21, dbHandle);

         new string[256];
        static const Admin_Names[8][32] = {"Мл.Модератор","Модератор","Ст.Модератор","Мл.Администратор","Администратор","Ст.Администратор","Заместитель","Разработчик"};

      new str[33];

     AdminRang = Create3DTextLabel(str, -1, 0.0, 0.0, 0.0, 30.0, 0, 0);

       Attach3DTextLabelToPlayer(AdminRang, playerid, 0.0, 0.0, 0.0);
          new Query[156];
        format(Query, sizeof(Query), "UPDATE "T_ADMIN" SET `last_connect` = CURDATE() WHERE `name` = '%s' LIMIT 1",GetName(playerid));
        mysql_tquery(dbHandle, Query, "", "");

 

Share this post


Link to post
Share on other sites

@Daniil Roslyakov скиньте КОНКРЕТНО строки на которые ошибка tag mismatch, остальное вы и сами можете исправить, выравняйте код лесенкой. 

Share this post


Link to post
Share on other sites

@stibs 

Спойлер

J:\Сервер TimePlay RolePlay\Мод\gamemodes\stel.pwn(31359) : warning 213: tag mismatch
J:\Сервер TimePlay RolePlay\Мод\gamemodes\stel.pwn(31360) : warning 213: tag mismatch
Pawn compiler 3.10.20150531              Copyright (c) 1997-2006, ITB CompuPhase

Header size:          17012 bytes
Code size:          8141044 bytes
Data size:          2644904 bytes
Stack/heap size:      16384 bytes; estimated max. usage=6682 cells (26728 bytes)
Total requirements:10819344 bytes

2 Warnings.



        AdminRang = Create3DTextLabel(str, -1, 0.0, 0.0, 0.0, 30.0, 0, 0);
        Attach3DTextLabelToPlayer(AdminRang, playerid, 0.0, 0.0, 0.0);

 

Share this post


Link to post
Share on other sites
Спойлер

forward AloginAuth(playerid, inputtext[]);
public AloginAuth(playerid, inputtext[])
{
     new rows, fields;
    cache_get_data(rows, fields);
    if(!rows)
    {
        SCM(playerid, COLOR_GREY, "[Ошибка] Неверный пароль");
        SetPVarInt(playerid, "attempt_pass", GetPVarInt(playerid, "attempt_pass") + 1);
        if(GetPVarInt(playerid, "attempt_pass") > 3)
        {
            DeletePVar(playerid, "attempt_pass");
            return SKick(playerid, 2112);
        }
    }
    else
    {
        AdminLogged[playerid] = true;
        PI[playerid][pAdmin] = cache_get_row_int(0, 1, dbHandle);
        AdminInfo[playerid][admGoto] = cache_get_row_int(0, 6, dbHandle);
        AdminInfo[playerid][admGethere] = cache_get_row_int(0, 7, dbHandle);
        AdminInfo[playerid][admSpectate] = cache_get_row_int(0, 8, dbHandle);
        AdminInfo[playerid][admKicked] = cache_get_row_int(0, 16, dbHandle);
        cache_get_row(0, 17, AdminInfo[playerid][admKickedReason], dbHandle, 32);
        AdminInfo[playerid][admSKicked] = cache_get_row_int(0, 18, dbHandle);
        AdminInfo[playerid][admWarned] = cache_get_row_int(0, 19, dbHandle);
           cache_get_row(0, 20, AdminInfo[playerid][admWarnedReason], dbHandle, 32);
        AdminInfo[playerid][admOffWarned] = cache_get_row_int(0, 21, dbHandle);
        cache_get_row(0, 22, AdminInfo[playerid][admOffWarnedReason], dbHandle, 32);
        AdminInfo[playerid][admBaned] = cache_get_row_int(0, 23, dbHandle);
        cache_get_row(0, 24, AdminInfo[playerid][admBanedReason], dbHandle, 32);
        AdminInfo[playerid][admOffBaned] = cache_get_row_int(0, 25, dbHandle);
        cache_get_row(0, 26, AdminInfo[playerid][admOffBanedReason], dbHandle, 32);
        AdminInfo[playerid][admMuted] = cache_get_row_int(0, 27, dbHandle);
        cache_get_row(0, 28, AdminInfo[playerid][admMutedReason], dbHandle, 32);
        AdminInfo[playerid][admAnsed] = cache_get_row_int(0, 29, dbHandle);
        cache_get_row(0, 30, AdminInfo[playerid][admAnsedText], dbHandle, 64);
        AdminInfo[playerid][admWarns] = cache_get_row_int(0, 31, dbHandle);
        AdminInfo[playerid][admPlayOnline] = cache_get_row_int(0, 32, dbHandle);
        
        /*new who_load[64];
         format(who_load, sizeof(who_load), "online_%s", getDay());
           cache_get_field_content(0, who_load, AdminInfo[playerid][admPlayOnline]);*/
           
         new string[256];
        static const Admin_Names[8][32] = {"Мл.Модератор","Модератор","Ст.Модератор","Мл.Администратор","Администратор","Ст.Администратор","Заместитель","Разработчик"};
        if(PI[playerid][pSex] == 1 && PI[playerid][pAdmin] != 8) format(string, sizeof(string), "[A] %s %s[%i] вошёл в систему администратирования", Admin_Names[PI[playerid][pAdmin]-1], GetName(playerid), playerid),SendAdminMessage(COLOR_GREY, string);
        else if(PI[playerid][pSex] == 2 && PI[playerid][pAdmin] != 8)  format(string, sizeof(string), "[A] %s {FFFFFF}%s[%i] вошла в систему администратирования", Admin_Names[PI[playerid][pAdmin]-1], GetName(playerid), playerid),SendAdminMessage(COLOR_GREY, string);
      new str[33];
      format(str, sizeof(str), "%s", Admin_Names[PI[playerid][pAdmin]-1]);
      new Text3D:AdminRang;
      AdminRang = Create3DTextLabel(str, -1, 0.0, 0.0, 0.0, 30.0, 0, 0); 
       Attach3DTextLabelToPlayer(AdminRang, playerid, 0.0, 0.0, 0.0);
          new Query[156];
        format(Query, sizeof(Query), "UPDATE "T_ADMIN" SET `last_connect` = CURDATE() WHERE `name` = '%s' LIMIT 1",GetName(playerid));
        mysql_tquery(dbHandle, Query, "", "");
        MysqlUpdatePlayerInt(playerid, "admin", PI[playerid][pAdmin]);
        
        if(AdminInfo[playerid][admWarns] >= 3 && PI[playerid][pAdmin] < 8)
        {
            PI[playerid][pAdmin] --,AdminInfo[playerid][admWarns] = 0;
            switch(PI[playerid][pAdmin])
            {
                case 0,1: f(string,"[A] Администратор %s[%d] был снят. Причина: 3 выговора"),SCM(playerid,COLOR_WHITE,"Вы были сняты по причине 3-ёх выговоров."),RemoveAdmin(playerid, GetName(playerid));
                default: f(string,"[A] Администратор %s[%d] был понижен до %d-ого уровня. Причина: 3 выговора",PI[playerid][pName],playerid,PI[playerid][pAdmin]),SCM(playerid,COLOR_WHITE,"Вы были понижены по причине 3-ёх выговоров! Больше не нарушайте админ.правил!");
            }
            SendAdminMessage(COLOR_GREY, string);
        }
    }
    return 1;
}

 

 

Share this post


Link to post
Share on other sites
Guest
This topic is now closed to further replies.
Sign in to follow this  
Followers 0

  • Recently Browsing   0 members

    No registered users viewing this page.

  • Similar Content

    • Tony_Cannabis
      By Tony_Cannabis
      Нужна мне собственно проверка на гараж, я хочу чтобы дом N класса не имел гаража, куда только я проверку эту не сувал, но немогу понять как это работает
       
      Имеем код
      Куда мне ее засунуть просто ума не приложу, думал будет легко но понимаю что без вас не разобратся, проверку которую хотел закинуть см. ниже
      if(gHouses[houseid][houseClass] == 0) return ErrorMessage(playerid, "Недоступно для класса Вашего дома");