В теме 5 сообщений

JAFAR
Активный

🛠 Все здраствуйте чисто по приколу решил замутить CMD:prays🛠 

🛠 работа не пригодилась!🛠 

🛠 Cама CAMANDA🛠 

Спойлер

CMD:prays(playerid, text[])
{
     if(GetPVarInt(playerid,"antiflood") > gettime()) return SendClientMessage(playerid,-1,"Вы недавно использовали команду."); // в начало коанды
    if(antiflood[playerid] > 0) return SendClientMessage(playerid, COLOR_WARNING,"Не флуди!");
    antiflood[playerid]++;
    if(PLAYER_DATA[playerid][data_LOGGED] == false) return SendClientMessage(playerid,COLOR_WARNING,"Вы не авторизованы на сервере!");
    if(PLAYER_DATA[playerid][data_MUTE] == 1) return SendClientMessage(playerid,COLOR_WARNING,"Ваш чат временно заблокирован!");
    if(IsPlayerInRangeOfPoint(playerid, 15.0, 593.2775,580.0898,12.0000))
    {
        SendClientMessage(playerid, COLOR_WARNING,"Господи помилуй этоту область Aincrad RP аминь!");
        SendClientMessage(playerid, COLOR_WARNING,"Вы помолились за сервер да благословит вас Game Master!");
        give_player_money(playerid, 10000,"#255");
        SetPVarInt(playerid,"antiflood",gettime()+180000); // после использования команды.
    }
    else
    {
        SendClientMessage(playerid,-1, "Вы далеко от места молитвы");
    }
    return true;
}

 

 

Отредактировано пользователем Jawn
Причина: убрал нерабочую ссылку.

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


Ссылка на сообщение
Поделиться на другие сайты
𝙡𝙖𝙨𝙩 𝙚𝙢𝙥𝙚𝙧𝙤𝙧.
Создатель WayDev

Немного не понял данный момент:

if(GetPVarInt(playerid,"antiflood") > gettime()) return SendClientMessage(playerid,-1,"Вы недавно использовали команду.");
if(antiflood[playerid] > 0) return SendClientMessage(playerid, COLOR_WARNING,"Не флуди!");
antiflood[playerid]++;

К чему двойная проверка?
Используйте что-то одно.

Если предоставляете команду на общее обозрение, то сделайте это нормально.
Покажите обнуление той же, допустим, переменной antiflood[playerid].

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


Ссылка на сообщение
Поделиться на другие сайты
JAFAR
Активный
В 12.07.2021 в 19:00, glvde. сказал:

К чему двойная проверка?
Используйте что-то одно.
Если предоставляете команду на общее обозрение, то сделайте это нормально.
Покажите обнуление той же, допустим, переменной antiflood[playerid].

Хз почему так но мне так удобней делать CMD я всегда почти делаю 2 проверку 

if(GetPVarInt(playerid,"antiflood") > gettime()) return SendClientMessage(playerid,-1,"Вы недавно использовали команду."); // в начало команды

и  

SetPVarInt(playerid,"antiflood",gettime()+180000); // после использования команды. 

это отвечает за таймер использование данной cmd 

 if(antiflood[playerid] > 0) return SendClientMessage(playerid, COLOR_WARNING,"Не флуди!");

ну а это отвечает за анти флуд при частом спаме у меня в моде выдаться mute на 5 минут

 

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


Ссылка на сообщение
Поделиться на другие сайты
𝙡𝙖𝙨𝙩 𝙚𝙢𝙥𝙚𝙧𝙤𝙧.
Создатель WayDev

@DRA GON, раз уж на то пошло. После использования любой команды значение antiflood[playerid] = 1;
Твоя проверка: if(antiflood[playerid] > 0) return SendClientMessage(playerid, 0xFFFFFFFF, "Не флудите!"); //пример.
При данной проверке после использования второй команды игроку будет выдаваться мут на 5 минут.

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


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

Почему бы для антифлуда командами не использовать OnPlayerCommandReceived и OnPlayerCommandPerformed, а не срать в каждой команде?

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


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

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!


Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.


Войти

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

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

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

    • Korochansky
      От Korochansky
      Я рад объявить о выпуске первой публичной версии современной IDE с открытым исходным кодом под лицензией GPLv3 для разработки open.mp и SA-MP, которая отличается интеграцией с SAMPCTL, управлением зависимостями и встроенной поддержкой Git.
       
      Особенности:
      • Разработано специально для open.mp и SA-MP разработки.
      • Встроенная интеграция с SAMPCTL для создания, запуска и управления проектами.
      • Менеджер зависимостей для удобной установки и обновления серверных пакетов и компонентов.
      • Встроенная поддержка Git с индикаторами состояния репозитория и историей коммитов.
      • Маркеры истории изменений для отслеживания измененных и сохраненных строк.
      • Автоматическое сопоставление и выделение скобок
      • Предварительный просмотр цвета для значений RGBA и HEX прямо в редакторе.
      • Интеграция инструмента выбора цвета для быстрой вставки цветов в код Pawn.
      • Режим 'Разделенный редактор кода' для одновременной работы с несколькими файлами.
      • Дерево проекта, оптимизированное для крупных проектов.
      • Интегрированные панели вывода результатов сборки и консоли сервера.
      • Автоматический мониторинг и обновление файлов проектов.
      • Портативная версия (установка не требуется).
       
      В репозитории: https://github.com/daniilkorochansky/spawn
    • Margiela
      От Margiela
      устал от vs code + он часто конфликтует с маками, конкретно с версией M3(как у меня).
      имеются ли аналоги pawno на mac?