• 0
Ruman

[закрыто] При компиляции выдает 5 ошибок

Вопросы

Когда я пытаюсь скомпилировать код, выдает следующие строчки:

 

D:\Users\Ruman\Desktop\Time RP\gamemodes\project.pwn(445) : error 028: invalid subscript (not an array or too many subscripts): "strval"
D:\Users\Ruman\Desktop\Time RP\gamemodes\project.pwn(453) : error 002: only a single statement (or expression) can follow each "case"
D:\Users\Ruman\Desktop\Time RP\gamemodes\project.pwn(453) : error 029: invalid expression, assumed zero
D:\Users\Ruman\Desktop\Time RP\gamemodes\project.pwn(453) : error 001: expected token: ";", but found "]"
D:\Users\Ruman\Desktop\Time RP\gamemodes\project.pwn(453) : fatal error 107: too many error messages on one line

Compilation aborted.

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


5 Errors.

Ниже указан код, строчки которые я закомментировал именно на них жалуется Compiler.

 

public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
    switch(dialogid)
    {
        case DLG_REG:
        {
            if(response)
            {
                if(!strlen(inputtext))
                {
                    ShowRegistration(playerid);
                    return SCM(playerid, COLOR_RED, "[Îøèáêà] {FFFFFF}Âû íè÷åãî íå ââåëè!");
                }
                if(strlen(inputtext) < 8 || strlen(inputtext) > 32)
                {
                    ShowRegistration(playerid);
                    return SCM(playerid, COLOR_RED, "[Îøèáêà] {FFFFFF}Ïàðîëü äîëæåí áûòü äëèíîé îò 8-ìè äî 32-óõ ñèìâîëîâ!");
                }
                new regex:rg_passwordcheck = regex_new("^[a-zA-Z0-9]{1,}$");
                if(regex_check(inputtext, rg_passwordcheck))
                {
                    strmid(player_info[playerid][PASSWORD], inputtext, 0, strlen(inputtext), 32);
                    SPD(playerid, DLG_REGMAIL, DIALOG_STYLE_INPUT, "Ðåãèñòðàöèÿ  > {00FFFF}Ââîä Email",
                        "{FFFFFF}Ââåäèòå âàø íàñòîÿùèé Email àäðåñ â ïîëå íèæå.\n\
                        Â ñëó÷àè åñëè âû ïîòåðÿåòå äîñòóï ê àêêàóíòó òî âû ñìîæåòå âîññòàíîâèòü åãî ÷åðåç Email.\n\
                        Äàííîå äåéñòâèå ñäåëàòü íàäî îáåçàòåëüíî!",
                    "Äàëåå""");
                }
                else
                {
                    ShowRegistration(playerid);
                    return SCM(playerid, COLOR_RED, "[Îøèáêà] {FFFFFF}Ïàðîëü äîëæåí ñîñòîÿòü èç ëàòèíñêèõ ñèìâîëîâ è ÷èñåë!");
                }
                regex_delete(rg_passwordcheck);
            }
            else
            {
                SCM(playerid, COLOR_WHITE, "{FFFFFF}Èñïîëüçóéòå êîìàíäó /q ÷òîáû âûéòè èç èãðû.");
                SPD(playerid, -10" "" "" """);
                return Kick(playerid);
            }
        }
        case DLG_REGMAIL:
        {
            if(!strlen(inputtext))
            {
                SPD(playerid, DLG_REGMAIL, DIALOG_STYLE_INPUT, "Ðåãèñòðàöèÿ  > {00FFFF}Email",
                    "{FFFFFF}Ââåäèòå âàø íàñòîÿùèé Email àäðåñ â ïîëå íèæå.\n\
                    Â ñëó÷àè åñëè âû ïîòåðÿåòå äîñòóï ê àêêàóíòó òî âû ñìîæåòå âîññòàíîâèòü åãî ÷åðåç Email.\n\
                    Äàííîå äåéñòâèå ñäåëàòü íàäî îáåçàòåëüíî!",
                "Äàëåå""");
                return SCM(playerid, COLOR_RED, "[Îøèáêà] {FFFFFF}Ââåäèòå Email â ïîëå íèæå.");
            }
            new regex:rg_emailcheck = regex_new("^[a-zA-Z0-9.-_]{1,43}@[a-zA-Z]{1,12}.[a-zA-Z]{1,8}$");
            if(regex_check(inputtext, rg_emailcheck))
            {
                strmid(player_info[playerid][EMAIL], inputtext, 0, strlen(inputtext), 64);
                SPD(playerid, DLG_REGREF, DIALOG_STYLE_INPUT, "Ðåãèñòðàöèÿ  > {00FFFF}Íèê ïðèãëàñèâøîãî",
                    "{FFFFFF}Çàøëè íà ñåðâåð ïî ïðèãëàøåíèþ?\n\
                    Òîãäà ââåäèòå íèê ïðèãëàñèâøîãî âàñ íà ñåðâåð â ïîëå íèæå:",
                "Äàëåå""Ïðîïóñòèòü");
            }
            else
            {
                SPD(playerid, DLG_REGMAIL, DIALOG_STYLE_INPUT, "Ðåãèñòðàöèÿ  > {00FFFF}Email",
                    "{FFFFFF}Ââåäèòå âàø íàñòîÿùèé Email àäðåñ â ïîëå íèæå.\n\
                    Â ñëó÷àè åñëè âû ïîòåðÿåòå äîñòóï ê àêêàóíòó òî âû ñìîæåòå âîññòàíîâèòü åãî ÷åðåç Email.\n\
                    Äàííîå äåéñòâèå ñäåëàòü íàäî îáåçàòåëüíî!",
                "Äàëåå""");
                return SCM(playerid, COLOR_RED, "[Îøèáêà] {FFFFFF}Óêàæèòå ïðàâèëüíî âàø Email àäðåñ. Ïðèìåð: samper@mail.ru");
            }
            regex_delete(rg_emailcheck);
        }
        case DLG_REGREF:
        {
            if(response)
            {
                    new regex:rg_refcheck = regex_new("^[a-zA-Z_]{4,24}$");
                if(regex_check(inputtext, rg_refcheck))
                {
                    static const fmt_query [] = "SELECT * FROM users WHERE name = '%s'";
                    new query[sizeof(fmt_query)+(-2+MAX_PLAYER_NAME)];
                    format(query, sizeof(query), "SELECT * FROM users WHERE name = '%s';", inputtext);
                    mysql_tquery(dbHandle, query, "CheckReferation""is", playerid, inputtext);
                }
                else
                {
                    SPD(playerid, DLG_REGREF, DIALOG_STYLE_INPUT, "Ðåãèñòðàöèÿ  > {00FFFF}Íèê ïðèãëàñèâøîãî",
                        "{FFFFFF}Çàøëè íà ñåðâåð ïî ïðèãëàøåíèþ?\n\
                        Òîãäà ââåäèòå íèê ïðèãëàñèâøîãî âàñ íà ñåðâåð â ïîëå íèæå:",
                    "Äàëåå""Ïðîïóñòèòü");
                    return SCM(playerid, COLOR_RED, "[Îøèáêà] {FFFFFF}Ââåäèòå íèê ïðèãëàñèâøîãî âàñ íà ñåðâåð â ôîðìàòå   Èìÿ_Ôàìèëèÿ");
                }
                regex_delete(rg_refcheck);
            }
            else
            {
                SPD(playerid, DLG_REGSEX, DIALOG_STYLE_MSGBOX, "Ðåãèñòðàöèÿ  > {00FFFF}Âûáîð ïîëà",
                    "{FFFFFF}Âûáåðèòå ïîë âàøåãî ïåðîíàæà:",
                "Ìóæñêîé""Æåíñêèé");
            }
        }
        case DLG_REGSEX:
        {
            if(response) player_info[playerid][SEX] = 1;
            else player_info[playerid][SEX] = 2;
            SPD(playerid, DLG_REGRACE, DIALOG_STYLE_LIST, "Ðåãèñòðàöèÿ  > {00FFFF}Âûáîð ðàñû",
                "Íåãðîèäíàÿ\n\
                Åâðîïåîèäíàÿ\n\
                Ìîíãîëîèäíàÿ\n\
                Àçèàòñêàÿ",
            "Äàëåå""");
        }
        case DLG_REGRACE:
        {
            switch(listitem)
            {
                case 0: player_info[playerid][RACE] = 1;
                case 1: player_info[playerid][RACE] = 2;
                case 2: player_info[playerid][RACE] = 3;
            }
            SPD(playerid, DLG_REGAGE, DIALOG_STYLE_INPUT, "Ðåãèñòðàöèÿ  > {00FFFF}Èãðîâîé âîçâðàñò",
                "{FFFFFF}Ââåäèòå èãðîâîé âîçâðàñò âàøåãî áóäóùåãî ïåðñîíàæà\n\
                Íå ââîäèòå âàø ðåàëüíûé âîçâðàñò!\n\n\
                \t- Âîçâðàñò äîëæåí áûòü äëèíîé îò {FFFF00}18-òè {FFFFFF}äî {FFFF00}60-òè {FFFFFF}ëåò",
            "Äàëåå""");
        }
        case DLG_REGAGE:
        { // 445 строка
            if(!strlen(inputtext))
            {
             SPD(playerid, DLG_REGAGE, DIALOG_STYLE_INPUT, "Ðåãèñòðàöèÿ  > {00FFFF}Èãðîâîé âîçâðàñò",
                "{FFFFFF}Ââåäèòå èãðîâîé âîçâðàñò âàøåãî áóäóùåãî ïåðñîíàæà\n\
                Íå ââîäèòå âàø ðåàëüíûé âîçâðàñò!\n\n\
                \t- Âîçâðàñò äîëæåí áûòü äëèíîé îò {FFFF00}18-òè {FFFFFF}äî {FFFF00}60-òè {FFFFFF}ëåò",
            "Äàëåå""");
            return SCM(playerid, COLOR_RED, "[Îøèáêà] {FFFFFF}Âû íè÷åãî íå ââåëè!");
            }
            if(strval(inputtext) < 18 || (strval(inputtext) > 60)
            {
            SPD(playerid, DLG_REGAGE, DIALOG_STYLE_INPUT, "Ðåãèñòðàöèÿ  > {00FFFF}Èãðîâîé âîçâðàñò",
                "{FFFFFF}Ââåäèòå èãðîâîé âîçâðàñò âàøåãî áóäóùåãî ïåðñîíàæà\n\
                Íå ââîäèòå âàø ðåàëüíûé âîçâðàñò!\n\n\
                \t- Âîçâðàñò äîëæåí áûòü äëèíîé îò {FFFF00}18-òè {FFFFFF}äî {FFFF00}60-òè {FFFFFF}ëåò",
            "Äàëåå""");
            return SCM(playerid, COLOR_RED, "[Îøèáêà] {FFFFFF}Âîçâðàñò ïåðñîíàæà äîëæåí áûòü îò {FFFF00}18-òè {FFFFFF}äî {FFFF00}60-òè {FFFFFF}ëåò");
            }
            player_info[playerid][AGE] = strval(inputtext); // 453 строка
            SCM(playerid, COLOR_WHITE, "Success");
        }
    }
}
    return 1;
}

