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



10 posts in this topic

Помогите исправить ошибку буду благодарен


Цитата

CMD:makegun(playerid, params[])
{
    if(IsAGang(playerid))
    {
        new zone = GetPlayerGangZone(playerid);
        if(GZInfo[zone][gFrak] != pInfo[playerid][pMember]) return SendClientMessage(playerid, COLOR_GREY, "Вы должны находиться на территории своей банды!");
        if(!pInfo[playerid][pPatron]) return SendClientMessage(playerid, COLOR_GREY, "У вас недостаточно патронов");
        ShowMakeGunList(playerid);
    }
    else if(IsAMafia(playerid))
    {
        if(GetPlayerInterior(playerid)) return SendClientMessage(playerid, COLOR_GREY, "Использовать можно только на улице");
        else if(!pInfo[playerid][pPatron]) return SendClientMessage(playerid, COLOR_GREY, "У вас недостаточно патронов");
        ShowMakeGunList(playerid);
    }
    else if(IsAArmy(playerid))
    {
        if(GetPlayerInterior(playerid)) return SendClientMessage(playerid, COLOR_GREY, "Использовать можно только на улице");
        else if(!pInfo[playerid][pPatron]) return SendClientMessage(playerid, COLOR_GREY, "У вас недостаточно патронов");
        ShowMakeGunList(playerid);
    }
    else SendClientMessage(playerid, COLOR_GREEN, YouCanNot);
    return 1;
}
// сток
stock ShowMakeGunList(playerid)
{
    new string[350], gunname[24];
    for(new i; i < 9; i++)
    {
        GetWeaponName(gGunID, gunname, sizeof(gunname));
        if(!i) format(string, sizeof(string), "%s", gunname);
        else format(string, sizeof(string), "%s\n%s", string, gunname);
    }
    strcat(string, "\n{63BD4E}Информация");
    ShowPlayerDialog(playerid, dMakeGun, DIALOG_STYLE_LIST, "{FFCC00}Сборка оружия", string, "Далее", "Отмена");
}
// Кейсы
        case D_MakeGun:
        {
            if(!response) return 1;
            if(listitem < 9)
            {
                SetPVarInt(playerid, "makegunid", listitem);
                new needgun = gGunAmount[listitem];
                new bool:noneedgun, weapid, ammot;
                SetPVarInt(playerid, "noneedgun", 0);
                for(new i; i < 13; i++)
                {
                    GetPlayerWeaponData(playerid, i, weapid, ammot);
                    if(weapid == gGunID[listitem]) { noneedgun = true; SetPVarInt(playerid, "noneedgun", 1); break; }
                }
                if(pInfo[playerid][pGunAmount] < needgun && !noneedgun)
                {
                    new str[100];
                    format(str, sizeof(str),"Вам нужно %d ед. оружия для сборки этого оружия", needgun);
                    SendClientMessage(playerid, COLOR_GREY, str);
                    ShowMakeGunList(playerid);
                    return 1;
                }
                ShowPlayerDialog(playerid, dMakeGun+1, 1, "{FFCC00}Сборка оружия", "{FFFFFF}Сколько патронов вы хотите использовать для этого оружия?", "Собрать", "Отмена");
            }
            if(listitem == 9)
            {
                new list_weapons[] = "{FF9900}ID - Название - Ед. оружия{FFFFFF}\n\n\
                    22 - Colt 45 - 60\n\
                    23 - Silenced Pistol - 70\n\
                    24 - Desert Eeagle - 170\n\
                    28 - UZI - 190\n\
                    29 - MP5 - 200\n\
                    25 - Shotgun - 210\n\
                    31 - M4 - 280\n\
                    30 - AK47 - 300\n\
                    33 - Rifle - 360\n\n\
                    {FFFFFF}Для добавления патронов к созданному оружию\n\
                    необходимо держать его в руках";
                ShowPlayerDialog(playerid, dMakeGun+2, DIALOG_STYLE_MSGBOX, "{63BD4E}Информация", list_weapons, "Назад", "");
            }
        }
        case D_MakeGun+1:
        {
            if(!response) return 1;
            new ammo = strval(inputtext);
            if(!(1 <= ammo <= 500))
            {
                SendClientMessage(playerid, COLOR_GREY, "Неверное к-во патронов");
                ShowMakeGunList(playerid);
                return 1;
            }
            new gunid = GetPVarInt(playerid,"makegunid");
            new needgun = gGunAmount[gunid];
            new weaponid = gGunID[gunid];
            if(pInfo[playerid][pPatron] < ammo) return SendClientMessage(playerid, COLOR_GREY, "У вас недостаточно патронов");
            if(!GetPVarInt(playerid, "noneedgun")) pInfo[playerid][pGunAmount] -= needgun;
            SetPVarInt(playerid, "noneedgun", 0);
            pInfo[playerid][pPatron] -= ammo;
            mysql_query_string[0] = EOS;
            format(mysql_query_string, 128, "UPDATE "T_ACCOUNTS" SET gunamount = %d, patron = %d WHERE id = %d", pInfo[playerid][pGunAmount], pInfo[playerid][pPatron], pInfo[playerid][pID]);
            mysql_tquery(dbHandle, mysql_query_string, "", "");
            GivePlayerWeaponEx(playerid, weaponid, ammo);
            MeAction(playerid, "собрал оружие");
        }

 


