Вопросы

Demon7
Новичок

Как исправить эту ошибку? Попытался залить на мод данный код и при компиляции происходит данная ошибка. Эта ошибка находится на строчке if(GetPlayerData(targetid, "friend_request") == playerid)

Спойлер

error 033: array must be indexed (variable "-unknown-")

CMD:frien(playerid, params[])
{
    new targetid = strval(params);

    if(!IsPlayerConnected(targetid))
    {
        SendClientMessage(playerid, COLOR_RED, "Целевой игрок не подключен к серверу.");
        return 0;
    }

    if(targetid == playerid)
    {
        SendClientMessage(playerid, COLOR_RED, "Вы не можете предложить себе подружиться.");
        return 0;
    }

    if(IsPlayerInRangeOfPlayer(playerid, targetid, 2.0))
    {
        if(GetPlayerData(targetid, "friend_request") == playerid)
        {
            SendClientMessage(playerid, COLOR_RED, "У вас уже есть ожидающий запрос на дружбу от этого игрока.");
            return 0;
        }

        SendClientMessage(playerid, COLOR_YELLOW, "Вы предложили игроку подружиться. Ожидайте ответа...");
        SendClientMessage(targetid, COLOR_YELLOW, "Игрок предлагает вам подружиться. Используйте /accept или /reject.");

        SetPlayerData(playerid, "friend_request", targetid);
        SetPlayerData(targetid, "friend_request", playerid);
    }
    else
    {
        SendClientMessage(playerid, COLOR_RED, "Игрок находится слишком далеко.");
    }

    return 1;
}

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


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

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

  • 0
sinvays
Завсегдатый
CMD:frien(playerid, params[])
{
    new targetid = strval(params);

    if(!IsPlayerConnected(targetid))
    {
        SendClientMessage(playerid, COLOR_RED, "Целевой игрок не подключен к серверу.");
        return 0;
    }

    if(targetid == playerid)
    {
        SendClientMessage(playerid, COLOR_RED, "Вы не можете предложить себе подружиться.");
        return 0;
    }

    if(IsPlayerInRangeOfPlayer(playerid, targetid, 2.0))
    {
        new friend_request_playerid = GetPlayerData(targetid, "friend_request");
        if(friend_request_playerid != INVALID_PLAYER_ID && friend_request_playerid == playerid)
        {
            SendClientMessage(playerid, COLOR_RED, "У вас уже есть ожидающий запрос на дружбу от этого игрока.");
            return 0;
        }

        SendClientMessage(playerid, COLOR_YELLOW, "Вы предложили игроку подружиться. Ожидайте ответа...");
        SendClientMessage(targetid, COLOR_YELLOW, "Игрок предлагает вам подружиться. Используйте /accept или /reject.");

        SetPlayerData(playerid, "friend_request", targetid);
        SetPlayerData(targetid, "friend_request", playerid);
    }
    else
    {
        SendClientMessage(playerid, COLOR_RED, "Игрок находится слишком далеко.");
    }

    return 1;
}

Попробуй-ка это.

 

@Demon7

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

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


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

@Demon7 попробуй сделать тогда так:
 

        new friend_request_playerid[MAX_PLAYERS];

        GetPlayerData(targetid, "friend_request", friend_request_playerid, sizeof(friend_request_playerid));

 

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


Ссылка на сообщение
Поделиться на другие сайты
  • 0
Demon7
Новичок

@angel_sinvays короче я сделал как на скриншоте и вроде бы работает если что напишу сюда еще раз 

Снимок_2024_05_02_01_09_06_800.png

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


Ссылка на сообщение
Поделиться на другие сайты
  • 0
Demon7
Новичок

@angel_sinvays а ты случайно не знаешь как исправить эти предупреждения? (67913) : warning 213: tag mismatch (67915) : warning 219: local variable "friend_request_playerid" shadows a variable at a preceding level (67916) : warning 215: expression has no effect (67922) : warning 225: unreachable code (67925) : warning 215: expression has no effect (67926) : warning 215: expression has no effect (67896) : symbol is never used: "friend_request_playerid"

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


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

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

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

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

    • Helados
      От Helados
      Короче, мы протестировали наш GTA на другом хостинге — голосовой чат там работает, всё включается нормально. Также проверили на другом хостинге с нашим игровым модом — voice chat тоже работает.
      Но на нашем личном хостинге, который мы купили на OVH и установили панель, не получается запустить голосовой чат. Похоже, проблема связана с портами. После перезапуска сервер почему-то случайным образом выбирает порты сам и мы не можем это исправить.
      Если кто-то знает человека, который может помочь разобраться с этой проблемой, буду благодарен.
    • тимормо
      От тимормо
      Копия Diamond RP (основа State 99)
      Скачать файл Мод DIAMOND RP (ver. 1.0)
      Основа: State 99
      Автор мода: #TomSnow
      Вопросы/Баги: https://vk.com/etalon_dev
       
      Приветствую всех! На связи #TomSnow
       
      Я принял решение начать поэтапную разработку и восстановление легендарного мода Diamond RolePlay образца 2015–2017 годов, взяв за основу мод State 99 (оригинальная основа DRP).
       
      Каждая новая версия разрабатываемого мода будет публиковаться в открытом доступе для всех участников и подписчиков сообщества (https://vk.com/etalon_dev). Это позволит вам не только следить за процессом разработки, но и принимать непосредственное участие в развитии проекта: тестировать обновления, находить баги, сообщать о недоработках и помогать делать мод максимально качественным и стабильным.
       
      Если вам интересна данная тематика и вы хотите наблюдать за ходом разработки, подписывайтесь на нашу группу ВКонтакте (https://vk.com/etalon_dev) и ожидайте публикацию версий проекта.
       
      Спасибо всем за поддержку! Впереди нас ждёт много интересной работы и возвращение атмосферы классического Diamond RolePlay. 
       
      Информация о моде:
       
      Версия MySQL R 39-6
      Античит Nex-AC (Доработанный)
      Стример Streamer Plugin v2.9.4
      Командный процессор Pawn CMD
       
      Список обновлений мода
       
       
      Добавил тимормо Добавлено 07/15/26 Категория Моды Автор #TomSnow  
    • тимормо
      От тимормо
      Мод DIAMOND RP (ver. 1.0)
      Основа: State 99
      Автор мода: #TomSnow
      Вопросы/Баги: https://vk.com/etalon_dev
       
      Приветствую всех! На связи #TomSnow
       
      Я принял решение начать поэтапную разработку и восстановление легендарного мода Diamond RolePlay образца 2015–2017 годов, взяв за основу мод State 99 (оригинальная основа DRP).
       
      Каждая новая версия разрабатываемого мода будет публиковаться в открытом доступе для всех участников и подписчиков сообщества (https://vk.com/etalon_dev). Это позволит вам не только следить за процессом разработки, но и принимать непосредственное участие в развитии проекта: тестировать обновления, находить баги, сообщать о недоработках и помогать делать мод максимально качественным и стабильным.
       
      Если вам интересна данная тематика и вы хотите наблюдать за ходом разработки, подписывайтесь на нашу группу ВКонтакте (https://vk.com/etalon_dev) и ожидайте публикацию версий проекта.
       
      Спасибо всем за поддержку! Впереди нас ждёт много интересной работы и возвращение атмосферы классического Diamond RolePlay. 
       
      Информация о моде:
       
      Версия MySQL R 39-6
      Античит Nex-AC (Доработанный)
      Стример Streamer Plugin v2.9.4
      Командный процессор Pawn CMD
       
      Список обновлений мода