AMARANT Posted March 5, 2012 Share Posted March 5, 2012 У меня вопрос по поводу функции bindKey. Как известно, она привязывает определенные клавиши на клавиатуре к определенным функциям, которые необходимо выполнять при их нажатии. Так вот в чем проблема. На какой стороне лучше назначать эти самые привязки клавиш - на клиенте или на сервере? Дело в том что у меня при привязке на клиенте иногда попросту эти самые функции не выполнялись, хотя назначаются они при старте ресурса. При привязке же через сервер при коннекте игрока binkKey ни разу не сбивалась. Причина в том что я назначаю неправильно или все же стоит только через сервер? Link to comment
MX_Master Posted March 6, 2012 Share Posted March 6, 2012 Серверная вешает на кнопки чисто серверные функции (: Если нужно выполнить клиентскую функцию, то, конечно, назначить надо в клиенте. Ну например, если кнопка открывает GUI окно и т.п. С клиентской функцией проблем не было. Link to comment
AMARANT Posted March 6, 2012 Author Share Posted March 6, 2012 Сделал мобильник на "B", но к сожалению кнопка в какой-то момент перестает работать, и ГУИ-окно мобилы не показывается. Лечится перезапуском ресурса, но все же интересно почему пропадает реакция на кнопку со временем? Может удастся отследить при каких условиях, но это у меня не в первый раз. До этого "тухли" привязки на включения фар, двигателя и закрытия машины, а также открытия окна статистика на F1. Все они были на клиенте. Пользуюсь вот таким стандартным биндом клавиш при старте ресурса: MOBILE="B" function BindB ( ) bindKey ( MOBILE, "down", mobile ) end addEventHandler ( "onClientResourceStart",getRootElement(),BindB ) Link to comment
TwiX! Posted March 6, 2012 Share Posted March 6, 2012 MX_Master, можно ли забиндить клавишу так, например вот для сигнала в машине, стандартом стоит 'h' то есть bindKey ( player, "h", "down", playHorn ) естессно на h будет играть звук, но как можно определить какая именно кнопка стоит на сигнал? это может быть и шифт , пробел, и т.д то есть как сделать проверку? Чтобы если у игрока например сигнал на 'o' бинд ставился на о.. Сделал мобильник на "B", но к сожалению кнопка в какой-то момент перестает работать, и ГУИ-окно мобилы не показывается. Лечится перезапуском ресурса, но все же интересно почему пропадает реакция на кнопку со временем? Может удастся отследить при каких условиях, но это у меня не в первый раз. До этого "тухли" привязки на включения фар, двигателя и закрытия машины, а также открытия окна статистика на F1. Все они были на клиенте. Пользуюсь вот таким стандартным биндом клавиш при старте ресурса: MOBILE="B" function BindB ( ) bindKey ( MOBILE, "down", mobile ) end addEventHandler ( "onClientResourceStart",getRootElement(),BindB ) https://wiki.multitheftauto.com/wiki/BindKey Link to comment
MX_Master Posted March 6, 2012 Share Posted March 6, 2012 AMARANT, у тебя кнопка биндится при запуске ВАЩЕ любого ресурса, а не конкретно при запуске ресурса, где используется кнопка. Отсюда вполне могут быть сбои. Попробуй .. MOBILE = "b" -- лучше юзать строчную букву function BindB ( ) bindKey ( MOBILE, "down", mobile ) end addEventHandler ( "onClientResourceStart", resourceRoot, BindB ) Qwerty~, а вот так .. bindKey ( player, "horn", "down", playHorn ) -- "horn" это не конкретная кнопка, а название GTA действия Link to comment
TwiX! Posted March 7, 2012 Share Posted March 7, 2012 AMARANT, у тебя кнопка биндится при запуске ВАЩЕ любого ресурса, а не конкретно при запуске ресурса, где используется кнопка. Отсюда вполне могут быть сбои. Попробуй .. MOBILE = "b" -- лучше юзать строчную букву function BindB ( ) bindKey ( MOBILE, "down", mobile ) end addEventHandler ( "onClientResourceStart", resourceRoot, BindB ) Qwerty~, а вот так .. bindKey ( player, "horn", "down", playHorn ) -- "horn" это не конкретная кнопка, а название GTA действия спасибо Link to comment
AMARANT Posted March 8, 2012 Author Share Posted March 8, 2012 MX_Master, кажется помог твой способ, спасибо) Link to comment
AMARANT Posted March 10, 2012 Author Share Posted March 10, 2012 И еще столкнулся с проблемой, может кто подскажет. Стандартная функция toggleAllControls не отрубает назначенные новые кнопки, таким образом, когда нужно например спокойно написать что-то в кастом-чате - могут срабатывать эти назначенные кнопки, а у меня они открывают кучу разных окон. Есть ли какая нибудь другая функция для временного отключения этих биндов? Link to comment
Kenix Posted March 10, 2012 Share Posted March 10, 2012 Попробуй toggleControl и отрубай кнопки в цикле. Link to comment
Terwyq Posted January 21, 2022 Share Posted January 21, 2022 Помогите мне с скриптом Есть 2 скрипта- 1 скрипт меню F1,2 скрипт- автосалон не могу прописать чтоб список автомобилей открывался через F1 по клику Link to comment
Scripting Moderators Sarrum Posted January 22, 2022 Scripting Moderators Share Posted January 22, 2022 @Terwyq, просьба не поднимать старые темы. Создайте свою собственную и опишите подробно проблему, которую испытываете. Либо используйте общий топик: Закрыто. Link to comment
Recommended Posts