• Уважаемый Гость.
    - Прежде чем создать свою тему, пожалуйста, попробуй воспользоваться этим -> ПОИСКОМ !!!
    - После решения Вашего вопроса (проблемы) - нажмите "Лучший ответ", на сообщении, которое его решило. За игнорирование этого действия - Вы получите соответствующее предупреждение. Мы - стараемся Вам помочь. Уделите 10 секунд - чтобы нажать кнопку. (Если у Вас нет такой возможности - укажите в последнем своем сообщении какой ответ Вы считаете лучшим. Наши модераторы сделают это за Вас)
    ЗАПРЕЩЕНО:
    - Cоздавать темы с названиями "Помогите", "Плиз", "Ошибка", "Не могу найти", "Хелп" и тому подобное;
    - Cоздавать темы без детального описания того, что нужно исправить.
    - Cоздавать темы из одного скриншота.
    За игнор правил форума - Ваша тема будет удалена, а Вы получите системное предупреждение.

Не работает таймер мута.

Статус
В этой теме нельзя размещать новые ответы.

Leo_Medson12331

Умник
Доброго времени суток.
В моде (Аврора РП), после выдачи мута, не запускается таймер до снятие. То бишь, если выдал мут на 60 минут, через 60 минут он не снимится. Думаю вы поняли.
Анологичная тема была, но там другая история.

Код:
C++:
            if(PI[i][pMute] > 0 && TI[i][tAFK] <= 3) {
                PI[i][pMute] -= vip_status[PI[i][pVips]][vip_mute];
                if(PI[i][pMute] <= 0) {
                    SendOk(i, "Срок действия бана чата закончился");
                    UpdatePlayerData(i,"mute",0);
                }
C++:
© Pawno-Info.Ru. Ссылка на источник: https://pawno-info.ru/forums/vopros-otvet.3/post-thread
CMD:mute(playerid, params[]) {
    if(PI[playerid][pAdmin] < 1 || dostup[playerid] == 0) return true;
    new time, text[33],string[144],giveplayerid;
    if(sscanf(params, "uds[32]",giveplayerid,time,text)) return SendEsp(playerid, "/mute [playerid] [минуты] [причина]");
    if(!IsPlayerConnected(giveplayerid)) return ErrorMessage(playerid,not_id);
    if(giveplayerid == playerid) return ErrorMessage(playerid,"Вы указали свой ID");
    if(PI[giveplayerid][pMute]) return ErrorMessage(playerid,"У игрока уже имеется блокировка чата");
    if(IsAIP(text))return 1;
    if(strlen(text) > 30) return ErrorMessage(playerid,"Причина должна быть меньше 30 символов");
     if(time > 300) return ErrorMessage(playerid,"Выдать бан чата можно максимум на 300 минут");
    if(GetPVarInt(playerid,"ban")>gettime()) return ErrorMessage(playerid,"Можно раз в 10 секунд");
    SetPVarInt(playerid,"ban",gettime()+10);
    PI[giveplayerid][pMute] = time*60;
    UpdatePlayerData(giveplayerid,"mute",PI[giveplayerid][pMute]);
    format(string, sizeof(string), "Администратор %s заблокировал чат %s на %d мин. Причина: %s",player_name[playerid],player_name[giveplayerid], time, text);
    SendClientMessageToAll(COLOR_LIGHTRED, string);
    SendOk(giveplayerid, "Время до снятия бана чата: "W"/time");
    gAdmin[playerid][ADMIN_MUTE] ++;
    WriteLog(LOG_MUTE,player_name[playerid],player_name[giveplayerid],text);
    return true;
}
Если после выдачи прописывать /time , время до окончания мута менятся - не будет.
Надеюсь поможете.
 
Последнее редактирование модератором:
Статус
В этой теме нельзя размещать новые ответы.
Сверху Снизу