Заказать Сервер Заказать Плагин Контакты Поиск

[ вход ]
[ последние сообщения ]

Страница 1 из 11
Форум » SourceMod - Counter Strike Source && CS GO » Обсуждение » Запретить атаковать правой кнопкой ножа
Запретить атаковать правой кнопкой ножа
polo79655 Дата: Воскресенье, 20.11.2016, 16:10:16 | Сообщение # 1
Сообщений: 72
Репутация: -2 [ +/- ]
Пытался запретить правую кнопку ножа вот таким образом:
public Action:OnPlayerRunCmd(client, &buttons, &impulse, Float:vel[3], Float:angles[3], &weapon)
{
if (client == xui)
{
buttons &= ~IN_ATTACK2;
return Plugin_Changed;
}
return Plugin_Continue;
}
но не работает, это именно в кс го, может кто знает что сделать? (С револьвером тоже самое..)
 
Meow_1337 Дата: Понедельник, 21.11.2016, 04:06:13 | Сообщение # 2
Сообщений: 209
Репутация: 11 [ +/- ]
polo79655, в следующий раз используй ПОИСК, прежде чем штудировать темы пачкаами.
Код
public Action OnPlayerRunCmd(int client, int &buttons, int &impulse, float vel[3], float angles[3]) {
    if (!IsClientInGame(client)) return Plugin_Continue;
    
    if (buttons & IN_ATTACK2) {
  buttons &= ~IN_ATTACK2;
  return Plugin_Changed;
    }
    
    return Plugin_Continue;
}

Табуляцию кода сам поправишь, я тебе дал готовый вариант, писал через обычный блокнот, вот она и слетела.


Сообщение отредактировал Meow_1337 - Понедельник, 21.11.2016, 04:11:59
 
polo79655 Дата: Понедельник, 21.11.2016, 10:22:37 | Сообщение # 3
Сообщений: 72
Репутация: -2 [ +/- ]
Цитата Meow_1337 ()
polo79655, в следующий раз используй ПОИСК, прежде чем штудировать темы пачкаами.

Можешь пожалуйста объяснить, почему мой код не работал, чем он отличается от твоего?
 
Meow_1337 Дата: Понедельник, 21.11.2016, 11:21:11 | Сообщение # 4
Сообщений: 209
Репутация: 11 [ +/- ]
polo79655, подумай.
if (client == xui) что это?
 
polo79655 Дата: Понедельник, 21.11.2016, 13:00:39 | Сообщение # 5
Сообщений: 72
Репутация: -2 [ +/- ]
Цитата Meow_1337 ()
if (client == xui) что это?

условия, при которых я хочу запретить клиенту использовать вторую атаку

Добавлено (21.11.2016, 13:00:39)
---------------------------------------------

Цитата polo79655 ()
public Action:OnPlayerRunCmd(client, &buttons, &impulse, Float:vel[3], Float:angles[3], &weapon)
{
if (client == xui)
{
buttons &= ~IN_ATTACK2;
return Plugin_Changed;
}
return Plugin_Continue;
}

я точно также делал с первой атакой, и всё работает на ура, а со второй почему-то нет!
 
Meow_1337 Дата: Понедельник, 21.11.2016, 13:13:15 | Сообщение # 6
Сообщений: 209
Репутация: 11 [ +/- ]
polo79655, значит что-то не так. Мне сложно говорить, ибо я не вижу всего твоего кода, да и не нужно, я тебе дал пример нормальный, дальше сам.
 
polo79655 Дата: Понедельник, 21.11.2016, 19:14:27 | Сообщение # 7
Сообщений: 72
Репутация: -2 [ +/- ]
Цитата polo79655 ()
polo79655, значит что-то не так. Мне сложно говорить, ибо я не вижу всего твоего кода, да и не нужно, я тебе дал пример нормальный, дальше сам.

Спасибо

Добавлено (21.11.2016, 19:14:27)
---------------------------------------------

Цитата polo79655 ()
polo79655, значит что-то не так. Мне сложно говорить, ибо я не вижу всего твоего кода, да и не нужно, я тебе дал пример нормальный, дальше сам.

Помоги пожалуйста, у меня опять проблема появилась... В общем я заблокировал ЛЕВУЮ кнопку, всё вроде бы хорошо, но теперь, если нажать одновременно левую и правую, срабатывает левая... Почему так? Я делал по твоему коду, только двойку убрал.
 
