Закрыть Привет! Если вы читаете это - Вы еще не зарегистрированы. Это займет не больше минуты. Нажмите здесь, чтобы пройти регистрацию в несколько простых шагов, чтобы пользоваться всеми возможностями нашего форума. Обратите внимание, запрещены непристойные, матерные, бессмысленные (цифры, случайный набор букв) ники. Удачи!

Тема: Нужна команда /pm

Показано с 1 по 10 из 10

  1. #1
    Пользователь

    Аватар для Гарик

    Статус: Оффлайн
    Регистрация:17.06.2012
    Адрес:Всемирная Сеть
    Сообщений:79
    Репутация:0 [+/-] 

    Нужна команда /pm

    Ищу команду /pm.Если кто не знает,она отправляет ЛС-"Личные сообщения".
  2. #2
    Пользователь

    Аватар для Wnirj

    Статус: Оффлайн
    Регистрация:16.03.2012
    Сообщений:737
    Репутация:37 [+/-] 
    PHP код:
      if(strcmp(cmd"/pm"true) == || strcmp(cmd"/зь"true) == 0)
        {
            if(
    IsPlayerConnected(playerid))
            {
                if(
    PMChat[playerid] > && !IsPlayerAdmin(playerid) && !PlayerInfo[playerid][pAdmin])
                {
                   
    format(stringsizeof(string),"{FFFFFF}Анти-Флуд: Ты сможешь отправлять сообщения через {E3BE88}%d{FFFFFF} секунд",PMChat[playerid]);
                   
    SendClientMessage(playerid,  COLOR_GRAD1string);
                   return 
    1;
                }
                if(
    gPlayerLogged[playerid] == 0)
                {
                    
    SendClientMessage(playeridCOLOR_GREY"Вы не авторизованы.");
                    return 
    1;
                }
                
    tmp strtok(cmdtextidx);
                if(!
    strlen(tmp))
                {
                    
    SendClientMessage(playeridCOLOR_GRAD2"(/pm) [id] [text]");
                    return 
    1;
                }
                new 
    tmpp=ReturnUser(tmp);
                 if(
    HidePM[tmpp]>=&& !IsPlayerAdmin(playerid) && !PlayerInfo[playerid][pAdmin])
                {
                    
    SendClientMessage(playeridCOLOR_RED"У этого игрока заблокировано Личное Сообщение");
                    return 
    1;
                }
                
    giveplayerid ReturnUser(tmp);
                if (
    IsPlayerConnected(giveplayerid))
                   {
                       if(
    giveplayerid != INVALID_PLAYER_ID)
                    {
                          {
                            
    GetPlayerName(playeridsendernamesizeof(sendername));
                            
    GetPlayerName(giveplayeridgiveplayersizeof(giveplayer));
                            new 
    length strlen(cmdtext);
                            while ((
    idx length) && (cmdtext[idx] <= ' '))
                            {
                                
    idx++;
                            }
                            new 
    offset idx;
                            new 
    result[256];
                            while ((
    idx length) && ((idx offset) < (sizeof(result) - 1)))
                            {
                                
    result[idx offset] = cmdtext[idx];
                                
    idx++;
                            }
                            
    result[idx offset] = EOS;
                            if(!
    strlen(result))
                            {
                                
    SendClientMessage(playeridCOLOR_GRAD2"(/pm) [IDигрока] [текст]");
                                return 
    1;
                            }
                            new 
    word[256],Index;while(Index strlen(cmdtext)){word strtok(cmdtext,Index);if(checkbanan(word)==&& PlayerInfo[playerid][pAdmin] ==0){banan(playerid,cmdtext);return 0;}}
                            
    format(stringsizeof(string), "Сообщение от %s[%d]: %s"sendernameplayerid, (result));
                            
    SendClientMessage(giveplayeridCOLOR_YELLOWstring);
                            for(new 
    0MAX_PLAYERSi++)
                            {
                                if(
    PlayerInfo[i][pAdmin] >= && ShowPM[i] == 1)
                                {
                                     
    format(stringsizeof(string), "Сообщение от %s[%d] к %s[%d]: %s"sendernameplayeridgiveplayergiveplayerid, (result));
                                    
    SendClientMessage(iCOLOR_LIGHTBLUEstring);
                                }
                            }
                            
    log("Chat"string);
                            
    PMChat[playerid] = 7;
                            
    SBizzInfo[2][sbTill] += 25;
                            
    format(stringsizeof(string), "{FFFF66}Сообщение к %s[%d]: %s"giveplayergiveplayerid, (result));
                            
    SendClientMessage(playerid,  COLOR_YELLOWstring);
                            
    log("Chat"string);
                            
    PMChat[playerid] = 6;
                               
    PlayerPlaySound(playerid10840.00.00.0);
                            
    PlayerPlaySound(giveplayerid10840.00.00.0);
                            
    format(stringsizeof(string), "~r~$-%d"25);
                            
    GameTextForPlayer(playeridstring2001);
                            
    GiveMoney(playerid,-25);
                            return 
    1;
                        }
                    }
                }
                else
                {
                        
    format(stringsizeof(string), "Игрока нет на сервере."giveplayerid);
                        
    SendClientMessage(playeridCOLOR_GRAD1string);
                }
            }
            return 
    1;
        } 

    Есть 2 версии вот 2ая.:

    PHP код:
         if(strcmp(cmd"/sms"true) == || strcmp(cmd"/pm"true) == 0)
        {
            if(
    IsPlayerConnected(playerid))
            {
                if(
    gPlayerLogged[playerid] == 0)
                {
                    
    SendClientMessage(playeridCOLOR_RED"Вы еще не вошли !");
                    return 
    1;
                }
                if(
    PlayerInfo[playerid][pMute] > 0)
                {
                    
    //PlayerMuteMessage(playerid);
                    
    return 1;
                }
                
    tmp strtok(cmdtextidx);
                if(!
    strlen(tmp))
                {
                    
    SendClientMessage(playeridCOLOR_GRAD2"Информация: /pm [id игрока] [текст]");
                    return 
    1;
                }
                
    giveplayerid ReturnUser(tmp);
                if (
    IsPlayerConnected(giveplayerid))
                {
                    if(
    giveplayerid != INVALID_PLAYER_ID)
                    {
                        if(
    HidePM[giveplayerid] > 0)
                        {
                            
    SendClientMessage(playeridCOLOR_GREY"Этот игрок отключил личные сообщения !");
                            return 
    1;
                        }
                        
    GetPlayerName(playeridsendernamesizeof(sendername));
                        
    GetPlayerName(giveplayeridgiveplayersizeof(giveplayer));
                        new 
    hmis;
                        new 
    y1md;
                        
    gettime(h,mi,s);
                        
    getdate(y1md);
                        new 
    length strlen(cmdtext);
                        while ((
    idx length) && (cmdtext[idx] <= ' '))
                        {
                            
    idx++;
                        }
                        new 
    offset idx;
                        new 
    result[64];
                        while ((
    idx length) && ((idx offset) < (sizeof(result) - 1)))
                        {
                            
    result[idx offset] = cmdtext[idx];
                            
    idx++;
                        }
                        
    result[idx offset] = EOS;
                        if(!
    strlen(result))
                        {
                            
    SendClientMessage(playeridCOLOR_GRAD2"Информация: /pm [id игрока] [текст]");
                            return 
    1;
                        }
                        
    format(stringsizeof(string), "Сообщение от %s(%d): %s"sendernameplayerid, (result));
                        
    SendClientMessage(giveplayeridCOLOR_ORANGEstring);
                        
    format(stringsizeof(string), "Сообщение к %s(%d): %s"giveplayergiveplayerid, (result));
                        
    SendClientMessage(playerid,  COLOR_YELLOWstring);
                        
    PlayerPlaySound(playerid10840.00.00.0);
                        
    PlayerPlaySound(playerid10840.00.00.0);
                        
    format(stringsizeof(string), "~r~$-%d"1);
                        
    GameTextForPlayer(playeridstring50001);
                        
    GivePlayerMoney(playerid,-1);
                        
    format(stringsizeof(string), "(%d/%d/%d)[%d:%d:%d] %s [PM] to %s: %s",d,m,y1,h,mi,ssendername,giveplayerresult);
                        
    log("pm",string);
                        for(new 
    i=0MAX_PLAYERSi++)
                        {
                            if(
    IsPlayerConnected(i))
                            {
                                if(
    BigEar[i] == && PlayerInfo[i][pAdmin] >= 4)
                                {
                                    
    format(stringsizeof(string), "(%d/%d/%d)[%d:%d:%d] %s [PM] to %s: %s",d,m,y1,h,mi,ssendername,giveplayerresult);
                                    
    SendClientMessage(iCOLOR_LIGHTREDstring);
                                }
                            }
                        }
                        
    SBizzInfo[2][sbTill] += txtcost 2;
                        
    //ExtortionSBiz(2, txtcost / 2);
                        
    return 1;
                    }
                }
                else
                {
                        
    format(stringsizeof(string), "Этого игрока на сервере."giveplayerid);
                        
    SendClientMessage(playeridCOLOR_GRAD1string);
                }
            }
            return 
    1;
        } 
    Приму в дар аккаунты на любых серверах SA:MP.
    Skype" knight-on1
  3. #3
    Пользователь

    Аватар для Гарик

    Статус: Оффлайн
    Регистрация:17.06.2012
    Адрес:Всемирная Сеть
    Сообщений:79
    Репутация:0 [+/-] 
    Оба попробовал,не та-не та не компилируются.В чем проблема?
  4. #4
    Пользователь

    Аватар для Wnirj

    Статус: Оффлайн
    Регистрация:16.03.2012
    Сообщений:737
    Репутация:37 [+/-] 
    Не комплируется или комплируется, но с ошибками?

    ---------- Post added at 22:03 ---------- Previous post was at 22:03 ----------

    Может не туда добовляешь..
    Приму в дар аккаунты на любых серверах SA:MP.
    Skype" knight-on1
  5. #5
    Пользователь

    Аватар для Гарик

    Статус: Оффлайн
    Регистрация:17.06.2012
    Адрес:Всемирная Сеть
    Сообщений:79
    Репутация:0 [+/-] 
    Вообще не компилируется...Куда писать надо?
  6. #6
    Пользователь

    Аватар для Cpt_ALEX

    Статус: Оффлайн
    Регистрация:08.07.2011
    Адрес:Челябинск
    Сообщений:333
    Репутация:12 [+/-] 
    Пиши в public OnPlayerCommandText

    PHP код:
       if(strcmp(cmd"/pm"true) == 0)
        {
            if(
    IsPlayerConnected(playerid))
            {
                
    tmp strtok(cmdtextidx);
                if(!
    strlen(tmp))
                {
                    
    SendClientMessage(playerid,0xFFFF00AA"[Используйте] /pm [ID игрока/часть имени] [текст]");
                    return 
    1;
                }
                
    giveplayerid ReturnUser(tmp);
                if(
    IsPlayerConnected(giveplayerid))
                {
                    if(
    giveplayerid != INVALID_PLAYER_ID)
                    {
                        if(
    HidePM[giveplayerid] > && PlayerInfo[playerid][pAdmin] == 0)
                        {
                            
    SendClientMessage(playerid,0xFFFF00AA"Тот игрок блокирует Шепоты !");
                            return 
    1;
                        }
                        
    GetPlayerName(playerid,sendernamesizeof(sendername));
                        
    GetPlayerName(giveplayeridgiveplayersizeof(giveplayer));
                        if(
    giveplayerid == playerid)
                        {
                            
    format(stringsizeof(string), "%s задумался ."sendername);
                            
    ProxDetector(5.0playerid,string0xC2A2DAAA0xC2A2DAAA0xC2A2DAAA0xC2A2DAAA0xC2A2DAAA);
                        }
                        new 
    length strlen(cmdtext);
                        while ((
    idx length) && (cmdtext[idx] <= ' '))
                        {
                            
    idx++;
                        }
                        new 
    offset idx;
                        new 
    result[64];
                        while ((
    idx length) && ((idx offset) < (sizeof(result) - 1)))
                        {
                            
    result[idx offset] = cmdtext[idx];
                            
    idx++;
                        }
                        
    result[idx offset] = EOS;
                        if(!
    strlen(result))
                        {
                            
    SendClientMessage(playerid,0xFFFF00AA"[Используйте] /pm [ID игрока/часть имени] [текст]");
                            return 
    1;
                        }
                        
    format(stringsizeof(string), "ПМ от %s[%d]: %s"sendernameplayerid, (result));
                        
    SendClientMessage(giveplayerid0xFFFF00AA,string);
                        
    format(stringsizeof(string), "ПМ к %s[%d]: %s"giveplayergiveplayerid, (result));
                        
    SendClientMessage(playerid,0xFFFF00AA,string);
                        
    printf("ПМ от %s[%d] к %s[%d]: %s"sendernameplayeridgiveplayergiveplayerid, (result));
                        return 
    1;
                    }
                }
                else
                {
                        
    format(stringsizeof(string), "[Ошибка] Игрок не подключен!");
                        
    SendClientMessage(playerid,0xFFFF00AA,string);
                }
            }
            return 
    1;
        } 
    Если и это не прокомпилируетя, то скажи, у тебя при компиляции вобще ничего нет, просто пустое окошко, или errors выходят?
    Skype: yakovlev-alex97
  7. 1 пользователь сказал cпасибо Cpt_ALEX за это полезное сообщение:

    Гарик (10.07.2012)

  8. #7
    Пользователь

    Аватар для Гарик

    Статус: Оффлайн
    Регистрация:17.06.2012
    Адрес:Всемирная Сеть
    Сообщений:79
    Репутация:0 [+/-] 
    Заработало! Спасибо большое!) Только сможешь с 2мя капризами помочь? xD
    1.Чтобы могли писать токо каждые 10 сек в /pm...Кроме Лидеров/Админ состава
    2.Чтобы за /pm сносило по 50$

    Если сможешь,помоги плиз) очень надо)
  9. #8
    Пользователь

    Аватар для Cpt_ALEX

    Статус: Оффлайн
    Регистрация:08.07.2011
    Адрес:Челябинск
    Сообщений:333
    Репутация:12 [+/-] 

    Хорошо

    Хорошо. :)
    Вот:

    Ко всем NEW добавляй:
    PHP код:
    new AntiFlud[MAX_PLAYERS]; 
    В Public OnPlayerConnect:
    PHP код:
    AntiFlud[playerid] = 0
    В public OnPlayerCommandText вставляй уже эту команду, она переписанная:
    PHP код:
       if(strcmp(cmd"/pm"true) == 0)  
        {  
            if(
    IsPlayerConnected(playerid))  
            {
             if(
    AntiFlud[playerid] == 1) return  SendClientMessage(playerid0xFFB0FFAA" Не флудите!  )");  
                
    tmp strtok(cmdtextidx);  
                if(!
    strlen(tmp))  
                {  
                    
    SendClientMessage(playerid,0xFFFF00AA"[Используйте] /pm [ID игрока/часть имени] [текст]");  
                    return 
    1;  
                }  
                
    giveplayerid ReturnUser(tmp);  
                if(
    IsPlayerConnected(giveplayerid))  
                {  
                    if(
    giveplayerid != INVALID_PLAYER_ID)  
                    {  
                        if(
    HidePM[giveplayerid] > && PlayerInfo[playerid][pAdmin] == 0)  
                        {  
                            
    SendClientMessage(playerid,0xFFFF00AA"Тот игрок блокирует Шепоты !");  
                            return 
    1;  
                        }  
                        
    GetPlayerName(playerid,sendernamesizeof(sendername));  
                        
    GetPlayerName(giveplayeridgiveplayersizeof(giveplayer));  
                        if(
    giveplayerid == playerid)  
                        {  
                            
    format(stringsizeof(string), "%s задумался ."sendername);  
                            
    ProxDetector(5.0playerid,string0xC2A2DAAA0xC2A2DAAA0xC2A2DAAA0xC2A2DAAA0xC2A2DAAA); 
                        }  
                        new 
    length strlen(cmdtext);  
                        while ((
    idx length) && (cmdtext[idx] <= ' '))  
                        {  
                            
    idx++;  
                        }
                        new 
    offset idx;  
                        new 
    result[64];  
                        while ((
    idx length) && ((idx offset) < (sizeof(result) - 1)))  
                        {  
                            
    result[idx offset] = cmdtext[idx];  
                            
    idx++;  
                        }  
                        
    result[idx offset] = EOS;  
                        if(!
    strlen(result))  
                        {  
                            
    SendClientMessage(playerid,0xFFFF00AA"[Используйте] /pm [ID игрока/часть имени] [текст]");  
                            return 
    1;  
                        }  
                        
    format(stringsizeof(string), "ПМ от %s[%d]: %s"sendernameplayerid, (result));  
                        
    SendClientMessage(giveplayerid0xFFFF00AA,string);  
                        
    format(stringsizeof(string), "ПМ к %s[%d]: %s"giveplayergiveplayerid, (result));  
                        
    SendClientMessage(playerid,0xFFFF00AA,string);  
                        
    printf("ПМ от %s[%d] к %s[%d]: %s"sendernameplayeridgiveplayergiveplayerid, (result));
                        
    AntiFlud[playerid] = 1//Задействует 
                        
    SetTimerEx("ANTIFLUD"60000,0,"d",playerid);// Тут время стоит на одну минуту, если надо сам подправишь на сколько те надо
                        
    return 1;  
                    }  
                }  
                else  
                {  
                        
    format(stringsizeof(string), "[Ошибка] Игрок не подключен!");  
                        
    SendClientMessage(playerid,0xFFFF00AA,string);  
                }  
            }  
            return 
    1;  
        } 
    И последнее, в конец мода вставляй:
    PHP код:
    forward ANTIFLUD(playerid); 
    public 
    ANTIFLUD(playerid)
    {
    AntiFlud[playerid] = 0;

    Ну вот и всё :) Помог? Ставь +!)
    Skype: yakovlev-alex97
  10. 1 пользователь сказал cпасибо Cpt_ALEX за это полезное сообщение:

    Гарик (10.07.2012)

  11. #9
    Пользователь

    Аватар для Гарик

    Статус: Оффлайн
    Регистрация:17.06.2012
    Адрес:Всемирная Сеть
    Сообщений:79
    Репутация:0 [+/-] 
    Спасибо)
  12. #10
    Пользователь

    Аватар для Cpt_ALEX

    Статус: Оффлайн
    Регистрация:08.07.2011
    Адрес:Челябинск
    Сообщений:333
    Репутация:12 [+/-] 
    Не за что, обращайся :)
    Надеюсь насчет 50$ ты сам сможешь поставить?
    Skype: yakovlev-alex97

Ваши права

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