REL LUA HoldCMDs

  • Привет! Если твой основной форумник заблокирован - ты можешь оставить заявку в этом разделе: Нажми на меня!, НЕ создавая новый форумный аккаунт.
  • Менеджмент проекта ждет ваши вопросы/предложения/критику работы проекта в специальном треде

шкипер

#freeSAES
Автор темы
2,497
30,582
Не знаю, как разрекламировать. По сути -- биндер, позволяющий открывать машины, инвентарь и телефон по нажатию и удержанию кнопки. Все.

Что еще показать -- вот интерфейс. Прогресс сбрасывается, как только вы отжали кнопку -- ну вы поняли, таких интерфейсов полно.
1787595121203.png

Активация автоматическая. По стандарту кнопка P отвечает за телефон, I за инвентарь, L -- за открытие авто/дома.

В скрипте можно изменить время -- я поставил полсекунды, а можно добавить клавиш. Ищем вот этот блок:

Код:
-- Время удержания изменено на 1 секунду
local BINDS = {
    { key = vkeys.VK_L, cmd = "/lock",  hold_time = 0.5 },
    { key = vkeys.VK_I, cmd = "/inv",   hold_time = 0.5 },
    { key = vkeys.VK_P, cmd = "/phone", hold_time = 0.5 }
}

его очень легко найти, он на восьмой строке.
и можем добавить сюда что угодно:
{ key = vkeys.VK_%любая клавиша%, cmd = "%любая команда%", hold_time = 0.5 },

и эту строчку вставляем предпоследней. потому что в конце строчки, кроме последней должна быть запятая.
Можете так себе забиндить хоть /craft, хоть /cbrake, хоть что угодно, для чего требуется команда.

Если полсекунды кажутся вам слишком быстрыми (а они не такие) -- параметр hold_time изменяете на время в секундах (sic! очень важно)

Для моих хоуми с SW интерфейс будет великоват, но не критично. Это если вдруг кому интересно.

Из зависимостей -- vkeys, imgui. Должны стоять у каждого. Скачять можно в аттачах.

Из подобных мелочей на самом деле складывается хороший игровой опыт. Может быть, если бы да кабы -- может быть бы и кое-что не было столь деревянным по прошествию более чем полугода разработки :^)
 

Вложения

  • holdCMDs.zip
    1.9 KB · Просмотры: 0
Последнее редактирование:

шкипер

#freeSAES
Автор темы
2,497
30,582
Если чат открыт - скрипт не будет срабатывать?
Код:
    if not sampIsChatInputActive() and not sampIsDialogActive() and not isSampfuncsConsoleActive() then
            local current_time = os.clock()

в теории, он не должен работать с открытым чатом и инпутом вообще (логины/пароли/редактор паме), не должен работать с открытым диалогом и не должен работать с запущенной консолью сф.

на практике я знаю, что он не работает с открытым чатом.
 
  • Нравится
  • Cолидарен
Реакции: fbi.dff и CaliBanging

fbi.dff

Ветеран
Read only
721
2,384
Код:
    if not sampIsChatInputActive() and not sampIsDialogActive() and not isSampfuncsConsoleActive() then
            local current_time = os.clock()

в теории, он не должен работать с открытым чатом и инпутом вообще (логины/пароли/редактор паме), не должен работать с открытым диалогом и не должен работать с запущенной консолью сф.

на практике я знаю, что он не работает с открытым чатом.
ради прикола глянул.

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

шкипер

#freeSAES
Автор темы
2,497
30,582
ради прикола глянул.

при открытых диалогах и запущенной консолью с открытым чатом не работает. аналогично при входе в игру вылазит окно с вводом пароля, туда также нельзя написать - так как буквы печатаются в окно ввода пароля. когда заходишь от имени личного кабинета и выходит выбор персонажа - также нельзя попробовать. но заметил что при открытом инвентаре работает. проверил все открытые возможные диалоговые окна, которые на ум пришли.
инвентарь — это текстдрав. равно как и телефон. не очень уверен что текстдравы как класс определены в опкодах. с другой стороны, что инвентарь, что телефон не управляются с клавиатуры, а следовательно, открыть второй раз, /случайно/, вероятность низка, если не равна нулю.
 
  • Задумчивый
Реакции: fbi.dff

шкипер

#freeSAES
Автор темы
2,497
30,582
snail matic видимо по приколу придумали

Посмотреть вложение 4796388
а мне кстати почему-то не очень нравится через него. я делал, пруфов не будет. хрен знает.

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

у меня сейчас ровно один бинд там стоит — /cc на боковую клавишу мыши. и /pnick кстати тоже вроде стоял.

вообще снейлматик хорош. по сути скрипт конструктор внутри мунлоадера. но это скорее такой эксперимент — а можно ли выдать красивую анимашку и гуй? как оказалось — можно. а у снейлматика с выводом гуя геморрой. не говорю что невозможно, но периодически оно у меня отваливалось.

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

mаce

Легенда
6,857
73,300
а мне кстати почему-то не очень нравится через него. я делал, пруфов не будет. хрен знает.

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

у меня сейчас ровно один бинд там стоит — /cc на боковую клавишу мыши. и /pnick кстати тоже вроде стоял.

вообще снейлматик хорош. по сути скрипт конструктор внутри мунлоадера. но это скорее такой эксперимент — а можно ли выдать красивую анимашку и гуй? как оказалось — можно. а у снейлматика с выводом гуя геморрой. не говорю что невозможно, но периодически оно у меня отваливалось.

а ну и суть именно в том чтобы нажать и удержать и получить результат. или не получить если нажал случайно. слабо помню, можно ли такое реализовать в см. даже если поставить функцию-пдейсхолдер с вейтом в 500, вроде как результат будет в любом случае, то есть защиты от случайного нажатия нет. но я могу ошибиться, потому что могу. мне много лет, я стар.
никогда не имел проблем с этим биндером, никогда случайно ни на что не нажимал, все кнопки это либо комбинации клавиш, либо находятся по правую сторону клавиатуры, ну и при использовании чата бинды естественно не срабатывают