5 posts in this topic

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;
}

 

 

Edited by Jawn
Причина: убрал нерабочую ссылку.

Share this post


Link to post
Share on other sites
𝙡𝙖𝙨𝙩 𝙚𝙢𝙥𝙚𝙧𝙤𝙧.
Создатель WayDev

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

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

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

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

Share this post


Link to post
Share on other sites
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 минут

 

Share this post


Link to post
Share on other sites
𝙡𝙖𝙨𝙩 𝙚𝙢𝙥𝙚𝙧𝙤𝙧.
Создатель WayDev

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

Share this post


Link to post
Share on other sites
pawn_inspector
Новичок

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

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now

  • Recently Browsing   0 members

    No registered users viewing this page.

  • Similar Content

    • ВасилийСталин
      By ВасилийСталин
      VERDICT PROJECT - V:ACE
       
      Соревновательный проект на платформе SA-MP, вдохновлённый духом Counter-Strike: тактические перестрелки, честный рейтинг и ванильное PVP.
      В разработке, не используются ресурсы, из открытых источников. Всё строится с нуля, собственный игровой мод, полностью кастомный интерфейс и игровой лаунчер.
      Что мы разрабатываем:
       
      - Рейтинговый режим с подбором по ELO. Равные соперники, честные матчи, путь от новичка до вершины таблицы.
      - Полностью кастомный интерфейс (CEF): меню, лобби, магазин и статистика такого уровня, какого на SA-MP почти не встретишь.
      - Легионеры - уникальные оперативники с индивидуальным дизайном и редкостью, открываются через боевой пропуск или чёрные ячейки (кейсы).
      - Скины на оружие и кейсы - коллекционная система в духе CS. -> В активной разработке
      - Киберспортивные команды: теги, ростеры, матчи команда против команды.
      - Тренировка аима, система рангов, ежедневные награды и не только.
       
      Продуманный баланс и внимание к деталям ванильного сражения - то, ради чего мы за это взялись.
      Проект уже на серьёзной стадии разработки. Мы открываем сообщество раньше официального анонса, чтобы первые скриншоты, новости и дата старта достались тем, кто был с нами с самого начала. Мы всегда рады открытой критике, или советам - сделаем игру лучше для всех!
      Подписывайтесь, чтобы не пропустить официальное заявление о запуске и первые материалы проекта.
       
      Группа VK: https://vk.ru/verdictcs
      Официальная почта: verdictproject@mail.ru
    • Kevin_McCarthy
      By Kevin_McCarthy
      🔒 ОТКРЫТИЕ НАБОРА НА ЗАКРЫТОЕ БЕТА-ТЕСТИРОВАНИЕ (ЗБТ)!
      Друзья! Мы выходим на самый ответственный этап разработки Brilliant RP. Проект уже практически готов к полноценному запуску, но перед тем как открыть двери для всех игроков, нам нужно тщательно проверить каждую систему, каждую работу и каждую строчку кода.
      Именно поэтому мы объявляем о старте Закрытого Бета-Тестирования!
      🏆 ТОП-3 ТЕСТЕРА ПОЛУЧАТ КРУТЫЕ ПРИЗЫ!
      Мы высоко ценим время и вклад каждого участника. Тестеры, которые проявят наибольшую активность, найдут больше всего уникальных багов и подробно опишут их в нашей Google-форме, получат ценные награды:
      🥇 1 МЕСТО: 3000 рублей на кошелек, 100.000$ игровой валюты, и Diamond VIP на 30 дней
      🥈 2 МЕСТО: 2000 рублей на кошелек, 75.000$ игровой валюты, и Diamond VIP на 30 дней
      🥉 3 МЕСТО: 1000 рублей на кошелек, 50.000$ игровой валюты, и Diamond VIP на 30 дней
      📝 Как стать участником ЗБТ?
      Заполни заявку на участие: 👉 https://vk.ru/gtasamp_brilliantrp
      Дождись одобрения.
    • OOLOAIS
      By OOLOAIS
      Ищу скрипт для самп/crmp который может скопировать акссесуары с аризоны/родины пж помогите