Добро пожаловать на Pro Pawn - Портал о PAWN-скриптинге.
Показано с 1 по 5 из 5

Тема: Репорт

  1. #1
    Аватар для GoJIoBoJIoMkA
    Пользователь

    Статус
    Оффлайн
    Регистрация
    27.08.2017
    Сообщений
    87
    Репутация:
    -1 ±

    Репорт

    Здравствуйте!
    Когда игрок пишет в репорт, его сообщения удваиваются. Например он написал вопрос в репорт "Где взять ган", то это сообщение придёт 2 раза подряд!
    Вот сток отвечающий за это!
    PHP код:
    stock AllVidem(color, const string_massive[] , level)
    {
        
    tforeach(i)
        {
            if(!
    IsPlayerConnected(i)) break;
            if(
    PlayerInfo[i][bAdmin] >= levelSendClientMessage(icolorstring_massive);
            if(
    PlayerInfo[i][pHelper] >= levelSendClientMessage(icolorstring_massive);
        }
        return 
    1;

    Я пробовал его сделать вот так, но тогда игроки видят репорт тоже!
    PHP код:
    stock AllVidem(color, const string_massive[] , level)
    {
        
    tforeach(i)
        {
            if(!
    IsPlayerConnected(i)) break;
            if(
    PlayerInfo[i][bAdmin] >= level) continue;
            if(
    PlayerInfo[i][pHelper] >= level) continue;
            
    SCM(color, const string_massive[] level)
        }
        return 
    1;

    помогите пожалуйста с этим разобраться!

  2. #2
    Аватар для Nexius_Tailer
    Пользователь

    Статус
    Оффлайн
    Регистрация
    04.01.2015
    Адрес
    Гомель, Беларусь
    Сообщений
    547
    Репутация:
    158 ±
    Твой первый вариант:
    1. Обрывал весь цикл при нахождении хотя бы одного пустого слота
    2. Имея два условия if/if (а не if/else if или if(условие || условие) с одним действием), выполнялись одинаковые действия дважды, если оба условия совпадали

    Исправленный первый вариант:
    PHP код:
    stock AllVidem(color, const string_massive[] , level)
    {
        
    tforeach(i)
        {
            if(!
    IsPlayerConnected(i)) continue;
            if(
    PlayerInfo[i][bAdmin] >= level || PlayerInfo[i][pHelper] >= levelSendClientMessage(icolorstring_massive);
        }
        return 
    1;

    Последний раз редактировалось Nexius_Tailer; 12.01.2019 в 16:32.
    Не хотите постоянно проверять обновления моих скриптов?
    Подключите его последним, после всех остальных
    Nexius's Update Checker

  3. Пользователь сказал cпасибо:
    GoJIoBoJIoMkA (13.01.2019)
  4. #3
    Аватар для GoJIoBoJIoMkA
    Пользователь

    Статус
    Оффлайн
    Регистрация
    27.08.2017
    Сообщений
    87
    Репутация:
    -1 ±
    Ваш вариант работает, но репорт теперь и игроки видят!
    Может тут делюга какая то?
    PHP код:
        case 10:
            {
                if(!
    response) return cmd::mm(playerid);
                if(!
    strlen(inputtext)) return SPD(playerid,10,DIALOG_STYLE_INPUT,"0x8813E7FF Связь с администрацией",""WHITE"Вы собираетесь задать вопрос / подать жалобу администрации / хелперам сервера.\n\nПожалуйста, не грубите, и соблюдайте адекватность.\nОписывайте жалобу / вопрос, четко и ясно.","Далее","Назад");
                if(
    PlayerInfo[playerid][pMuteTime]) return SendClientMessage(playerid, -1""#net"У Вас бан чата!");
                
    if(GetPVarInt(playerid"anti_flood_report") > gettime()) return SendClientMessage(playerid, -1,""#net"Писать в репорт можно один раз в минуту.");
                
    string="";
                
    format(stringMAX_STR"Обращение от %s[%d]{FFCD00}: %s"PlayerInfo[playerid][pNames], playerid, (inputtext));
                
    AllVidem(0xff4f00ffstring1);
                
    SendClientMessage(playerid,0x269BD8FFstring);
                
    SendClientMessage(playerid,0x269BD8FF,"Ожидайте, в ближайшее время Вам ответит администратор / помощник сервера.");
                
    SetPVarInt(playerid,"anti_flood_report",gettime()+60);
                return 
    1;
            } 
    Последний раз редактировалось GoJIoBoJIoMkA; 13.01.2019 в 17:24.

  5. #4
    Аватар для Nexius_Tailer
    Пользователь

    Статус
    Оффлайн
    Регистрация
    04.01.2015
    Адрес
    Гомель, Беларусь
    Сообщений
    547
    Репутация:
    158 ±
    В коде нет причины, чтобы это могли видеть все игроки, если конечно все игроки не имеют PlayerInfo[plyaierid][bAdmin] или PlayerInfo[plyaierid][pHelper] больший либо равный 1.
    Не хотите постоянно проверять обновления моих скриптов?
    Подключите его последним, после всех остальных
    Nexius's Update Checker

  6. Пользователь сказал cпасибо:
    GoJIoBoJIoMkA (20.01.2019)
  7. #5
    Аватар для GoJIoBoJIoMkA
    Пользователь

    Статус
    Оффлайн
    Регистрация
    27.08.2017
    Сообщений
    87
    Репутация:
    -1 ±
    Тема закрыта!

 

 

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •