Добро пожаловать на Pro Pawn - Портал о PAWN-скриптинге.
Показано с 1 по 7 из 7
  1. #1
    Аватар для Dimon_Fanat
    Пользователь

    Статус
    Оффлайн
    Регистрация
    01.06.2014
    Сообщений
    131
    Репутация:
    0 ±

    Общий чат. /o

    В общем такая проблема когда я пишу в общий чат обычным игроком, то для того чтобы еще раз написать в общий чат должно пройти 40 секунд, а если vip пишет до должно пройти 20 секунд, а оно почему-то пишет что должно пройти 40 секунд чтоб писать. как сделать чтоб для vip было 20 секунд а не 40?

    PHP код:
            if(strcmp(cmd"/o"true) == 0)
        {
            if(
    Player[playerid][pLevel] == 0)return send(playerid,COLOR_RED,""vError"Писать в общий чат можно только c 1 уровня.");
            if(
    Player[playerid][pJailed] >= true)return send(playeridCOLOR_RED,""vError"Ты не можешь писать в общий чат в тюрьме.");
            if(
    Player[playerid][pMuteTime] != 0)
            {
                
    f(string,"Ты не можешь говорить. Оставшееся время: %s",ConvertSeconds(Player[playerid][pMuteTime]));
                
    send(playerid,COLOR_WHITE,string);
                return 
    1;
            }
            if((!
    OOC) && Player[playerid][pAdmin] == 0)return send(playerid,COLOR_RED,"[ОШИБКА] {FFFFFF}Общий чат был отключен администрацией!");
            if(
    sscanf(params"s[64]"params[0])) return send(playerid,COLOR_COMAND,"[КОМАНДЫ] {FFFFFF}(/o)oc [текст].");
            if(
    OOCChat[playerid] > && Player[playerid][pMuteTime] == && AdminDuty[playerid] == 0)
            {
                
    f(string,"[ОШИБКА] {FFFFFF}Ты не можешь писать сообщения в общий чат так часто. Попробуй через %d секунд.",OOCChat[playerid]);
                
    send(playerid,COLOR_RED,string);
                return 
    1;
            }
            new 
    ip[MAX_PLAYER_NAME];
            
    GetPlayerIp(playeridipsizeof(ip));
            if(
    strfindparams[0] , ".tk" true ) != -||  strfindparams[0] , ".com" true ) != -||  strfindparams[0] , "3dn.ru" true ) != -||  strfindparams[0] , ".ru" true ) != -||  strfindparams[0] , ".net" true ) != -1
            
    ||  strfindparams[0] , ":78" true ) != -||  strfindparams[0] , "*ru" true ) != -||  strfindparams[0] , "172." true ) != -||  strfindparams[0] , "^77" true ) != -1
            
    ||  strfindparams[0] , ":77" true ) != -||  strfindparams[0] , ":55" true ) != -||  strfindparams[0] , ":44" true ) != -||  strfindparams[0] , "samp-stories" true ) != -1
            
    ||  strfindparams[0] , ":7777" true ) != -||  strfindparams[0] , ": 7777" true ) != -||  strfindparams[0] , "_ 7777" true ) != -||  strfindparams[0] , ". ru" true ) != -1
            
    ||  strfindparams[0] , ".  ru" true ) != -||  strfindparams[0] , ".    ru" true ) != -||  strfindparams[0] , "(точка)" true ) != -||  strfindparams[0] , "_ ru" true ) != -1
            
    ||  strfindparams[0] , "новый сервер" true ) != -1  ||  strfindparams[0] , "_77" true ) != -||  strfindparams[0] , "(пробел)" true ) != -1)
            {
                
    f(string"[Анти-реклама]:(IP:%s)%s[%d]: %s",ip,sendername(playerid),playerid,params[0]);
                
    ABroadCast(COLOR_YELLOW,string,1);
                return 
    1;
            }
            if(
    Player[playerid][pAdmin] !=&& AdminDuty[playerid] == 1)
            {
            
    f(string,"{FF0000}» {FFFFFF}%s[%d]: %s",sendername(playerid),playerid,params[0]);
            }
            else if(
    Player[playerid][pVip])
            {
            
    f(string,"{FFFF00}» {FFFFFF}%s[%d]: %s",sendername(playerid),playerid,params[0]);
            
    OOCChat[playerid] = 20;
            }
            else 
    f(string,"{FFFFFF}» %s[%d]: %s",sendername(playerid),playerid,params[0]);
            
    SendClientMessageToAll(COLOR_WHITE,string);
            
    OOCChat[playerid] = 40;
            return 
    1;
        } 
    Последний раз редактировалось Dimon_Fanat; 16.12.2014 в 15:11.

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

    Статус
    Оффлайн
    Регистрация
    01.06.2014
    Сообщений
    131
    Репутация:
    0 ±
    Поможет кто-то?

  3. #3
    Аватар для Dimon_Fanat
    Пользователь

    Статус
    Оффлайн
    Регистрация
    01.06.2014
    Сообщений
    131
    Репутация:
    0 ±
    Что не кто не знает.?

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

    Статус
    Оффлайн
    Регистрация
    21.04.2013
    Адрес
    Россия
    Сообщений
    154
    Репутация:
    1 ±
    ко всем new
    PHP код:
    new TimeAdmin[MAX_PLAYERS];//Таймер на Администрацию
    new VipTime[MAX_PLAYERS];//Таймер для VIP 
    в таймеры раз в 1 сек

    PHP код:
    public Fresh()//мой таймер
    {
        for(new 
    0MAX_PLAYERSi++)
        {
            if(
    TimeAdmin[i] > 0)//Таймер для Администрации
            
    {
                
    TimeAdmin[i]--;
                if(
    TimeAdmin[i] == 0TimeAdmin[i] = 0;
            }
            if(
    VipTime[i] > 0)//Таймер для VIP
            
    {
                
    VipTime[i]--;
                if(
    VipTime[i] == 0VipTime[i] = 0;
            }
        }
        return 
    1;

    в команды

    PHP код:
    if(strcmp(cmd"/o"true) == 0)
    {
        if(
    Player[playerid][pLevel] == 1) return SendClientMessage(playeridCOLOR_RED"Писать в общий чат можно только c 1 уровня.");
        if(
    Player[playerid][pJailed] >= true) return SendClientMessage(playeridCOLOR_RED"Ты не можешь писать в общий чат в тюрьме.");
        if((!
    OOC) && Player[playerid][pAdmin] == 0) return SendClientMessage(playerid,COLOR_RED,"[ОШИБКА] {FFFFFF}Общий чат был отключен администрацией!");
        if(
    sscanf(params"s[64]"params[0])) return SendClientMessage(playeridCOLOR_COMAND"[КОМАНДЫ] {FFFFFF}(/o)oc [текст].");
        new 
    strings[90];//Установили значение на 90 символов в чате
        
    if(Player[playerid][pAdmin] > && AdminDuty[playerid] == 1)
        {
            
    format(stringsizeof(strings), "{FF0000}» {FFFFFF}%s[%d]: %s",sendername(playerid),playerid,params[0]);
            
    SendClientMessageToAll(COLOR_WHITE,string);
            if(
    TimeAdmin[i] > 1) return SendClientMessage(playeridCOLOR_WHITE"[Ошибка]: вы не можете использовать общий чат так часто");
            
    TimeAdmin[i] = 30;//Установили таймер на 30 секунд
        
    }
        else if(
    Player[playerid][pVip])
        {
            
    format(stringsizeof(strings), "{FFFF00}»VIP{FFFF00}» {FFFFFF}%s[%d]: %s",sendername(playerid),playerid,params[0]);
            
    SendClientMessageToAll(COLOR_WHITEstring);
            if(
    VipTime[i] > 1) return SendClientMessage(playeridCOLOR_WHITE"[Ошибка]: вы не можете использовать общий чат так часто");
            
    VipTime[i] = 30;//Установили таймер на 30 секунд
        
    }
        return 
    1;

    Последний раз редактировалось Dima_Tushin; 17.12.2014 в 18:25.

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

    Статус
    Оффлайн
    Регистрация
    27.11.2013
    Адрес
    Нижневартовск
    Сообщений
    256
    Репутация:
    63 ±
    PHP код:
    else f(string,"{FFFFFF}» %s[%d]: %s",sendername(playerid),playerid,params[0]);
            
    SendClientMessageToAll(COLOR_WHITE,string);
            
    OOCChat[playerid] = 40
    PHP код:
    else
    {
    f(string,"{FFFFFF}» %s[%d]: %s",sendername(playerid),playerid,params[0]);
            
    OOCChat[playerid] = 40;
    }
    SendClientMessageToAll(COLOR_WHITE,string); 

  6. #6
    Аватар для I'm Cobra
    Пользователь

    Статус
    Оффлайн
    Регистрация
    29.10.2013
    Сообщений
    151
    Репутация:
    17 ±
    Для чего ты используешь else в обоих случаях? это означает "ИЛИ"
    Пример:
    PHP код:
    if(PlayerInfo[playerid][pAdmin] > 1)
    {
    }
    else 
    // ИЛИ, то есть если pAdmin НЕ > 1
    {

    Поэтому попробуй использовать без "else"

  7. #7
    Аватар для Dimon_Fanat
    Пользователь

    Статус
    Оффлайн
    Регистрация
    01.06.2014
    Сообщений
    131
    Репутация:
    0 ±
    Цитата Сообщение от I'm Cobra Посмотреть сообщение
    Для чего ты используешь else в обоих случаях? это означает "ИЛИ"
    Пример:
    PHP код:
    if(PlayerInfo[playerid][pAdmin] > 1)
    {
    }
    else 
    // ИЛИ, то есть если pAdmin НЕ > 1
    {

    Поэтому попробуй использовать без "else"
    хорошо попробую.

 

 

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

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

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

Ваши права

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