Как сделать проверку что у организации уже есть лидер

Добро пожаловать!

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

Зарегистрироваться!
Пользователь
Регистрация
28 Мар 2022
Сообщения
148
Привет может кто помочь, не могу понять как можно сделать проверку что у организации уже есть лидер

C++:
        case 136:
        {
            if(response)
            {
                new fraction_massive[16][3] = {
                    {10, 310, 76},
                    {10, 165, 141},
                    {10, 61, 191}, 
                    {10, 70, 219},
                    {10, 113, 214},
                    {10, 186, 169},
                    {10, 147, 150},
                    {10, 283, 76},
                    {10, 44, 131},
                    {10, 104, 195},
                    {10, 110, 190},
                    {10, 111, 216},
                    {10, 270, 56},
                    {10, 261, 148},
                    {10, 115, 41},
                    {10, 173, 226}
                };

                PlayerInfo[playerid][pRank] = fraction_massive[listitem][0];
                PlayerInfo[playerid][pModel] = (PlayerInfo[playerid][pSex] == 1) ? (fraction_massive[listitem][1]) : (fraction_massive[listitem][2]);
                ///
                new local_listitem = (listitem > 7) ? listitem + 2 : listitem;

                SendClientMessage(playerid, 0xFFDDEE, !"Вы были назначены лидером организации");

                SetPlayerArmour(playerid, 0);
                SetPlayerHealthAC(playerid, 100);

                PlayerInfo[playerid][pLeader] = local_listitem + 1;
                PlayerInfo[playerid][pMember] = local_listitem + 1;

                SetPlayerToTeamColor(playerid);
                return 1;
            }
        }
 
Активный
Регистрация
6 Авг 2023
Сообщения
117
@Sandello, чат гпт не знает языка, он знает лишь теорию, и действительно хороший совет врятли даст
проверку что у организации уже есть лидер
массив с фракциями, именем лидера, None если нету, загрузка при запуске мода и таблица в mySQL для сохранения, записываешь в табло при снятии/назначении
 
Активный
Регистрация
29 Июл 2024
Сообщения
628
@Sandello, чат гпт не знает языка, он знает лишь теорию, и действительно хороший совет врятли даст

массив с фракциями, именем лидера, None если нету, загрузка при запуске мода и таблица в mySQL для сохранения, записываешь в табло при снятии/назначении
Pawn:
case 136:
{
    if (response)
    {
        new fraction_massive[16][3] = {
            {10, 310, 76},
            {10, 165, 141},
            {10, 61, 191},
            {10, 70, 219},
            {10, 113, 214},
            {10, 186, 169},
            {10, 147, 150},
            {10, 283, 76},
            {10, 44, 131},
            {10, 104, 195},
            {10, 110, 190},
            {10, 111, 216},
            {10, 270, 56},
            {10, 261, 148},
            {10, 115, 41},
            {10, 173, 226}
        };

        // Проверка, есть ли уже лидер у фракции
        if (FractionLeaders[listitem] != 0)
        {
            SendClientMessage(playerid, 0xFF0000, "У этой фракции уже есть лидер!");
            return 1;
        }

        PlayerInfo[playerid][pRank] = fraction_massive[listitem][0];
        PlayerInfo[playerid][pModel] = (PlayerInfo[playerid][pSex] == 1) ? (fraction_massive[listitem][1]) : (fraction_massive[listitem][2]);

        new local_listitem = (listitem > 7) ? listitem + 2 : listitem;

        SendClientMessage(playerid, 0xFFDDEE, "Вы были назначены лидером организации");

        SetPlayerArmour(playerid, 0);
        SetPlayerHealthAC(playerid, 100);

        PlayerInfo[playerid][pLeader] = local_listitem + 1;
        PlayerInfo[playerid][pMember] = local_listitem + 1;

        SetPlayerToTeamColor(playerid);

        // Назначаем игрока лидером фракции
        FractionLeaders[listitem] = playerid;

        return 1;
    }
}

Ну пусть автор проверит, мне гпт помогал много раз.


CODE BY CHAT GPT!
 
Активный
Регистрация
29 Июл 2024
Сообщения
628
pawn love
Активный
Регистрация
26 Сен 2023
Сообщения
404
Сперва, форматируем запрос.
Pawn:
new query[256];
format(query, sizeof(query), "SELECT * FROM `leaders` WHERE `lName` = '%s' LIMIT 1", PI[params[0]][pName]);
mysql_tquery(dbHandle, query, "MakeLeader", "dd", playerid, params[0]);

Дальше, в паблике MakeLeader, проверяем, есть ли информация пользователя в таблице leaders.
Pawn:
forward MakeLeader(playerid, params[0]);
public MakeLeader(playerid, params[0])
{
    new rows;
    cache_get_row_count(rows);

    if(rows) return SendClientMessage(playerid, -1, "Игрок уже является лидером");
    else
    {
            // код назначения лидерки
    {
}
 
Последнее редактирование:
Заблокированный
Регистрация
26 Апр 2022
Сообщения
852
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки. Мы не несем ответственности за действия пользователя вне форума.
Дам совет, если не знаешь язык павно, то напиши чату гпт, мне он часто помогал
OFFTOP

ты тоже умом не блещешь, раз для тебя павно это язык

 
Сверху