// Тумблер F10
//Вкл/Выкл джоя
if (F10 = false) then var.f = 0
if (F10 = true and var.off = 0 and var.f = 0) {
 var.off = 1
 var.f = 1
elseif (F10 = true and var.off = 1 and var.f = 0) {
 var.off = 0
 var.f = 1
}
}
if var.off = 0 {
 //Опрос мышек ### НАЧАЛО ###
 if (Mouse1.present) {
  if (var.Mouse1_in = false) {
   var.Mouse1_mapX = 500 //Разрешение оси X,  подбирается индивидуально
   var.Mouse1_mapY = 500 //Разрешение оси Y  подбирается индивидуально
   var.Mouse1_Wheel = 11  //На сколько щелчков колеса мыши разбить ось джойстика
   var.Mouse1_mapZ = var.Mouse1_Wheel*120
  }
  // Создаем коэффициент нелинейности
  Var.Mouse1_Kx = MapRange(abs(var.Mouse1_X), 0, var.Mouse1_mapX, 1 ,1) //Последние 2 цифры - это, например, как от 30 до 100% деленное на 100
  Var.Mouse1_Ky = MapRange(abs(var.Mouse1_Y), 0, var.Mouse1_mapY, 1 ,1)
  
  //Сдвиг мышки с учетом коэффициента
  var.Mouse1_deltax = Delta(Mouse1.DirectInputX) * Var.Mouse1_Kx
  var.Mouse1_deltay = Delta(Mouse1.DirectInputY) * Var.Mouse1_Ky
  var.Mouse1_deltaz = Delta(Mouse1.DirectInputZ)
  // Новые координаты мыши
  var.Mouse1_X = var.Mouse1_X + (var.Mouse1_deltax)
  var.Mouse1_Y = var.Mouse1_Y + (var.Mouse1_deltay)
  var.Mouse1_Z = var.Mouse1_Z + (var.Mouse1_deltaz)
  //Нельзя выходить за границы допустимой зоны
  if var.Mouse1_X < -var.Mouse1_mapX then var.Mouse1_X = -var.Mouse1_mapX
  if var.Mouse1_X > var.Mouse1_mapX then var.Mouse1_X = var.Mouse1_mapX
  if var.Mouse1_Y < -var.Mouse1_mapY then var.Mouse1_Y = -var.Mouse1_mapY
  if var.Mouse1_Y > var.Mouse1_mapY then var.Mouse1_Y = var.Mouse1_mapY
  if var.Mouse1_Z < 0 then var.Mouse1_Z = 0
  if var.Mouse1_Z > var.Mouse1_mapZ then var.Mouse1_Z = var.Mouse1_mapZ
  //Преобразуем диапазон зоны от -524 до 524 в диапазон джойстика  от -1 до +1
  Var.Mouse1_JX = MapRange(var.Mouse1_X, -var.Mouse1_mapX, var.Mouse1_mapX, -1 ,1)
  Var.Mouse1_JY = MapRange(var.Mouse1_Y, -var.Mouse1_mapY, var.Mouse1_mapY, -1 ,1)
  Var.Mouse1_JZ = MapRange(var.Mouse1_Z, 0, var.Mouse1_mapZ, -1 ,1)
 }
 //Опрос мышек ### КОНЕЦ ###
 //Назначение осей джоя ### НАЧАЛО ###
 //Тяга
 ppjoy.Analog2 = - var.mouse1_JZ
 //Руль высоты
 ppjoy.Analog1 = var.mouse1_JY
 //Руль крена
 ppjoy.Analog0 = var.mouse1_JX
 //Руль направления
 ppjoy.Analog3 = Joystick.roll
 // Центрирование осей
 if Mouse1.Rightbutton = true {
  var.Mouse1_X = 0
  var.Mouse1_Y = 0
 }
 //ЛКМ=Кнопка 1
 ppjoy.Digital0 = mouse.LeftButton
//Назначение осей джоя ### КОНЕЦ ###
}