forward CheckReferation(playerid, referal[]);
public CheckReferation(playerid, referal[])
{
    new rows;
    cache_get_row_count(rows);
    if(rows)
    {
        new refid;
        cache_get_value_name_int(0"id", refid);
        player_info[playerid][REF] = refid;
        SPD(playerid, DLG_REGSEX, DIALOG_STYLE_MSGBOX, "Ðåãèñòðàöèÿ  > {00FFFF}Âûáîð ïîëà",
            "{FFFFFF}Âûáåðèòå ïîë âàøåãî ïåðîíàæà:",
        "Ìóæñêîé""Æåíñêèé");
    }
    else
    {
        SPD(playerid, DLG_REGREF, DIALOG_STYLE_INPUT, "Ðåãèñòðàöèÿ  > {00FFFF}Íèê ïðèãëàñèâøîãî",
            "{FFFFFF}Çàøëè íà ñåðâåð ïî ïðèãëàøåíèþ?\n\
            Òîãäà ââåäèòå íèê ïðèãëàñèâøîãî âàñ íà ñåðâåð â ïîëå íèæå:",
        "Äàëåå""Ïðîïóñòèòü");
        return SCM(playerid, COLOR_RED, "[Îøèáêà] {FFFFFF}Àêêàóíò ñ òàêèì íèêîì íå çàðåãèñòðèðîâàí íà ñåðâåðå.");
    }
    return 1;
}
//Не обращайте внимания на эроглифы это от русского языка

Надеюсь объяснил точно.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

1 ответ на этот вопрос

  • 0

В конце паблика с диалогами вижу лишнюю скобку. Удали, перед return 1;. Отметил её в куске кода

        case DLG_REGAGE:
        { // 445 строка
            if(!strlen(inputtext))
            {
             SPD(playerid, DLG_REGAGE, DIALOG_STYLE_INPUT, "Ðåãèñòðàöèÿ  > {00FFFF}Èãðîâîé âîçâðàñò",
                "{FFFFFF}Ââåäèòå èãðîâîé âîçâðàñò âàøåãî áóäóùåãî ïåðñîíàæà\n\
                Íå ââîäèòå âàø ðåàëüíûé âîçâðàñò!\n\n\
                \t- Âîçâðàñò äîëæåí áûòü äëèíîé îò {FFFF00}18-òè {FFFFFF}äî {FFFF00}60-òè {FFFFFF}ëåò",
            "Äàëåå""");
            return SCM(playerid, COLOR_RED, "[Îøèáêà] {FFFFFF}Âû íè÷åãî íå ââåëè!");
            }
            if(strval(inputtext) < 18 || (strval(inputtext) > 60)
            {
            SPD(playerid, DLG_REGAGE, DIALOG_STYLE_INPUT, "Ðåãèñòðàöèÿ  > {00FFFF}Èãðîâîé âîçâðàñò",
                "{FFFFFF}Ââåäèòå èãðîâîé âîçâðàñò âàøåãî áóäóùåãî ïåðñîíàæà\n\
                Íå ââîäèòå âàø ðåàëüíûé âîçâðàñò!\n\n\
                \t- Âîçâðàñò äîëæåí áûòü äëèíîé îò {FFFF00}18-òè {FFFFFF}äî {FFFF00}60-òè {FFFFFF}ëåò",
            "Äàëåå""");
            return SCM(playerid, COLOR_RED, "[Îøèáêà] {FFFFFF}Âîçâðàñò ïåðñîíàæà äîëæåí áûòü îò {FFFF00}18-òè {FFFFFF}äî {FFFF00}60-òè {FFFFFF}ëåò");
            }
            player_info[playerid][AGE] = strval(inputtext); // 453 строка
            SCM(playerid, COLOR_WHITE, "Success");
        }
    }
