Добро пожаловать на Pro Pawn - Портал о PAWN-скриптинге.
Страница 2 из 2 ПерваяПервая 1 2
Показано с 11 по 14 из 14

Тема: Чат

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

    Статус
    Оффлайн
    Регистрация
    01.06.2014
    Адрес
    Rostov-on-Don
    Сообщений
    119
    Репутация:
    14 ±
    Цитата Сообщение от Rick Посмотреть сообщение
    Вы меня не так поняли, я закинул сток в конец мода, но а функцию SCMToAllInRangeOfPoint(playerid, 10.0, text); незнал куда кидать . Не нужно позорить меня, тем что я как будто вообще нечего в скриптинге не понимаю. Это вы не поняли о чём идет речь.
    PHP код:
    SCMToAllInRangeOfPoint(playerid10.0text);
    SCMToAllInRangeOfPoint название функции
    playerid 
    параметр,ид игрока для кого будет использоваться данная функция.
    10.0 расстояние,на котором будет виден текст
    text 
    параметр с текстом,который будет выводиться игрокам
    Кидаете в OnplayerText
    PHP код:
    SCMToAllInRangeOfPoint(playerid10.0text); 
    Можете данную функцию использовать где захотите,главное передать ид игрока,расстояние и текст.

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

    Статус
    Оффлайн
    Регистрация
    10.08.2013
    Сообщений
    68
    Репутация:
    0 ±
    Вы тоже слегка не допоняли, я же сказал что я "незнал куда кидать". Значит потом узнал), ну всё же спасибо за объяснение.

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

    Статус
    Оффлайн
    Регистрация
    10.08.2013
    Сообщений
    68
    Репутация:
    0 ±
    Цитата Сообщение от #ball Посмотреть сообщение
    Пробуй мой:
    PHP код:
    public OnPlayerText(playeridtext[])
    {
        if(
    text[0] == "!")
        {
            new 
    Floatt_pos_xFloatt_pos_yFloatt_pos_z,str[128],name[MAX_PLAYER_NAME];
            
    GetPlayerName(playeridnameMAX_PLAYER_NAME);
            
    GetPlayerPos(playeridt_pos_xt_pos_yt_pos_z);
            
    format(str128"[!]%s[%d]: %s"nameplayeridtext[1]);
            for(new 
    i=0i<MAX_PLAYERSi++) if(IsPlayerInRangeOfPoint(i20.0t_pos_xt_pos_yt_pos_z)) SendClientMessageToAll(-1str);
        }
        else
        {
            new 
    Floatt_pos_xFloatt_pos_yFloatt_pos_z,str[128],name[MAX_PLAYER_NAME];
            
    GetPlayerName(playeridnameMAX_PLAYER_NAME);
            
    GetPlayerPos(playeridt_pos_xt_pos_yt_pos_z);
            
    format(str128"[R]%s[%d]: %s"nameplayeridtext);
            for(new 
    i=0i<MAX_PLAYERSi++) if(IsPlayerInRangeOfPoint(i20.0t_pos_xt_pos_yt_pos_z)) SendClientMessage(i,-1str);
        }
        return 
    0;

    - - - Добавлено - - -

    Ошибочка,вот исправил:
    PHP код:
    public OnPlayerText(playeridtext[])
    {
        new 
    Floatt_pos_xFloatt_pos_yFloatt_pos_z,str[128],name[MAX_PLAYER_NAME];
        
    GetPlayerName(playeridnameMAX_PLAYER_NAME);
        
    GetPlayerPos(playeridt_pos_xt_pos_yt_pos_z);
        if(
    text[0] == "!")
        {
            
    format(str128"[!]%s[%d]: %s"nameplayeridtext[1]);
            
    SendClientMessageToAll(-1str);
        }
        else
        {
            
    format(str128"[R]%s[%d]: %s"nameplayeridtext);
            for(new 
    i=0i<MAX_PLAYERSi++) if(IsPlayerInRangeOfPoint(i20.0t_pos_xt_pos_yt_pos_z)) SendClientMessage(i,-1str);
        }
        return 
    0
    PHP код:
    D:\Ìîäû òðåáóåìûåñòàðûå\ñåðâåðà äëÿ [Gn_R]\gamemodes\modhost03.pwn(2601) : error 033: array must be indexed (variable "-unknown-")
    Pawn compiler 3.2.3664              Copyright (c1997-2006ITB CompuPhase


    1 Error


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

    Статус
    Оффлайн
    Регистрация
    19.10.2013
    Адрес
    Ярославль
    Сообщений
    1,366
    Репутация:
    774 ±
    Старую функцию на эту замените:
    PHP код:
    stock SCMToAllInRangeOfPoint(const playerid, const boolv, const text[])
    {
        new
            
    str[144],
            
    p_name[MAX_PLAYER_NAME 1],
            
    GetMaxPlayers();

        
    GetPlayerName(playeridp_namesizeof(p_name));

        do
        {
            if(
    IsPlayerConnected(--i))
            {
                
    format(str144"[%c] %s[%i]: %s"? ('!') : ('R'), p_nameplayeridtext);
                
    SendClientMessage(i, -1str);
            }
        }
        while(
    != 0);

    Последний раз редактировалось L0ndl3m; 06.08.2014 в 19:03. Причина: по просьбе ТС, изменил функцию

 

 
Страница 2 из 2 ПерваяПервая 1 2

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

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

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

Ваши права

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