тут показывает ошибку        if(pInfo[playerid][pGunAmount] < needgun && !noneedgun)

 
gamemodes\new.pwn(13943) : error 028: invalid subscript (not an array or too many subscripts): "pInfo"
gamemodes\new.pwn(13943) : warning 215: expression has no effect
gamemodes\new.pwn(13943) : error 001: expected token: ";", but found "]"
gamemodes\new.pwn(13943) : error 029: invalid expression, assumed zero
gamemodes\new.pwn(13943) : fatal error 107: too many error messages on one line
Compilation aborted.Pawn compiler 3.2.3664              Copyright (c) 1997-2006, ITB CompuPhase

4 Errors.

 

Share this post


Link to post
Share on other sites

@fulword скиньте полностью new pInfo и enum перед ним. 

Share this post


Link to post
Share on other sites

 DEST Мне из этого мода ну я не пойму как

Мод

Edited by fulword
Причина: Ссылку на файл забыл добавить

Share this post


Link to post
Share on other sites

@fulword Я так понял вы эту команду откуда-то вырезали? 

Share this post


Link to post
Share on other sites

DEST Я её хочу вырезать из мода который я вам скинул

Share this post


Link to post
Share on other sites

@fulword так вы вставьте ее в свой мод, потом скомпилируйте. Посмотрите, какие ошибки и скиньте тот мод, в который вставляете, или же то, о чем я вас попросил во втором сообщении темы. 

Share this post


Link to post
Share on other sites

DEST Я вроде разобрался как делать, сейчас попробую, если что напишу

Edited by fulword

Share this post


Link to post
Share on other sites

@fulword создавайте тему если у вас не чего не получается, а то могут посчитать за OFFTOP

Share this post


Link to post
Share on other sites

Daniil Roslyakov Я знаю щас создам

Share this post


Link to post
Share on other sites

Закройте эту тему.

Заметка от DEST , создано

Если этот вопрос решен, нажмите на галочку у сообщения, на котором хотите закрыть тему.

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

    • Damir Chernov
      By Damir Chernov
      Доработка мода Arizona Paige/Lovlya Role Play.
      Исправлены баги с респавном а так же падением игроков от команды /spplayers. 
      Полностью работают все кнопки в а /apanel
      Так же присутствуют люкс-кары всех авто которые у них на сервере!
      Так же есть команды для просмотра - играет ли человек с лаунчера или нет.
      Везде пишется играет ли человек с лаунчера или нет.
      Насчет покупки мода писать в ЛС!! vk.com/feofilov_sv
       

      По всем вопросам писать Дамир Чернов
      vk.com/feofilov_sv



       
       
    • saasha
      By saasha
      Всем привет! У меня проблема в том, что ответ от админа не доходит до игрока. 
      Когда игрок пишет в репорт, то на панельке появляется ID диалога, админ вводит /ans и ID репорта. Открывается диалоговое окно:
      Админ вводит ответ,но игрок не получает его
      Полный код: