Показать сообщение отдельно
Старый 06.12.2006, 15:44   #81
Hamster
Больной. Диагноз "Car PC"
 
Аватар для Hamster
 
Регистрация: 01.09.2005
Возраст: 50
Город: Москва
Регион: 77, 97, 99, 177
Машина: 08\Acura\MDX •••• 07\Honda\Civic 4D
Сообщений: 4,379
Hamster is a splendid one to beholdHamster is a splendid one to beholdHamster is a splendid one to beholdHamster is a splendid one to beholdHamster is a splendid one to beholdHamster is a splendid one to beholdHamster is a splendid one to behold
По умолчанию

Вот пример скрипта (к сожалению последний, рабочий вариант в машине, и тока на выходных смогу выложить):

; Скрипт для подключения автомобильного двойстика Sony X4S к CarPc
; *********************** Секция настроек начало ***********************
JoystickNumber = 1
VolumeStep = 5
; Погрешность определения значений
KeyGetDelta = 2
; Значения кнопок
JKey_OFF = 1
JKey_ATT = 1
JKey_MUTE = 1
JKey_X1 = 1
JKey_X2 = 1
JKey_PREV = 1
JKey_NEXT = 1
JKey_VOLD = 1
JKey_VOLU = 1
JKey_SOURCE = 1
; Переменная в которой запоминаем громкость (для Mute)
MUTE_SOUND = 0
; *********************** Секция настроек конец ***********************

#SingleInstance
SetFormat, float, 03 ; Omit decimal point from axis position percentages.

; Читаем инфу по жостику. Пока с ней ничего не делаем
GetKeyState, joy_buttons, %JoystickNumber%JoyButtons
GetKeyState, joy_name, %JoystickNumber%JoyName
GetKeyState, joy_info, %JoystickNumber%JoyInfo

SoundGet, MUTE_SOUND
Loop
{
; Читаем состояние кнопок. Если кнопарь нажат, то переменная button(№кнопки)= D
Loop, %joy_buttons%
{
GetKeyState, button%a_index%, %JoystickNumber%joy%a_index%
}

; Читаем показания оси Х - по сути основных кнопок жостика
GetKeyState, joyx, %JoystickNumber%JoyX

; Читаем мышиный скролл (пока не пользуем)
; GetKeyState, mouse_Down, WheelDown
; GetKeyState, mouse_Up, WheelUp

; Генерим нужные действия:

; изменение громкости - меньше
If joyx-KeyGetDelta >= JKey_VOLD and joyx+KeyGetDelta <= JKey_VOLD
{
SoundSet -VolumeStep
}

; изменение громкости - больше
If joyx-KeyGetDelta >= JKey_VOLU and joyx+KeyGetDelta <= JKey_VOLU
{
SoundSet +VolumeStep
}

; JKey_MUTE
If joyx-KeyGetDelta >= JKey_MUTE and joyx+KeyGetDelta <= JKey_MUTE
{
SoundGet, Tmp
If Tmp = 0 ;мы в режиме MUTE
{
SoundSet, MUTE_SOUND
}
Else
{
SoundGet, MUTE_SOUND
SoundSet, 0
}
}

; JKey_OFF
If joyx-KeyGetDelta >= JKey_OFF and joyx+KeyGetDelta <= JKey_OFF
{
; Действие на JKey_OFF
}


; JKey_ATT
If joyx-KeyGetDelta >= JKey_ATT and joyx+KeyGetDelta <= JKey_ATT
{
; Действие на JKey_ATT
}


; JKey_X1
If joyx-KeyGetDelta >= JKey_X1 and joyx+KeyGetDelta <= JKey_X1
{
; Действие на JKey_X1
}

; JKey_X2
If joyx-KeyGetDelta >= JKey_X2 and joyx+KeyGetDelta <= JKey_X2
{
; Действие на JKey_X2
}

; JKey_PREV
If joyx-KeyGetDelta >= JKey_PREV and joyx+KeyGetDelta <= JKey_PREV
{
; Действие на JKey_PREV
}

; JKey_NEXT
If joyx-KeyGetDelta >= JKey_NEXT and joyx+KeyGetDelta <= JKey_NEXT
{
; Действие на JKey_NEXT
}

; JKey_SOURCE
If joyx-KeyGetDelta >= JKey_SOURCE and joyx+KeyGetDelta <= JKey_SOURCE
{
; Действие на JKey_SOURCE
}

; Ждем 200 мс (0.2 сек)
Sleep, 200
}
return
__________________
Старый проект Honda Accord RHD
Теперь будет Acura MDX 2008 и Honda Civic 4D 2007 и Mitsubishi Outlander XL 2011
Hamster вне форума   Ответить с цитированием