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

Тема: /ahelp

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

    Статус
    Оффлайн
    Регистрация
    15.06.2014
    Сообщений
    651
    Репутация:
    106 ±

    /ahelp

    /ahelp - команды администрации
    Если Вы 1 уровень, Вам покажет только для 1 уровня, если Вы 2-ой уровень, Вам покажет для 1 и 2-ого уровня и т.д
    PHP код:
    #define COLOR_ORANGE                     0xB8860BFF
    #define COLOR_YELLOW                     0xFFFF00AA 
    PHP код:
    if(strcmp(cmd"/ahelp"true) == 0)
        {
            if(
    PlayerInfo[playerid][pAdmin] >= 1SendClientMessage(playerid,COLOR_YELLOW,"Доступные команды:"),SendClientMessage(playerid,COLOR_ORANGE,"1 уровень: /test");
            if(
    PlayerInfo[playerid][pAdmin] >= 2SendClientMessage(playerid,COLOR_ORANGE,"2 уровень: /test");
            if(
    PlayerInfo[playerid][pAdmin] >= 3SendClientMessage(playerid,COLOR_ORANGE,"3 уровень: /test");
            if(
    PlayerInfo[playerid][pAdmin] >= 4SendClientMessage(playerid,COLOR_ORANGE,"4 уровень: /test");
            if(
    PlayerInfo[playerid][pAdmin] == 5SendClientMessage(playerid,COLOR_ORANGE,"5 уровень: /test");
            return 
    true;
        } 

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

    Статус
    Оффлайн
    Регистрация
    10.05.2013
    Адрес
    Аҧсуа бызшәа
    Сообщений
    2,271
    Репутация:
    418 ±
    PHP код:
    if(strcmp(cmd"/ahelp"true) == 0)
    {
        if(
    PlayerInfo[playerid][pAdmin] >= 1
        {
            
    SendClientMessage(playerid,0xFFFF00AA,"Доступные команды:");
            
    SendClientMessage(playerid,0xB8860BFF,"1 уровень: /test");
        }
        if(
    PlayerInfo[playerid][pAdmin] >= 2
            
    SendClientMessage(playerid,0xB8860BFF,"2 уровень: /test");
        if(
    PlayerInfo[playerid][pAdmin] >= 3
            
    SendClientMessage(playerid,0xB8860BFF,"3 уровень: /test");
        if(
    PlayerInfo[playerid][pAdmin] >= 4
            
    SendClientMessage(playerid,0xB8860BFF,"4 уровень: /test");
        if(
    PlayerInfo[playerid][pAdmin] == 5
            
    SendClientMessage(playerid,0xB8860BFF,"5 уровень: /test");
        return 
    1;


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

    Статус
    Оффлайн
    Регистрация
    15.06.2014
    Сообщений
    651
    Репутация:
    106 ±
    Цитата Сообщение от Salvador Посмотреть сообщение
    PHP код:
    if(strcmp(cmd"/ahelp"true) == 0)
    {
        if(
    PlayerInfo[playerid][pAdmin] >= 1
        {
            
    SendClientMessage(playerid,0xFFFF00AA,"Доступные команды:");
            
    SendClientMessage(playerid,0xB8860BFF,"1 уровень: /test");
        }
        if(
    PlayerInfo[playerid][pAdmin] >= 2
            
    SendClientMessage(playerid,0xB8860BFF,"2 уровень: /test");
        if(
    PlayerInfo[playerid][pAdmin] >= 3
            
    SendClientMessage(playerid,0xB8860BFF,"3 уровень: /test");
        if(
    PlayerInfo[playerid][pAdmin] >= 4
            
    SendClientMessage(playerid,0xB8860BFF,"4 уровень: /test");
        if(
    PlayerInfo[playerid][pAdmin] == 5
            
    SendClientMessage(playerid,0xB8860BFF,"5 уровень: /test");
        return 
    1;

    А чем лучше ?)

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

    Статус
    Оффлайн
    Регистрация
    10.05.2013
    Адрес
    Аҧсуа бызшәа
    Сообщений
    2,271
    Репутация:
    418 ±
    Цитата Сообщение от #Azumi Посмотреть сообщение
    А чем лучше ?)
    Макросы не используются + код поправил.

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

    Статус
    Оффлайн
    Регистрация
    10.12.2013
    Сообщений
    35
    Репутация:
    7 ±
    PHP код:
    new CMD_TEXT[6][64] = {
    "/test""/test""/test""/test""/test"
    };

    if(
    strcmp(cmd"/ahelp"true) == 0)
    {
        new 
    stringf[64];
        for(new 
    i=1<= 5i++) 
        {
            if(
    PlayerInfo[playerid][pAdmin] < i) continue;
            else 
    format(stringf64"%i уровень: %s",i,CMD_TEXT[i]),SendClientMessage(playerid0xB8860BFFstringf);
            if(
    == 1SendClientMessage(playerid,0xFFFF00AA,"Доступные команды:");
        }
        return 
    1;

    Последний раз редактировалось Valera_Trefilov; 22.09.2014 в 22:57.

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

    Статус
    Оффлайн
    Регистрация
    10.05.2013
    Адрес
    Аҧсуа бызшәа
    Сообщений
    2,271
    Репутация:
    418 ±
    stringf?
    Можно кстати оператор sizeof заюзать.
    + это не удобно.

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

    Статус
    Оффлайн
    Регистрация
    10.12.2013
    Сообщений
    35
    Репутация:
    7 ±
    Вот немного переделал. как по мне проще команды в массив. а потом просто циклом вывести.
    немножко оптимизации просто

    PHP код:
    new CMD_TEXT[6][64] = {
    "/test""/test""/test""/test""/test"
    };

    if(
    strcmp(cmd"/ahelp"true) == 0)
    {
        new 
    stringf[64];
        for(new 
    i=1<= 5i++) 
        {
            if(
    == 1SendClientMessage(playerid,0xFFFF00AA,"Доступные команды:");
            if(
    PlayerInfo[playerid][pAdmin] == iformat(stringf64"%i уровень: %s",i,CMD_TEXT[i]),SendClientMessage(playerid0xB8860BFFstringf);
            else break;
        }
        return 
    1;

    Цитата Сообщение от Salvador Посмотреть сообщение
    stringf?
    Можно кстати оператор sizeof заюзать.
    + это не удобно.

  8. Пользователь сказал cпасибо:
    gangzone.ini (23.09.2014)
  9. #8
    Аватар для Salvacore
    Инжунер-погромист

    Статус
    Оффлайн
    Регистрация
    10.05.2013
    Адрес
    Аҧсуа бызшәа
    Сообщений
    2,271
    Репутация:
    418 ±
    Цитата Сообщение от Valera_Trefilov Посмотреть сообщение
    Вот немного переделал. как по мне проще команды в массив. а потом просто циклом вывести.
    немножко оптимизации просто

    PHP код:
    new CMD_TEXT[6][64] = {
    "/test""/test""/test""/test""/test"
    };

    if(
    strcmp(cmd"/ahelp"true) == 0)
    {
        new 
    stringf[64];
        for(new 
    i=1<= 5i++) 
        {
            if(
    == 1SendClientMessage(playerid,0xFFFF00AA,"Доступные команды:");
            if(
    PlayerInfo[playerid][pAdmin] == iformat(stringf64"%i уровень: %s",i,CMD_TEXT[i]),SendClientMessage(playerid0xB8860BFFstringf);
            else break;
        }
        return 
    1;

    PHP код:
    if(PlayerInfo[playerid][pAdmin] == iformat(stringf64"%i уровень: %s",i,CMD_TEXT[i]),SendClientMessage(playerid0xB8860BFFstringf); 
    Идеально.

  10. #9
    Аватар для MR_BEN
    Пользователь

    Статус
    Оффлайн
    Регистрация
    10.01.2014
    Сообщений
    110
    Репутация:
    29 ±
    Цитата Сообщение от Valera_Trefilov Посмотреть сообщение
    Вот немного переделал. как по мне проще команды в массив. а потом просто циклом вывести.
    немножко оптимизации просто

    PHP код:
    new CMD_TEXT[6][64] = {
    "/test""/test""/test""/test""/test"
    };

    if(
    strcmp(cmd"/ahelp"true) == 0)
    {
        new 
    stringf[64];
        for(new 
    i=1<= 5i++) 
        {
            if(
    == 1SendClientMessage(playerid,0xFFFF00AA,"Доступные команды:");
            if(
    PlayerInfo[playerid][pAdmin] == iformat(stringf64"%i уровень: %s",i,CMD_TEXT[i]),SendClientMessage(playerid0xB8860BFFstringf);
            else break;
        }
        return 
    1;


    Добавить цикл это уже относится к разряду оптимизации?

  11. Пользователь сказал cпасибо:
    Unreal (04.10.2014)
  12. #10
    Аватар для Eliano
    Пользователь

    Статус
    Оффлайн
    Регистрация
    30.09.2014
    Адрес
    PTZ
    Сообщений
    12
    Репутация:
    1 ±
    Очень распространенная команда.
    Не уверен,что из неё выйдет что-то стоющее.
    А так,я понял,выше код оптимизированной версии,добавь в описание,а то будут юзать не оптимизированную.

 

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

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

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

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

Ваши права

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