Добро пожаловать на Pro Pawn - Портал о PAWN-скриптинге.
Показано с 1 по 7 из 7
  1. #1
    Аватар для StevenH
    Пользователь

    Статус
    Оффлайн
    Регистрация
    13.10.2015
    Сообщений
    516
    Репутация:
    21 ±

    Kick без причины (не обязательно), как сделать? DC_CMD [НЕ решено]

    Всем привет. Командный процессор - DC_CMD.

    Делаю команду как на адвансе /kick. Там же есть 2 параметра
    - Айди игрока
    - Причина (но причина не обязательна)

    Можно написать /kick 5 (и выйдет опр. текст), а можно написать /kick 5 читы (и выйдет совсем другой текст)

    Как так сделать?
    Последний раз редактировалось StevenH; 08.03.2016 в 15:41.

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

    Статус
    Оффлайн
    Регистрация
    27.01.2014
    Адрес
    Восточный Мордор
    Сообщений
    5,588
    Репутация:
    1984 ±
    Например, было так:
    PHP код:
    if(sscanf(params"is[60]"giveplayeridreason)) return SendClientMessage(... 
    А ты сделай так
    PHP код:
    sscanf(params"I(-1)s[60]"giveplayeridreason);
    if(
    giveplayerid == -1) return SendClientMessage(... 
    Связаться со мной в VK можно через личные сообщения этой группы
    Заказы не принимаю

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

    Steve Pavlina

  3. Пользователь сказал cпасибо:
    StevenH (08.03.2016)
  4. #3
    Аватар для StevenH
    Пользователь

    Статус
    Оффлайн
    Регистрация
    13.10.2015
    Сообщений
    516
    Репутация:
    21 ±
    Цитата Сообщение от DeimoS Посмотреть сообщение
    Например, было так:
    PHP код:
    if(sscanf(params"is[60]"giveplayeridreason)) return SendClientMessage(... 
    А ты сделай так
    PHP код:
    sscanf(params"I(-1)s[60]"giveplayeridreason);
    if(
    giveplayerid == -1) return SendClientMessage(... 
    Не совсем понял, но не получается чуток. Кикает всё время с причиной, даже если указать: /kick 0
    Код:
    PHP код:
    CMD:kick1(playeridparams[])
    {
            if(
    sscanf(params"I(-1)s[32]"params[0], params[1])) SCM(playeridCOLOR_GREY"Вводите /kick [id] [Причина (не обязательно)]");
        if(
    params[0] == -1)
        {
            static const 
    fmt_str[] = "Администратор %s кикнул игрока %s.";
            new 
    string[sizeof(fmt_str)-2+24-2+24];
            
    format(stringsizeof(string), fmt_strGetName(playerid), GetName(params[0]));
            
    SendClientMessageToAll(COLOR_LIGHTREDstring);
            
    SCM(playerid, -1"Кик без причины");
        }
        else
        {
            static const 
    fmt_str[] = "Администратор %s кикнул игрока %s. Причина: %s";
            new 
    string[sizeof(fmt_str)-2+24-2+24-2+32];
            
    format(stringsizeof(string), fmt_strGetName(playerid), GetName(params[0]), params[1]);
            
    SendClientMessageToAll(COLOR_LIGHTREDstring);
            
    SCM(playerid, -1"Кик с причиной");
        }
        return 
    true;

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

    Т.е. мне надо как то проверку поставить на 2 параметр (params[1]), есть причина, или нету...

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

    Статус
    Оффлайн
    Регистрация
    13.10.2015
    Сообщений
    516
    Репутация:
    21 ±
    Решил с помощью '/0'

  6. #5
    Аватар для ziggi
    Проверенный

    Статус
    Оффлайн
    Регистрация
    14.05.2015
    Сообщений
    1,181
    Репутация:
    790 ±
    PHP код:
    sscanf(params"uS()[32]"playeridreason

  7. 2 пользователя(ей) сказали cпасибо:
    DeimoS (08.03.2016) MistPro (11.03.2016)
  8. #6
    Аватар для kushichka
    Пользователь

    Статус
    Оффлайн
    Регистрация
    02.04.2014
    Сообщений
    75
    Репутация:
    6 ±
    PHP код:
    if(sscanf(params"is[60]"giveplayeridreason)) return SendClientMessage(... 
    if(!
    stlen(reason)) reason EOS
    Что-то вроде того

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

    Статус
    Оффлайн
    Регистрация
    17.11.2015
    Адрес
    Stavropol
    Сообщений
    1,369
    Репутация:
    113 ±
    Цитата Сообщение от kushichka Посмотреть сообщение
    PHP код:
    if(!stlen(reason)) reason EOS
    Зачем очищать то что оказалось пустым?
    [Anticheat]___Invisible Fly Hack
    [Anticheat]____Weapon/Ammo Hack
    [Function]______ResetPlayerWeaponSlot
    [Function]_______FIX_SetPlayerAmmo
    [ServerMod]______TDM | Zombie Apokalypse

 

 

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

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

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

Ваши права

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