Заказать игровой сервер Контакты (заказать плагин/исправить ошибки/другое) Пожертвовать Поиск

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

  • Страница 1 из 1
  • 1
Binding
«SeReGa»☆ Дата: Среда, 29.01.2014, 11:12:21 | Сообщение # 1
Сообщений: 395
Репутация: 37 [ +/- ]
Здравствуйте, есть ли какой нибудь действенный способ забиндить кнопки клиента со стороны сервера.
 
dron216 Дата: Среда, 29.01.2014, 12:50:36 | Сообщение # 2
Сообщений: 151
Репутация: 18 [ +/- ]
Такого способа нет, сам пытался найти, но ничего не нашел...
 
«SeReGa»☆ Дата: Среда, 29.01.2014, 13:52:53 | Сообщение # 3
Сообщений: 395
Репутация: 37 [ +/- ]
У кого нибудь есть ещё идеи??
 
Tokami Дата: Среда, 29.01.2014, 15:29:28 | Сообщение # 4
Сообщений: 238
Репутация: 19 [ +/- ]
Я сделал легче) У меня джайл сервер и сдела !ct для кт и !t для Т допустим у Т там меню и 1 Shop переносит на шоп) 2 Lastrequest игры 2 выжевших и тд ты понял вообщем)
 
«SeReGa»☆ Дата: Среда, 29.01.2014, 18:02:25 | Сообщение # 5
Сообщений: 395
Репутация: 37 [ +/- ]
Прости, но не я, не большинство людей по любому ничего не поняли)))))))))))
 
Tokami Дата: Среда, 29.01.2014, 21:52:21 | Сообщение # 6
Сообщений: 238
Репутация: 19 [ +/- ]
создаешь меню
1Бинд
2Бинд
3Бинд
4Бинд
5Бинд
И допустим игркам надо будет биндить 1 команду !ct а дальше будет меню вылезать и там функцие)
 
«SeReGa»☆ Дата: Четверг, 30.01.2014, 09:40:04 | Сообщение # 7
Сообщений: 395
Репутация: 37 [ +/- ]
zloy кто нибудь объясните что он подразумевает, я ничего не пойму
Цитата Tokami ()
создаешь меню

какаое меню?
Цитата Tokami ()
И допустим игркам надо будет биндить 1 команду

какую команду? bind alt "say !ct"?????????????

или ты хочешь сказать что ты попросил всех игроков прописать bind alt "say !ct" и когда они нажымают alt у них появляется меню?

так ет здесь тема не для того чтобы попросить всех игроков прописать bind alt "say !ct"
а чтобы по команде от сервера у клиента выполнялась команда в консоли "bind alt "say !ct""
я пробовал всё и FakeClientCommand и FakeClientCommandEx но всё таки знаю что еть другие способы
потому что помню я играл на какомто сервере и у меня биндились на нём кнопки "i,o,p,[,],и другие"


Сообщение отредактировал «SeReGa»☆ - Четверг, 30.01.2014, 10:09:34
 
Tokami Дата: Четверг, 30.01.2014, 12:11:46 | Сообщение # 8
Сообщений: 238
Репутация: 19 [ +/- ]
я лишь сказал по удобней вариант)
 
«SeReGa»☆ Дата: Четверг, 30.01.2014, 13:10:02 | Сообщение # 9
Сообщений: 395
Репутация: 37 [ +/- ]
Цитата Tokami ()
я лишь сказал по удобней вариант)

да я понял, но всё таки сам посмотри всех не заставишь забиндить кнопку)))
 
Shouldercannon Дата: Понедельник, 19.02.2024, 09:19:51 | Сообщение # 10
Сообщений: 21
Репутация: 0 [ +/- ]
Решение данной проблемы так и не найдено?
 
_wS_ Дата: Понедельник, 19.02.2024, 12:24:30 | Сообщение # 11
Цитата Shouldercannon ()
Решение данной проблемы так и не найдено?

Сервер не может менять настройки клиенту и заставлять его использовать большинство команд, которые уже существуют. Это для безопасности сделано. Но всё же есть небольшой список команд-исключений, который можно узнать, введя в консоль findflags SERVER_CAN_EXECUTE. Если команда есть в списке, или она создана каким-то плагином/расширением, например, через RegConsoleCmd, то сервер может заставить клиента использовать её с помощью:

Код
ClientCommand(client, "cmd1;cmd2;");
FakeClientCommand(client, "cmd1;cmd2;"); // В основном этот вариант.


Можно использовать костыльный вариант.
Зайти в клиент, открыть cfg/config_default.cfg, использовать уже существующие бинды, например, есть бинд:

Код
bind "x" "radio2"


Теперь просто перехватываем команду:

Код
public void OnPluginStart()
{
    AddCommandListener(OnCmd, "radio2");
}

public Action OnCmd(int client, const char[] command, int argc)
{
    // Здесь нужный код.
    retun Plugin_Handled; // Меню радиокоманд блокируем (не открывается).
}


И теперь при нажатии на x выполнится нужный код.
Проблема может быть, только если клиент изменил бинд на другую кнопку (не x).
 
  • Страница 1 из 1
  • 1
Поиск: