Добро пожаловать на Pro Pawn - Портал о PAWN-скриптинге.
Страница 3 из 5 ПерваяПервая 1 2 3 4 5 ПоследняяПоследняя
Показано с 21 по 30 из 42
  1. #21
    Аватар для DeimoS
    Модератор?

    Статус
    Оффлайн
    Регистрация
    27.01.2014
    Адрес
    Восточный Мордор
    Сообщений
    5,588
    Репутация:
    1984 ±
    Через Crashdetect тестировали код?
    Связаться со мной в VK можно через личные сообщения этой группы
    Заказы не принимаю

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

    Steve Pavlina

  2. #22
    Аватар для Maksim97
    Заблокирован

    Статус
    Оффлайн
    Регистрация
    31.05.2014
    Сообщений
    110
    Репутация:
    -2 ±
    Да не чего не показало !

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

    Статус
    Оффлайн
    Регистрация
    28.03.2013
    Адрес
    Владикавказ
    Сообщений
    16
    Репутация:
    10 ±
    PHP код:
    if(Mobile[playerid] != INVALID_PLAYER_ID)
        {
            new 
    idx,tmp[64];
            
    tmp strcharsplit(textidx);
            
    format(stringersizeof(stringer), "[Телефон] %s: %s"PlayerInfo[playerid][pNames], text);
            
    ProxDetector(20.0playeridstringer,COLOR_FADE1,COLOR_FADE2,COLOR_FADE3,COLOR_FADE4,COLOR_FADE5);
            return 
    false;
        } 
    И лучше замени стринг для чата новым. Не желательно чтобы стринг для чата использовался в других функциях.
    Lorem ipsum
    что это за хуйня?

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

    Статус
    Оффлайн
    Регистрация
    27.01.2014
    Адрес
    Восточный Мордор
    Сообщений
    5,588
    Репутация:
    1984 ±
    Этот совет пробовали?

    Цитата Сообщение от OKStyle Посмотреть сообщение
    Я бы размер stringer увеличил.
    Если да, то попробуйте следующий код
    PHP код:
    if(Tel[playerid] == 1)
    {
        
    SendClientMessage(playerid0xFF0000FF"Сработало первое условие (1)");
        new 
    idx,tmp[64];
        
    SendClientMessage(playerid0xFF0000FF"Сработало первое условие (2)");
        
    tmp strcharsplit(textidx);
        
    SendClientMessage(playerid0xFF0000FF"Сработало первое условие (3)");
        
    format(stringersizeof(stringer), "[Телефон] %s: %s"PlayerInfo[playerid][pNames], text);
        
    SendClientMessage(playerid0xFF0000FF"Сработало первое условие (4)");
        
    ProxDetector(20.0playeridstringer,COLOR_FADE1,COLOR_FADE2,COLOR_FADE3,COLOR_FADE4,COLOR_FADE5);
        
    SendClientMessage(playerid0xFF0000FF"Сработало первое условие (5)");
        return 
    false;

    Я думаю, что в tmp записывается строка длиннее 64 символов и из-за этого происходит ошибка. И этот код поможет роверить мои догадки
    Связаться со мной в VK можно через личные сообщения этой группы
    Заказы не принимаю

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

    Steve Pavlina

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

    Статус
    Оффлайн
    Регистрация
    28.03.2013
    Адрес
    Владикавказ
    Сообщений
    16
    Репутация:
    10 ±
    Цитата Сообщение от DeimoS Посмотреть сообщение
    Этот совет пробовали?



    Если да, то попробуйте следующий код
    PHP код:
    if(Tel[playerid] == 1)
    {
        
    SendClientMessage(playerid0xFF0000FF"Сработало первое условие (1)");
        new 
    idx,tmp[64];
        
    SendClientMessage(playerid0xFF0000FF"Сработало первое условие (2)");
        
    tmp strcharsplit(textidx);
        
    SendClientMessage(playerid0xFF0000FF"Сработало первое условие (3)");
        
    format(stringersizeof(stringer), "[Телефон] %s: %s"PlayerInfo[playerid][pNames], text);
        
    SendClientMessage(playerid0xFF0000FF"Сработало первое условие (4)");
        
    ProxDetector(20.0playeridstringer,COLOR_FADE1,COLOR_FADE2,COLOR_FADE3,COLOR_FADE4,COLOR_FADE5);
        
    SendClientMessage(playerid0xFF0000FF"Сработало первое условие (5)");
        return 
    false;

    Я думаю, что в tmp записывается строка длиннее 64 символов и из-за этого происходит ошибка. И этот код поможет роверить мои догадки
    Это лишнее, посмотрел скрин - Заменяй стринг вместо stringer'a создай новый. Там где в чат зеленым писал - это ты не замкнул return false; сообщения выше
    Lorem ipsum
    что это за хуйня?

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

    Статус
    Оффлайн
    Регистрация
    27.01.2014
    Адрес
    Восточный Мордор
    Сообщений
    5,588
    Репутация:
    1984 ±
    Цитата Сообщение от georJik Посмотреть сообщение
    Не желательно чтобы стринг для чата использовался в других функциях.
    Чушь. Массив, он и в Африке массив. И если данные, которые были записаны в него до следующей перезаписи, не нужны - ничего страшного в этой самой перезаписи не случится. Ну а если нужны... Это вредно не только для чата будет :)
    Связаться со мной в VK можно через личные сообщения этой группы
    Заказы не принимаю

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

    Steve Pavlina

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

    Статус
    Оффлайн
    Регистрация
    28.03.2013
    Адрес
    Владикавказ
    Сообщений
    16
    Репутация:
    10 ±
    Цитата Сообщение от DeimoS Посмотреть сообщение
    Чушь. Массив, он и в Африке массив. И если данные, которые были записаны в него до следующей перезаписи, не нужны - ничего страшного в этой самой перезаписи не случится. Ну а если нужны... Это вредно не только для чата будет :)
    Попробуй заменить в своем моде все стринги на один и посмотри что вышло
    Lorem ipsum
    что это за хуйня?

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

    Статус
    Оффлайн
    Регистрация
    27.01.2014
    Адрес
    Восточный Мордор
    Сообщений
    5,588
    Репутация:
    1984 ±
    Цитата Сообщение от georJik Посмотреть сообщение
    Это лишнее, посмотрел скрин - Заменяй стринг вместо stringer'a создай новый. Там где в чат зеленым писал - это ты не замкнул return false; сообщения выше
    return false погоды не сделает. Код сработает и мод дальше начнёт проверять условия, пока не дойдёт до return false в самом конце колбэка. Тут дело в ошибке, которая вызвана переполнением памяти. Срабатывает ошибка и в колбэк возвращается значение, не равное 0 (скорее даже вообще ничего не возвращается). Потому и отправляется сообщение без ID и прочего

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

    Цитата Сообщение от georJik Посмотреть сообщение
    Попробуй заменить в своем моде все стринги на один и посмотри что вышло
    PHP код:
    new string[36];
    GetPlayerName(playeridstringMAX_PLAYER_NAME);
    format(stringsizeof(string), "Ваш ник - %s"string);
    SendClientMessage(playerid, -1string); 
    В этом случае ничего плохого не случится. Сначала в массив запишется ник игрока, потом данные из массива попадут в format и format перезапишет ник на строку. А вот в этом коде
    PHP код:
    new string[23+3+MAX_PLAYER_NAME];
    GetPlayerName(playeridstringMAX_PLAYER_NAME);
    format(stringsizeof(string), "Ваш ник - %s"string);
    SendClientMessage(playerid, -1string);
    format(stringsizeof(string), "Ник игрока с ID %d - %s"playeridstring);
    SendClientMessageToAll(-1string); 
    Уже случится ошибка, ибо в массиве будет хранится строка "Ваш ник - *ник*", когда очередь дойдёт до второго format. И в случае, который показан у автора, погоды новый массив не сделает. Максимум, что будет - потеряются данные для какой-то другой функции. Но подобного бага с чатом вызвать один массив не мог
    Последний раз редактировалось DeimoS; 12.06.2014 в 16:08.
    Связаться со мной в VK можно через личные сообщения этой группы
    Заказы не принимаю

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

    Steve Pavlina

  9. #29
    Аватар для Maksim97
    Заблокирован

    Статус
    Оффлайн
    Регистрация
    31.05.2014
    Сообщений
    110
    Репутация:
    -2 ±
    Ну так что мне именно сделать?

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

    Статус
    Оффлайн
    Регистрация
    27.01.2014
    Адрес
    Восточный Мордор
    Сообщений
    5,588
    Репутация:
    1984 ±
    Вот
    Цитата Сообщение от DeimoS Посмотреть сообщение
    Этот совет пробовали?



    Если да, то попробуйте следующий код
    PHP код:
    if(Tel[playerid] == 1)
    {
        
    SendClientMessage(playerid0xFF0000FF"Сработало первое условие (1)");
        new 
    idx,tmp[64];
        
    SendClientMessage(playerid0xFF0000FF"Сработало первое условие (2)");
        
    tmp strcharsplit(textidx);
        
    SendClientMessage(playerid0xFF0000FF"Сработало первое условие (3)");
        
    format(stringersizeof(stringer), "[Телефон] %s: %s"PlayerInfo[playerid][pNames], text);
        
    SendClientMessage(playerid0xFF0000FF"Сработало первое условие (4)");
        
    ProxDetector(20.0playeridstringer,COLOR_FADE1,COLOR_FADE2,COLOR_FADE3,COLOR_FADE4,COLOR_FADE5);
        
    SendClientMessage(playerid0xFF0000FF"Сработало первое условие (5)");
        return 
    false;

    Я думаю, что в tmp записывается строка длиннее 64 символов и из-за этого происходит ошибка. И этот код поможет роверить мои догадки
    Связаться со мной в VK можно через личные сообщения этой группы
    Заказы не принимаю

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

    Steve Pavlina

 

 
Страница 3 из 5 ПерваяПервая 1 2 3 4 5 ПоследняяПоследняя

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

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

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

Ваши права

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