News:

VoxCommando supports plugins for a wide variety of programs and devices. Contact us if you want to create your own.

Main Menu

Python integration and timers

Started by Makedar, March 05, 2021, 09:38:24 AM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Makedar

Всем привет. Решил допилить себе пресет для Elite Dangerous.
Я для гиперпрыжка хотел организовать возможность запоминания состояния. Суть в чем:
1. Нажимается кнопка/отдаётся команда. {По идее ставится HJumpOn=True}
2. 20 секунд происходит активация. {В это время при повторном нажатии кнопки или получении команды отмены переменная HJumpOn = False}
3. Выполняется прыжок. {По идее ставится HJumpOn=False и HCruise = True}

Два вопроса:
1. Можно ли это организовать без привлечения питона?
2. Реально ли для вокса в момент удержания HJumpOn=True быть способным выполнять другие команды?

P.S. На всякий случай приложил список команд, если кому интересно будет

Aniv_D

ну смотри как данную команду вижу я (ну насколько я смог понять в том что ты задумал...)
нам нужно 3 команды.
1. запуск гипер-прыжка.
2. отмена гипер-прыжка.
3. команда которая будет выполняться по тригеру.

1. выполняем команду запуска голосом\нажатием кнопки
  нажимаем нужные кнопки, проговариваем нужную речь
  переменная HJumpOn=True как ты и писал выше
  запукаем таймер для события |VC.SetEventTimer|20s|HyperJumpOn| допустим с таким именем

2. если  мы решили отменить прыжок до окончания отсчета, то выполняем команду с отменой.
  переменная HJumpOn=False
  останавливаем таймер |VC.StopEventTimer|HyperJumpOn|
 
3. если мы все же выполним гипер-прыжок то через 20сек у нас сработает 3я команда в которой.
  переменная HJumpOn=False
  переменная HCruise =True

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

P.S. у меня имеется профиль с пакетом озвучки для элиты в котором реализовано чтение логов и статуса (на питоне) и озвучка событий в игре (опционально, можно отключить). если будет интересно посмотреть то можешь отписаться мне в ВК https://vk.com/aniv_d и я скину ссылку.

jitterjames

I'm not sure if I understand the purpose of these commands completely, but I don't think you even need to use a variable for this.  All you need to is set or cancel the timers.