• Уважаемый Гость.
    - Прежде чем создать свою тему, пожалуйста, попробуй воспользоваться этим -> ПОИСКОМ !!!
    - После решения Вашего вопроса (проблемы) - нажмите "Лучший ответ", на сообщении, которое его решило. За игнорирование этого действия - Вы получите соответствующее предупреждение. Мы - стараемся Вам помочь. Уделите 10 секунд - чтобы нажать кнопку. (Если у Вас нет такой возможности - укажите в последнем своем сообщении какой ответ Вы считаете лучшим. Наши модераторы сделают это за Вас)
    ЗАПРЕЩЕНО:
    - Cоздавать темы с названиями "Помогите", "Плиз", "Ошибка", "Не могу найти", "Хелп" и тому подобное;
    - Cоздавать темы без детального описания того, что нужно исправить.
    - Cоздавать темы из одного скриншота.
    За игнор правил форума - Ваша тема будет удалена, а Вы получите системное предупреждение.

Система покупки лидерки не проверяет на наличие свободной лидерки

Lester.

Умник
Всем привет, ребят тут такая проблема, что в системе покупки лидерки.. не проверяется на лидерку, должно быть вот так SendClientMessage(playerid, COLOR_WHITE, "У данной фракции уже есть лидер!");

Как исправить , чтобы при покупки.. проверяло занята Лидерка или нет

Код:
#define FRACTIONS_NUM (29)
new FractionVxod[FRACTIONS_NUM][60];
new FractionNamess[FRACTIONS_NUM][MAX_PLAYER_NAME];
new FractionHasLeader[FRACTIONS_NUM];


static const GetMemberPrice[29] = {
    0,//Для ***ни
    100, // LSPD
    100, // FBI
    100, // Авиносец
    100, // МЧС ЛС
    100, // LCN
    100, // Yakuza
    100, // Мэрия
    0, // Запрещенно
    0, // Запрещенно
    100, // SFPD
    100, // Инструкторы
    100, // Ballas
    100, // Vagos
    100, // RM
    100, // Groove
    100, // Sa News
    100, // Aztecas
    100, // Rifa
    100, // Zone 51
    0, //
    100, // LVPD
    0, // 
    100, // Хитманы
    100, // Стритрейсеры
    100, // Swat
    100, // АП
    100, // Casino 4 Dragons
    100 // Casino Calligulas
};

CMD:buylead(playerid)
{
    if(AdminInfo[playerid][aLevel] > 0) return SendClientMessage(playerid, COLOR_FLOD,!"[Ошибка]:"WH_C" Вы администратор!");
    format(mysql_query_, sizeof(mysql_query_), "SELECT * FROM `account` WHERE `leader` > 0  ORDER BY `leader`", playerid);
    mysql_tquery(connects, mysql_query_, "BuyLead", "d", playerid);
    return true;
}

publics:BuyLead(playerid)
{
    new rows;
    cache_get_row_count(rows);
    if(rows > FRACTIONS_NUM) rows = FRACTIONS_NUM;

    for(new i; i < FRACTIONS_NUM; i++)
    {
        FractionVxod[i] = "";
        FractionNamess[i] = "";
        FractionHasLeader[i] = false;
    }
    for(new i =0; i < rows; i++)
    {
        new FrID = cache_get_value_name_int(i, "leader", PlayerInfo[playerid][pLeader]);
        if(FrID < 0 || FrID >= FRACTIONS_NUM) continue;
        cache_get_value_name(i, "geton_date", FractionVxod[FrID], 60);
        cache_get_value_name(i, "name", FractionNamess[FrID], 24);
        FractionHasLeader[FrID] = true;
    }
    return LoadBuyLeadDialog(playerid);
}

publics:LoadBuyLeadDialog(playerid)
{
    new fstring[1200] = "{ffffff}Фракция\t{ffffff}Цена\n{ffffff}", pvarString[32], itters;
    for(new i = 0; i < FRACTIONS_NUM; i++)
    {
        if(!strlen(FractionNamess[i]) && GetMemberPrice[i] != 0)
        {
            format(pvarString, sizeof pvarString, "buylead_%i", itters);
            SetPVarInt(playerid, pvarString, i);
            itters++;
            format(fstring, sizeof(fstring), "%s%s\t{8BD032}%d рублей\n", fstring, GetPlayerFracName[i], GetMemberPrice[i]);
        }
    }
    if(itters == 0) return SendClientMessage(playerid, -1, "В данный момент нет свободных лидерок.");
    return ShowPlayerDialog(playerid, 26381, DIALOG_STYLE_TABLIST_HEADERS, "{FFD700}Список свободных постов лидерства", fstring, "Купить", "Назад");
}
Код:
case 26381:
        {
            if(!response) return true;
            new pvarString[32], leader, fstring[512];
            format(pvarString, sizeof pvarString, "buylead_%i", listitem);
            leader = GetPVarInt(playerid, pvarString);
            SetPVarInt(playerid, "buylead", leader);
            format(fstring, sizeof fstring, "{ffffff}Вы действительно хотите купить\nКупить права лидера фракции {8BD032}%s{ffffff}?\nСтоимость: {8BD032}%i{ffffff} рублей.", GetPlayerFracName[leader], GetMemberPrice[leader]);
            ShowPlayerDialog(playerid, 26382, DIALOG_STYLE_MSGBOX, "{ffffff}Покупка лидерки", fstring, "Купить", "Отмена");
            return true;
        }
    case 26382: // Подтверждение покупки
        {
            if(!response) return true;
            new fractionid = GetPVarInt(playerid, "buylead");
            if(strlen(FractionNamess[fractionid]) || GetMemberPrice[fractionid] == 0)
            {
                SendClientMessage(playerid, COLOR_WHITE, "У данной фракции уже есть лидер!");
                return true;//callcmd::buylead(playerid);
            }
            if(PlayerInfo[playerid][pRub] < GetMemberPrice[fractionid])
            {
                SendClientMessage(playerid, COLOR_FLOD,!">>>>"WH_C" У вас недостаточно Рубелй. Вы можете пополнить свой баланс [/donate]");
                return true;//callcmd::buylead(playerid);
            }
            PlayerInfo[playerid][pMember] = fractionid;
            PlayerInfo[playerid][pLeader] = fractionid;
            PlayerInfo[playerid][pJob] = 0;
            //-----------------------------------------
            switch(PlayerInfo[playerid][pMember])
            {
                case 1,10,21:
                {
                    PlayerInfo[playerid][pOdet] = 1, SendClientMessage(playerid,COLOR_BLUE,"Ваш рабочий день успешно начат!");
                    PlayerInfo[playerid][pRank] = 15;
                    PlayerInfo[playerid][pModel] = (PlayerInfo[playerid][pSex] == 1) ? (283) : (76);
                }
                case 2:
                {
                    PlayerInfo[playerid][pOdet] = 1, SendClientMessage(playerid,COLOR_BLUE,"Ваш рабочий день успешно начат!");
                    PlayerInfo[playerid][pRank] = 10;
                    PlayerInfo[playerid][pModel] = (PlayerInfo[playerid][pSex] == 1) ? (165) : (141);
                }
                case 3,19:
                {
                    PlayerInfo[playerid][pOdet] = 1, SendClientMessage(playerid,COLOR_BLUE,"Ваш рабочий день успешно начат!");
                    PlayerInfo[playerid][pRank] = 15;
                    PlayerInfo[playerid][pModel] = (PlayerInfo[playerid][pSex] == 1) ? (61) : (191);
                }
                case 4:
                {
                    PlayerInfo[playerid][pOdet] = 1, SendClientMessage(playerid,COLOR_BLUE,"Ваш рабочий день успешно начат!");
                    PlayerInfo[playerid][pRank] = 10;
                    PlayerInfo[playerid][pModel] = (PlayerInfo[playerid][pSex] == 1) ? (70) : (219);
                }
                case 5:
                {
                    PlayerInfo[playerid][pRank] = 10;
                    PlayerInfo[playerid][pModel] = (PlayerInfo[playerid][pSex] == 1) ? (113) : (214);
                }
                case 6:
                {
                    PlayerInfo[playerid][pRank] = 10;
                    PlayerInfo[playerid][pModel] = (PlayerInfo[playerid][pSex] == 1) ? (186) : (169);
                }
                case 7:
                {
                    PlayerInfo[playerid][pOdet] = 1, SendClientMessage(playerid,COLOR_BLUE,"Ваш рабочий день успешно начат!");
                    PlayerInfo[playerid][pRank] = 10;
                    PlayerInfo[playerid][pModel] = (PlayerInfo[playerid][pSex] == 1) ? (147) : (150);
                }
                case 11:
                {
                    PlayerInfo[playerid][pOdet] = 1, SendClientMessage(playerid,COLOR_BLUE,"Ваш рабочий день успешно начат!");
                    PlayerInfo[playerid][pRank] = 10;
                    PlayerInfo[playerid][pModel] = (PlayerInfo[playerid][pSex] == 1) ? (59) : (172);
                }
                case 12:
                {
                    PlayerInfo[playerid][pRank] = 10;
                    PlayerInfo[playerid][pModel] = (PlayerInfo[playerid][pSex] == 1) ? (104) : (195);
                }
                case 13:
                {
                    PlayerInfo[playerid][pRank] = 10;
                    PlayerInfo[playerid][pModel] = (PlayerInfo[playerid][pSex] == 1) ? (110) : (190);
                }
                case 14:
                {
                    PlayerInfo[playerid][pRank] = 10;
                    PlayerInfo[playerid][pModel] = (PlayerInfo[playerid][pSex] == 1) ? (272) : (214);
                }
                case 15:
                {
                    PlayerInfo[playerid][pRank] = 10;
                    PlayerInfo[playerid][pModel] = (PlayerInfo[playerid][pSex] == 1) ? (270) : (56);
                    SendClientMessage(playerid, COLOR_WHITE, "Купил");
                }
                case 16:
                {
                    PlayerInfo[playerid][pRank] = 13;
                    PlayerInfo[playerid][pModel] = (PlayerInfo[playerid][pSex] == 1) ? (187) : (211);
                }
                case 17:
                {
                    PlayerInfo[playerid][pRank] = 10;
                    PlayerInfo[playerid][pModel] = (PlayerInfo[playerid][pSex] == 1) ? (115) : (41);
                }
                case 18:
                {
                    PlayerInfo[playerid][pRank] = 10;
                    PlayerInfo[playerid][pModel] = (PlayerInfo[playerid][pSex] == 1) ? (173) : (226);
                }
                case 23:
                {
                    PlayerInfo[playerid][pRank] = 12;
                    PlayerInfo[playerid][pModel] = (PlayerInfo[playerid][pSex] == 1) ? (294) : (169);
                }
                case 24:
                {
                    PlayerInfo[playerid][pRank] = 10;
                    PlayerInfo[playerid][pModel] = (PlayerInfo[playerid][pSex] == 1) ? (67) : (55);
                }
                case 25:
                {
                    PlayerInfo[playerid][pOdet] = 1, SendClientMessage(playerid,COLOR_BLUE,"Ваш рабочий день успешно начат!");
                    PlayerInfo[playerid][pRank] = 10;
                    PlayerInfo[playerid][pModel] = (PlayerInfo[playerid][pSex] == 1) ? (285) : (76);
                }
                case 26:
                {
                    PlayerInfo[playerid][pRank] = 10;
                    PlayerInfo[playerid][pModel] = (PlayerInfo[playerid][pSex] == 1) ? (295) : (12);
                }
                case 27,28:
                {
                    PlayerInfo[playerid][pRank] = 5;
                    PlayerInfo[playerid][pModel] = (PlayerInfo[playerid][pSex] == 1) ? (189) : (172);
                }
            }
            //-----------------------------------------
            PlayerInfo[playerid][pRub] -= GetMemberPrice[fractionid];
            SetPlayerToTeamColor(playerid, PlayerInfo[playerid][pMember]);

            new query[400];

            mysql_format(connects,query,sizeof(query),"UPDATE "TABLE_ACCOUNT" SET `member` = '%d', `rank` = '%d', `model` = '%d', `leader` = '%d', `job` = '0', `rubli` = '%d' WHERE `id` = '%d'",fractionid,PlayerInfo[playerid][pRank],PlayerInfo[playerid][pModel],fractionid, PlayerInfo[playerid][pRub], PlayerInfo[playerid][pID]);
            mysql_query(connects,query);

            SetPlayerSkinEx(playerid,PlayerInfo[playerid][pModel]);
            return true;
        }
 
Сверху Снизу