Meow_1337 Дата: Понедельник, 21.11.2016, 20:38:26 | Сообщение # 8
Сообщений: 209
Репутация: 11 [ +/- ]
polo79655, IN_ATTACK2 это правая кнопка мыши.
IN_ATTACK это левая кнопка мыши.
 
polo79655 Дата: Вторник, 22.11.2016, 00:10:29 | Сообщение # 9
Сообщений: 72
Репутация: -2 [ +/- ]
Цитата Meow_1337 ()
polo79655, IN_ATTACK2 это правая кнопка мыши.
IN_ATTACK это левая кнопка мыши.

Ну я как бы в курсе, мне нужно заблочить стрельбу ПОЛНОСТЬЮ, я заблочил левую кнопку и правую. Все нормально, нельзя резать левой и стрелять правой, но если нажать одновременно на левую и на правую, то начинает атаковать левой кнопкой, как это заблочить? Я думал это атака3, но нет. Помоги пожалуйста.
 
Meow_1337 Дата: Вторник, 22.11.2016, 00:41:24 | Сообщение # 10
Сообщений: 209
Репутация: 11 [ +/- ]
polo79655, сделай проверки.
if (buttons & IN_ATTACK2 || buttons & IN_ATTACK || buttons & IN_ATTACK && buttons & IN_ATTACK2 || buttons & IN_ATTACK2 && buttons & IN_ATTACK)
сложно сказать поможет или нет, ибо я с таким не сталкивался.
Глянь: http://world-source.ru/forum/102-3608-21792-16-1394334276

Можно еще так, но я не проверял.
if ((buttons & IN_ATTACK) == IN_ATTACK) buttons &= ~IN_ATTACK2; // Если игрок нажал ЛКМ мыши, то блокируем ПКМ мыши. Вообщем куучу примеров, дальше сам.


Сообщение отредактировал Meow_1337 - Вторник, 22.11.2016, 00:46:42
 
polo79655 Дата: Вторник, 22.11.2016, 01:36:56 | Сообщение # 11
Сообщений: 72
Репутация: -2 [ +/- ]
public Action:OnPlayerRunCmd(client, &buttons, &impulse, Float:vel[3], Float:angles[3], &weapon)
{
if (buttons & IN_ATTACK2 || buttons & IN_ATTACK || buttons & IN_ATTACK && buttons & IN_ATTACK2 || buttons & IN_ATTACK2 && buttons & IN_ATTACK)
{
return Plugin_Changed;
}
return Plugin_Continue;
}
так получается?

Добавлено (22.11.2016, 01:36:56)
---------------------------------------------

Цитата polo79655 ()
polo79655, сделай проверки.
if (buttons & IN_ATTACK2 || buttons & IN_ATTACK || buttons & IN_ATTACK && buttons & IN_ATTACK2 || buttons & IN_ATTACK2 && buttons & IN_ATTACK)
сложно сказать поможет или нет, ибо я с таким не сталкивался.
Глянь: http://world-source.ru/forum/102-3608-21792-16-1394334276

Можно еще так, но я не проверял.
if ((buttons & IN_ATTACK) == IN_ATTACK) buttons &= ~IN_ATTACK2; // Если игрок нажал ЛКМ мыши, то блокируем ПКМ мыши. Вообщем куучу примеров, дальше сам.

Всё сделал, спасибо большое!!!
 
хвостег Дата: Вторник, 22.11.2016, 02:37:52 | Сообщение # 12
Сообщений: 161
Репутация: 53 [ +/- ]
Код
new filter = buttons & (IN_ATTACK|IN_ATTACK2);
if(filter)
{
    buttons &= ~filter;
    return Plugin_Changed;
}
return Plugin_Continue;


Сообщение отредактировал хвостег - Среда, 23.11.2016, 19:52:49
 
Meow_1337 Дата: Вторник, 22.11.2016, 08:06:39 | Сообщение # 13
Сообщений: 209
Репутация: 11 [ +/- ]
/del


Сообщение отредактировал Meow_1337 - Вторник, 22.11.2016, 08:11:30
 
polo79655 Дата: Вторник, 22.11.2016, 13:23:34 | Сообщение # 14
Сообщений: 72
Репутация: -2 [ +/- ]
/del

Добавлено (22.11.2016, 13:23:34)
---------------------------------------------
/del

 
Форум » SourceMod - Counter Strike Source && CS GO » Обсуждение » Запретить атаковать правой кнопкой ножа
Страница 1 из 11
Поиск: