Добро пожаловать на Pro Pawn - Портал о PAWN-скриптинге.
Страница 2 из 3 ПерваяПервая 1 2 3 ПоследняяПоследняя
Показано с 11 по 20 из 22
  1. #11
    Аватар для Seregamil
    Проверенный

    Статус
    Оффлайн
    Регистрация
    21.11.2013
    Сообщений
    551
    Репутация:
    274 ±
    if(sscanf(params,"ui",params[0],params[1])) return SendClientMessage(playerid, COLOR_WHITE,"Используйте: /sethp [id] [кол-во жизней]");
    if(params[1] < 0 || params[1] > 100) return SendClientMessage(playerid, COLOR_GREY, "Нельзя дать менее 0 и более 100 жизней.");
    SetHealth(params[0],params[1]);
    format(str,sizeof(str), "%s установил вам жизней %d",PlayerInfo[playerid][pName],params[1]);
    SendClientMessage(params[0],COLOR_WHITE, str);
    Я пока тебе просто выделил.

  2. #12
    Аватар для Копюшон
    Пользователь

    Статус
    Оффлайн
    Регистрация
    31.03.2013
    Сообщений
    93
    Репутация:
    14 ±
    Я пользуюсь Life-CDM он мне удобней, но вижу DC_CDM тоже хоршо, а можете показать скорость команды..

  3. #13
    Аватар для Salvacore
    Инжунер-погромист

    Статус
    Оффлайн
    Регистрация
    10.05.2013
    Адрес
    Аҧсуа бызшәа
    Сообщений
    2,271
    Репутация:
    418 ±
    Цитата Сообщение от Копюшон Посмотреть сообщение
    Я пользуюсь Life-CDM он мне удобней, но вижу DC_CDM тоже хоршо, а можете показать скорость команды..
    Цитата Сообщение от Daniel_Cortez Посмотреть сообщение
    Обновил тест скорости.

    Скачать его можно здесь:
    http://rghost.ru/52839480

    В тест добавлены 2 новых вида команд: стандартные (обозначены, как STD) и на командном процессоре FCMD.
    Как видно, стандартные команды (при количестве в 10 штук) работают медленнее остальных. Отрыв особенно заметен в случае, когда у команд есть параметры.



    Недавно до меня дошёл миф о том, что если в моде мало команд, то лучше не использовать никаких командных процессоров, якобы стандартные команды будут работать быстрее.
    Сейчас мы попробуем доказать или опровергнуть его.

    Итак, в скрипте cmdtest.pwn есть макрос PROFILE_ITERS_MINOR, он позволяет указать заданное количество команд для каждого командного процессора.
    Изменив его значение на 1 (вместо 10 по умолчанию), можно смоделировать ситуацию, когда в моде всего 1 команда, и измерить быстродействие каждого командного процессора.

    Приступим. Ищем в самом начале скрипта строку
    PHP код:
    #define PROFILE_ITERS_MINOR 10 
    и заменяем её на
    PHP код:
    #define PROFILE_ITERS_MINOR 1 
    Затем компилируем скрипт, запускаем сервер и смотрим на результат.
    Для ленивых, выложу то, что получилось у меня:
      Открыть/закрыть

    На данном скриншоте я включил JIT, дабы отсеять лишние вопросы о быстродействии стандартных команд с этим плагином.
    Как видно, некоторые командные процессоры действительно начинают работать медленнее, чем стандартные команды. Впрочем, DC_CMD обгоняет по быстродействию стандартные команды в 7 раз, даже всего при 1 команде и с JIT.
    Cмотри ;)

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

    Статус
    Оффлайн
    Регистрация
    07.03.2014
    Сообщений
    331
    Репутация:
    47 ±
    Цитата Сообщение от Skuba_Lo Посмотреть сообщение
    PHP код:
    format(str,sizeof(str), "%s установил вам жизней %d",PlayerInfo[playerid][pName],params[1]);
    SendClientMessage(params[0],COLOR_WHITEstr); 
    Вот это сообщение выводится игроку которому дали хп, а как сделать чтобы сообщение еще и выводилось администратору который дал хп, например "Вы установили %такомуто игроку %столько то жизней"?
    PHP код:
    CMD:sethp(playeridparams[])
    {
        new 
    str[24];
        if(
    sscanf(params,"ui",params[0],params[1])) return SendClientMessage(playeridCOLOR_WHITE,"Используйте: /sethp [id] [кол-во жизней]");
        if(!
    IsPlayerConnected(params[0])) return SendClientMessage(playerid0xFF0000FF"Такого игрока нет в сети");
        if(
    params[1] < || params[1] > 100) return SendClientMessage(playeridCOLOR_GREY"Нельзя дать менее 0 и более 100 жизней.");
        
    SetHealth(params[0],params[1]);
        
    format(str,sizeof(str), "%s установил вам жизней %d",PlayerInfo[playerid][pName],params[1]);
        
    SendClientMessage(params[0],COLOR_WHITEstr);
        
    format(str,sizeof(str), "Вы установили %s - %d жизней",PlayerInfo[playerid][pName],params[1]);
        
    SendClientMessage(playerid,COLOR_WHITEstr);
        return 
    true;

    "Власть, кровь, няш-мяш, кровь, власть, Крым наш!" - (c) Наталья Поклонская.

    Критик должен быть готов и способен в любой момент и по первому требованию занять место критикуемого им и выполнять его дело продуктивно и компетентно. В противном случае критика превращается в наглую, самодовлеющую силу и становится тормозом на пути прогресса. (с) AXE

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

    Статус
    Оффлайн
    Регистрация
    19.10.2013
    Адрес
    Ярославль
    Сообщений
    1,366
    Репутация:
    774 ±
    Цитата Сообщение от underwoker Посмотреть сообщение
    format(str,sizeof(str), "Вы установили %s - %d жизней",PlayerInfo[playerid][pName],params[1]);
    Может быть params[0]? Так как будет показываться никнейм не игрока которому выдаёшь, а никнейм того игрока, который выдаёт.

  6. #16
    Аватар для DmX
    Пользователь

    Статус
    Оффлайн
    Регистрация
    22.04.2013
    Адрес
    Краснодар
    Сообщений
    292
    Репутация:
    23 ±
    Цитата Сообщение от Londlem Посмотреть сообщение
    Может быть params[0]? Так как будет показываться никнейм не игрока которому выдаёшь, а никнейм того игрока, который выдаёт.
    Правильно , не усмотрел) писал на быструю руку

  7. #17
    Аватар для Alexey_Nikiforov
    Уровень знаний 1

    Статус
    Оффлайн
    Регистрация
    12.02.2016
    Сообщений
    61
    Репутация:
    1 ±
    Размер сриннга следует увеличить.
    24 слишком мало.
    (24+22+3+1)
    24 ник
    22 текст
    3 максимальное значение 100
    1 на нуль символ.

    p.s. Как сделать что бы писать целое количество хп а выдавало float
    Последний раз редактировалось Alexey_Nikiforov; 19.02.2016 в 16:32.

  8. #18
    Аватар для VVWVV
    ?

    Статус
    Оффлайн
    Регистрация
    09.07.2015
    Сообщений
    731
    Репутация:
    353 ±
    Цитата Сообщение от Alexey_Nikiforov Посмотреть сообщение
    p.s. Как сделать что бы писать целое количество хп а выдавало float
    PHP код:
        const some_value 5;
        new 
    Float:some_float_variable float(some_value); 

  9. #19
    Аватар для Alexey_Nikiforov
    Уровень знаний 1

    Статус
    Оффлайн
    Регистрация
    12.02.2016
    Сообщений
    61
    Репутация:
    1 ±
    А на примере команды в шапке можно.
    Просто не совсем понял как использовать.

  10. #20
    Аватар для VVWVV
    ?

    Статус
    Оффлайн
    Регистрация
    09.07.2015
    Сообщений
    731
    Репутация:
    353 ±
    Цитата Сообщение от Alexey_Nikiforov Посмотреть сообщение
    А на примере команды в шапке можно.
    Просто не совсем понял как использовать.
    PHP код:
    CMD:test(playeridparams[])
    {
        new 
    target_idtarget_health;
        if (
    sscanf(params"ui"target_idtarget_health))
            return 
    0;
        
    SetPlayerHealth(playeridfloat(target_health));
        
    SendClientMessage(playerid, -1, !"+");
        return 
    1;


 

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

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

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

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

Ваши права

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