// удали скобку
    return 1;
}

 

P. S. Не нужно извиняться за иероглифы, извинения здесь не помогут, нужно просто раскладку перевести на русский язык при копировании из Pawno.

Имхо, 22 год, а ты до сих пор юзаешь павно. Советую посмотреть в сторону других более современных редакторов кода. Sublime Text 3, Notepad++ даже лучше павно будет, или VS

Отредактировано пользователем SCRIPTMAN

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Гость
Эта тема закрыта для публикации ответов.

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

  • Похожий контент

    • Узбек
      От Узбек
      Всем добрый вечер ребят! 
      Я начинающий, сегодня я вам сливаю команду 2(шт) на технические работы
      Ловите 
       
    • nazpol9
      От nazpol9
      Привет всем.

      У меня имеется мод для самп сервера и VPS с Ubuntu, на котором я пытаюсь его запустить.

      В чем суть проблемы: при запуске samp03svr, сервер запускается, но на версии 0.3.DL R-1. Когда я пытаюсь запустить этот же мод локально на Windows, сервер работает на версии 0.3.7 и я могу зайти на него без клиента 0.3.DL.

      Для решения этой проблемы я уже пробовал заменять инклуды и исполнительные файлы теми, что есть в архивах на официальном сайте сампа, перекомпилировал мод, и ничего не изменилось.
       
      #include <a_samp> #include <a_mysql> #include <foreach> #include <Pawn.RakNet> #include <streamer> #include <sscanf2> #include <float2> #include <crashdetect> #include <fmt> #include <a_http> #include <Pawn.CMD> #include <Pawn.Regex> #include <requests> #include <callbacks> #include <MD5> #include <mxdate> #include <TOTP> #include <gvar> #include <md-sort> #include <nex-ac> #include <weapon-config> #include <discord-connector> #include <3DTryg> #include <textdraw-streamer>  
      plugins crashdetect.so streamer.so textdraw-streamer.so sscanf.so pawnraknet.so pawncmd.so mysql.so requests.so profiler.so pawnregex.so TOTP.so gvar.so discord-connector.so

      Если у кого-то будут какие-либо догадки, прошу ими поделиться, если понадобится больше информации - я постараюсь её предоставить.