Добро пожаловать на Pro Pawn - Портал о PAWN-скриптинге.
Страница 112 из 133 ПерваяПервая ... 12 62 102 110 111 112 113 114 122 ... ПоследняяПоследняя
Показано с 1,111 по 1,120 из 1325
  1. #1111
    Аватар для pawnoholic
    Пользователь

    Статус
    Оффлайн
    Регистрация
    18.01.2018
    Сообщений
    128
    Репутация:
    15 ±
    Цитата Сообщение от bla Посмотреть сообщение
    Здравствуйте.
    Есть ли на данный момент решение как пофиксить изменение размеров TextDraw на разных разрешениях экрана?
    Для спрайтов: http://pro-pawn.ru/showthread.php?15865-GetSpriteSize

  2. #1112
    Аватар для Daniel_Cortez
    "Это не хак, это фича"

    Статус
    Оффлайн
    Регистрация
    06.04.2013
    Адрес
    Novokuznetsk, Russia
    Сообщений
    2,192
    Репутация:
    2590 ±
    Цитата Сообщение от Geebrox Посмотреть сообщение
    А если 19:40?
    Возвратит 59


    Так наверное правильнее:

    1. stock GetGameHour()
    2. {
    3. new hour, minute;
    4. gettime(hour, minute);
    5. hour = (hour * 60 + minute) / 20;
    6. return (hour > 23) ? (hour % 24) : (hour);
    7. }
    Зачем усложнять код лишним ветвлением, если можно вычислять остаток от деления в обоих случаях?
    1. stock GetGameHour()
    2. {
    3. static hour, minute;
    4. gettime(hour, minute);
    5. return ((hour * 60 + minute) / 20) % 24;
    6. }


    К тому же, насколько я понимаю, это функция не для первого, а для второго вопроса, в то время как первым был
    Цитата Сообщение от PawnoNoob Посмотреть сообщение
    1. Как правильнее будет использовать функцию удаления знака "_" в имени персонажа? Допустим, игрок создал персонажа с именем "Test_Test". В чате или при использовании некоторых команд система должна убрать знак "_" из имени (чтобы было "Test Test").
    Цитата Сообщение от PawnoNoob Посмотреть сообщение
    А есть ли где-нибудь функция для решения первого вопроса?
    ИМХО, "универсальная" функция для замены всех символов A на B в строке явно будет излишеством, ибо здесь нужно найти и заменить только одно вхождение.
    1. // Если ник не контролируется на соответствие
    2. // шаблону "Имя_Фамилия", использовать этот код:
    3. new pos = strfind(name, "_");
    4. if (pos != -1) // Если в нике есть символ '_' - заменить на пробел.
    5. name[pos] = ' ';
    6.  
    7. // Иначе можно обойтись упрощённым вариантом замены.
    8. // При контроле ника гарантируется одно вхождение '_',
    9. // поэтому можно не бояться доступа к массиву по индексу -1.
    10. name[strfind(name, "_")] = ' ';
    Индивидуально в ЛС по скриптингу не помогаю. Задавайте все свои вопросы здесь (click).

  3. 3 пользователя(ей) сказали cпасибо:
    Elrmrnt-Kritik (09.07.2018) Geebrox (08.07.2018) PawnoNoob (10.07.2018)
  4. #1113
    Аватар для pawnoholic
    Пользователь

    Статус
    Оффлайн
    Регистрация
    18.01.2018
    Сообщений
    128
    Репутация:
    15 ±
    Цитата Сообщение от pawnoholic Посмотреть сообщение
    Возможно кто то знает, какие еще можно ID для объектов занять в CUSTOM.IMG, кроме задокументированных 15065-15999?
    Не актуально)) Нашел еще около тысячи свободных ID.

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

    Статус
    Оффлайн
    Регистрация
    31.03.2016
    Сообщений
    257
    Репутация:
    3 ±
    Цитата Сообщение от ziggi Посмотреть сообщение
    1. stock GetGameHour()
    2. {
    3. new hour, minute;
    4. gettime(hour, minute);
    5. return (hour * 60 + minute) / 20;
    6. }
    Я про функцию удаления знака "_" из ника

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

    Статус
    Оффлайн
    Регистрация
    27.01.2014
    Адрес
    Восточный Мордор
    Сообщений
    5,588
    Репутация:
    1984 ±
    Цитата Сообщение от PawnoNoob Посмотреть сообщение
    Я про функцию удаления знака "_" из ника
    Сам из этого функцию, надеюсь, сможешь собрать
    PHP код:
    new pos strfind(player_name"_");
    if(
    pos != -1)
    {
        
    player_name[pos] = ' ';

    Последний раз редактировалось DeimoS; 09.07.2018 в 12:52.
    Связаться со мной в VK можно через личные сообщения этой группы
    Заказы не принимаю

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

    Steve Pavlina

  7. Пользователь сказал cпасибо:
    PawnoNoob (10.07.2018)
  8. #1116
    Аватар для pawnoholic
    Пользователь

    Статус
    Оффлайн
    Регистрация
    18.01.2018
    Сообщений
    128
    Репутация:
    15 ±
    Без strfind:
    1. new len = GetPlayerName(playerid, name, MAX_PLAYER_NAME);
    2. for (new i; i < len; i++) {
    3. if (name[i] = '_') {
    4. name[i] = ' ';
    5. }
    6. }


    Со strfind:
    1. new pos = -1;
    2. while ((pos = strfind(name, "_", false, pos + 1)) != -1) {
    3. name[pos] = ' ';
    4. }


    Поиск всех нижний разделителей ника, если есть возможность делать ники с более чем одним разделителем.
    Последний раз редактировалось pawnoholic; 09.07.2018 в 18:36.

  9. #1117
    Аватар для Daniel_Cortez
    "Это не хак, это фича"

    Статус
    Оффлайн
    Регистрация
    06.04.2013
    Адрес
    Novokuznetsk, Russia
    Сообщений
    2,192
    Репутация:
    2590 ±
    Цитата Сообщение от PawnoNoob Посмотреть сообщение
    Я про функцию удаления знака "_" из ника
    А если быть чуточку внимание, можно заметить, что выше ответ уже был дан:
    Цитата Сообщение от Daniel_Cortez Посмотреть сообщение
    ИМХО, "универсальная" функция для замены всех символов A на B в строке явно будет излишеством, ибо здесь нужно найти и заменить только одно вхождение.
    1. // Если ник не контролируется на соответствие
    2. // шаблону "Имя_Фамилия", использовать этот код:
    3. new pos = strfind(name, "_");
    4. if (pos != -1) // Если в нике есть символ '_' - заменить на пробел.
    5. name[pos] = ' ';
    6.  
    7. // Иначе можно обойтись упрощённым вариантом замены.
    8. // При контроле ника гарантируется одно вхождение '_',
    9. // поэтому можно не бояться доступа к массиву по индексу -1.
    10. name[strfind(name, "_")] = ' ';
    Индивидуально в ЛС по скриптингу не помогаю. Задавайте все свои вопросы здесь (click).

  10. Пользователь сказал cпасибо:
    PawnoNoob (10.07.2018)
  11. #1118
    Аватар для PawnoNoob
    Пользователь

    Статус
    Оффлайн
    Регистрация
    31.03.2016
    Сообщений
    257
    Репутация:
    3 ±
    Цитата Сообщение от Daniel_Cortez Посмотреть сообщение
    А если быть чуточку внимание, можно заметить, что выше ответ уже был дан:
    Простите, я просто с телефона сидел. Не заметил
    А как записать полученный ник в переменную?

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

    Статус
    Оффлайн
    Регистрация
    18.01.2018
    Сообщений
    128
    Репутация:
    15 ±
    Цитата Сообщение от PawnoNoob Посмотреть сообщение
    А как записать полученный ник в переменную?
    Так
    1. format(PlayerData[playerid][E_PLAYER_NAME], MAX_PLAYER_NAME, name);


    Или вот так
    1. PlayerData[playerid][E_PLAYER_NAME][0] = '\0';
    2. strcat(PlayerData[playerid][E_PLAYER_NAME], name, MAX_PLAYER_NAME);

  13. Пользователь сказал cпасибо:
    PawnoNoob (13.07.2018)
  14. #1120
    Аватар для DeimoS
    Модератор?

    Статус
    Оффлайн
    Регистрация
    27.01.2014
    Адрес
    Восточный Мордор
    Сообщений
    5,588
    Репутация:
    1984 ±
    Проще сразу работать напрямую с глобальной переменной тогда.
    PHP код:
    GetPlayerName(playeridпеременная_с_ником_без_разделителяMAX_PLAYER_NAME);
    new 
    pos strfind(переменная_с_ником_без_разделителя"_");
    if(
    pos != -1)
    {
        
    переменная_с_ником_без_разделителя[pos] = ' ';

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

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

    Steve Pavlina

  15. Пользователь сказал cпасибо:
    PawnoNoob (13.07.2018)
 

 
Страница 112 из 133 ПерваяПервая ... 12 62 102 110 111 112 113 114 122 ... ПоследняяПоследняя

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

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

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

Ваши права

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