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

Реклама


**Как получить V.I.P** (Перейти)
Чтобы заказать рекламу на Pro-Pawn.Ru, обращайтесь в Skype.
Баннерная реклама 200руб/мес, Текстовая 100руб/мес.
Показано с 1 по 3 из 3
  1. #1
    Аватар для Айболит
    Пользователь

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

    Видимость чата

    Доброго времени суток, ув. форумчане п-п.р, такая проблема что : Если написать в F6 то видно и 0 иду 1 но как только подойти близко к иду 1 например 0 уже не будет видеть, то есть то что я напишу я не увижу а хотя видно другому человеку будет, если же я отойду от него то я видеть буду, я знаю что это может быть..

    PHP код:
    public OnPlayerText(playeridtext[])
    {
        
    //========RP Чат, который в F6========//
        //new mescolor = 0xFFFFFFFF;
        
    new string[256];
        new 
    sendername[MAX_PLAYER_NAME];
        
    GetPlayerName(playeridsendernamesizeof(sendername));
        new 
    Float:xpos,Float:ypos,Float:zpos;
        
    GetPlayerPos(playerid,xpos,ypos,zpos);
        if(
    Player[playerid][pRas] == 1//Европеец.
        
    {
            for(new 
    i=0;i<MAX_PLAYERS;i++)
            {
                
    format(string,sizeof string,"{FF9600}[RPC] {FFFFFF}{FFFFFF}[Европейский акцент]{FFFFFF}{E6E6E6}    %s говорит: %s",sendername,text);
                if(!
    IsPlayerConnected(i) || !IsPlayerInRangeOfPoint(i50.0xposyposzpos)) continue;
                
    SendClientMessage(i0xFFFFFFFFstring);
                if(
    RPChat)
                {
                    if(
    GetPlayerState(playerid) == PLAYER_STATE_ONFOOT) { ApplyAnimation(playerid,"PED","IDLE_CHAT",4.1,0,1,1,0,1000,1); }
                    
    GetPlayerName(playeridsendernamesizeof(sendername));
                    
    SetPlayerChatBubble(playeridtext, -120.010000);
                    return 
    false;
                }
            }
        }
        if(
    Player[playerid][pRas] == 2//Афроамериканец.
        
    {
            for(new 
    i=0;i<MAX_PLAYERS;i++)
            {
                
    format(string,sizeof string,"{FF9600}[RPC] {FFFFFF}{FFFFFF}[Афроамериканский акцент]{FFFFFF}{E6E6E6}    %s говорит: %s",sendername,text);
                if(!
    IsPlayerConnected(i) || !IsPlayerInRangeOfPoint(i50.0xposyposzpos)) continue;
                
    SendClientMessage(i0xFFFFFFFFstring);
                if(
    RPChat)
                {
                    if(
    GetPlayerState(playerid) == PLAYER_STATE_ONFOOT) { ApplyAnimation(playerid,"PED","IDLE_CHAT",4.1,0,1,1,0,1000,1); }
                    
    GetPlayerName(playeridsendernamesizeof(sendername));
                    
    SetPlayerChatBubble(playeridtext, -120.010000);
                    return 
    false;
                }
            }
        }
        if(
    Player[playerid][pRas] == 3//Латиноамериканец.
        
    {
            for(new 
    i=0;i<MAX_PLAYERS;i++)
            {
                
    format(string,sizeof string,"{FF9600}[RPC] {FFFFFF}{FFFFFF}[Латиноамериканский акцент]{FFFFFF}{E6E6E6}    %s говорит: %s",sendername,text);
                if(!
    IsPlayerConnected(i) || !IsPlayerInRangeOfPoint(i50.0xposyposzpos)) continue;
                
    SendClientMessage(i0xFFFFFFFFstring);
                if(
    RPChat)
                {
                    if(
    GetPlayerState(playerid) == PLAYER_STATE_ONFOOT) { ApplyAnimation(playerid,"PED","IDLE_CHAT",4.1,0,1,1,0,1000,1); }
                    
    GetPlayerName(playeridsendernamesizeof(sendername));
                    
    SetPlayerChatBubble(playeridtext, -120.010000);
                    return 
    false;
                }
            }
        }
        if(
    Player[playerid][pRas] == 4//Японец.
        
    {
            for(new 
    i=0;i<MAX_PLAYERS;i++)
            {
                
    format(string,sizeof string,"{FF9600}[RPC] {FFFFFF}{FFFFFF}[Японский акцент]{FFFFFF}{E6E6E6}    %s говорит: %s",sendername,text);
                if(!
    IsPlayerConnected(i) || !IsPlayerInRangeOfPoint(i50.0xposyposzpos)) continue;
                
    SendClientMessage(i0xFFFFFFFFstring);
                if(
    RPChat)
                {
                    if(
    GetPlayerState(playerid) == PLAYER_STATE_ONFOOT) { ApplyAnimation(playerid,"PED","IDLE_CHAT",4.1,0,1,1,0,1000,1); }
                    
    GetPlayerName(playeridsendernamesizeof(sendername));
                    
    SetPlayerChatBubble(playeridtext, -120.010000);
                    return 
    false;
                }
            }
        }
        if(
    Player[playerid][pRas] == 5//Итальянец.
        
    {
            for(new 
    i=0;i<MAX_PLAYERS;i++)
            {
                
    format(string,sizeof string,"{FF9600}[RPC] {FFFFFF}{FFFFFF}[Итальянский акцент]{FFFFFF}{E6E6E6}    %s говорит: %s",sendername,text);
                if(!
    IsPlayerConnected(i) || !IsPlayerInRangeOfPoint(i50.0xposyposzpos)) continue;
                
    SendClientMessage(i0xFFFFFFFFstring);
                if(
    RPChat)
                {
                    if(
    GetPlayerState(playerid) == PLAYER_STATE_ONFOOT) { ApplyAnimation(playerid,"PED","IDLE_CHAT",4.1,0,1,1,0,1000,1); }
                    
    GetPlayerName(playeridsendernamesizeof(sendername));
                    
    SetPlayerChatBubble(playeridtext, -120.010000);
                    return 
    false;
                }
            }
        }
        if(
    Player[playerid][pRas] == 6//Еврей.
        
    {
            for(new 
    i=0;i<MAX_PLAYERS;i++)
            {
                
    format(string,sizeof string,"{FF9600}[RPC] {FFFFFF}{FFFFFF}[Еврейский акцент]{FFFFFF}{E6E6E6}    %s говорит: %s",sendername,text);
                if(!
    IsPlayerConnected(i) || !IsPlayerInRangeOfPoint(i50.0xposyposzpos)) continue;
                
    SendClientMessage(i0xFFFFFFFFstring);
                if(
    RPChat)
                {
                    if(
    GetPlayerState(playerid) == PLAYER_STATE_ONFOOT) { ApplyAnimation(playerid,"PED","IDLE_CHAT",4.1,0,1,1,0,1000,1); }
                    
    GetPlayerName(playeridsendernamesizeof(sendername));
                    
    SetPlayerChatBubble(playeridtext, -120.010000);
                    return 
    false;
                }
            }
        }
        
    //==================================//
        
    return 0;


  2. #2
    Аватар для DeimoS
    Модератор?

    Статус
    Оффлайн
    Регистрация
    27.01.2014
    Адрес
    Восточный Мордор
    Сообщений
    3,931
    Репутация:
    1502 ±
    Не цените вы память...
    Пробуйте
    PHP код:
    public OnPlayerText(playeridtext[])
    {
        
    //========RP Чат, который в F6========//
        
    new string[144];
        
    GetPlayerName(playeridstringMAX_PLAYER_NAME);
        new 
    FloatxposFloatyposFloatzpos;
        
    GetPlayerPos(playeridxposyposzpos);
        switch(
    Player[playerid][pRas])
        {
            case 
    1:    //Европеец.
                    
    format(stringsizeof(string), "[RPC] {FFFFFF}[Европейский акцент]{E6E6E6}    %s говорит: %s"sendernametext);
            case 
    2:    //Афроамериканец.
                    
    format(stringsizeof(string), "[RPC] {FFFFFF}[Афроамериканский акцент]{E6E6E6}    %s говорит: %s"sendernametext);
            case 
    3:    //Латиноамериканец.
                    
    format(stringsizeof(string), "[RPC] {FFFFFF}[Латиноамериканский акцент]{E6E6E6}    %s говорит: %s"sendernametext);
               case 
    4//Японец.
                    
    format(stringsizeof(string), "[RPC] {FFFFFF}[Японский акцент]{E6E6E6}    %s говорит: %s"sendernametext);
            case 
    5:    //Итальянец.
                    
    format(stringsizeof(string), "[RPC] {FFFFFF}[Итальянский акцент]{E6E6E6}    %s говорит: %s"sendernametext);
            case 
    6//Еврей.
                    
    format(stringsizeof(string), "[RPC] {FFFFFF}[Еврейский акцент]{E6E6E6}    %s говорит: %s"sendernametext);
        }
        for(new 
    GetMaxPlayers(); != -1i--)
        {
            if(!
    IsPlayerConnected(i) || !IsPlayerInRangeOfPoint(i50.0xposyposzpos)) continue;
            
    SendClientMessage(i0xFF9600FFstring);
        }
        if(!
    RPChat) return 0;
        if(
    GetPlayerState(playerid) == PLAYER_STATE_ONFOOTApplyAnimation(playerid,"PED","IDLE_CHAT",4.1,0,1,1,0,1000,1);
        
    GetPlayerName(playeridstringMAX_PLAYER_NAME);
        
    SetPlayerChatBubble(playeridtext, -120.010000);
        
    //==================================//
        
    return 0;

    Связаться со мной можно в личных сообщениях этой группы

    Широко известно, что идеи стоят 0.8333 цента каждая (исходя из рыночной цены 10 центов за дюжину).
    Великих идей полно, на них нет спроса.
    Воплощение идеи в законченную игру требует долгой работы,
    таланта, терпения и креативности, не говоря уж о затратах денег, времени и ресурсов.
    Предложить идею просто, воплотить – вот в чём проблема

    Steve Pavlina

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

    Статус
    Оффлайн
    Регистрация
    27.05.2014
    Сообщений
    133
    Репутация:
    1 ±
    Цитата Сообщение от DeimoS Посмотреть сообщение
    Не цените вы память...
    Пробуйте
    PHP код:
    public OnPlayerText(playeridtext[])
    {
        
    //========RP Чат, который в F6========//
        
    new string[144];
        
    GetPlayerName(playeridstringMAX_PLAYER_NAME);
        new 
    FloatxposFloatyposFloatzpos;
        
    GetPlayerPos(playeridxposyposzpos);
        switch(
    Player[playerid][pRas])
        {
            case 
    1:    //Европеец.
                    
    format(stringsizeof(string), "[RPC] {FFFFFF}[Европейский акцент]{E6E6E6}    %s говорит: %s"sendernametext);
            case 
    2:    //Афроамериканец.
                    
    format(stringsizeof(string), "[RPC] {FFFFFF}[Афроамериканский акцент]{E6E6E6}    %s говорит: %s"sendernametext);
            case 
    3:    //Латиноамериканец.
                    
    format(stringsizeof(string), "[RPC] {FFFFFF}[Латиноамериканский акцент]{E6E6E6}    %s говорит: %s"sendernametext);
               case 
    4//Японец.
                    
    format(stringsizeof(string), "[RPC] {FFFFFF}[Японский акцент]{E6E6E6}    %s говорит: %s"sendernametext);
            case 
    5:    //Итальянец.
                    
    format(stringsizeof(string), "[RPC] {FFFFFF}[Итальянский акцент]{E6E6E6}    %s говорит: %s"sendernametext);
            case 
    6//Еврей.
                    
    format(stringsizeof(string), "[RPC] {FFFFFF}[Еврейский акцент]{E6E6E6}    %s говорит: %s"sendernametext);
        }
        for(new 
    GetMaxPlayers(); != -1i--)
        {
            if(!
    IsPlayerConnected(i) || !IsPlayerInRangeOfPoint(i50.0xposyposzpos)) continue;
            
    SendClientMessage(i0xFF9600FFstring);
        }
        if(!
    RPChat) return 0;
        if(
    GetPlayerState(playerid) == PLAYER_STATE_ONFOOTApplyAnimation(playerid,"PED","IDLE_CHAT",4.1,0,1,1,0,1000,1);
        
    GetPlayerName(playeridstringMAX_PLAYER_NAME);
        
    SetPlayerChatBubble(playeridtext, -120.010000);
        
    //==================================//
        
    return 0;

    Спасибо больше, там чуток вы ошиблись с переменными, но нечего исправил, работает.. И да, спасибо за такую оптимизацию,буду знать..

 

 

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

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

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

Ваши права

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