B737-800X_Zibo_sw.lua

2022年2月16日

FlyWithLuaを使って簡単にX-Planeにアクセスできるスイッチ群を作成しました。できるだけじゃまにならずに、便利にアクセスすることができるスイッチをコンセプトに作成。軽快に動作するので重宝します。

Zibo専用ですので、他の機体では表示されません。

B737-800X_Zibo_sw.lua

--if AIRCRAFT_FILENAME == "b738_4k.acf" then
if PLANE_TAILNUMBER == "ZB738" then
  require "graphics"

  local start_X      = 0
  local start_Y      = 0
  local display_A    = true   --初期画面は表示
  local display_B    = true   --初期画面は表示

  --フラップ点滅用 2つの動作を繰り返す(この場合オンとオフの点滅なので2になっている)
  --[[
  local msgtime
  msgtime = sim_time % 2
  ]]


  ---------------------------------------------------------------------------------------------------------------------------------------------------
  --datarefの綴が間違っていないならエラーにはならない。
  DataRef( "sim_time", "sim/network/misc/network_time_sec")   --点滅用

  DataRef("ParkBrake_sw", "sim/cockpit2/controls/parking_brake_ratio")	--"writable"を入れるとコマンドが動作しない laminar/B738/annunciator/parking_brake
  DataRef("ReverseThrust_sw", "sim/cockpit2/engine/actuators/throttle_beta_rev_ratio_all")    --"writable"を入れるとコマンドが動作しない
  --DataRef("ReverseThrust_sw", "sim/flightmodel/engine/ENGN_thro","writable")
  DataRef("SpeedBrake_sw", "sim/cockpit2/controls/speedbrake_ratio")	--"writable"を入れるとコマンドが動作しない
  DataRef("Flap_sw", "sim/cockpit2/controls/flap_ratio")	--"writable"を入れるとコマンドが動作しない
  DataRef("Flap_handle_deploy_sw", "sim/cockpit2/controls/flap_handle_deploy_ratio")
  DataRef("YawDamper_sw", "laminar/B738/toggle_switch/yaw_dumper_pos")
  DataRef("Wiper_sw", "sim/cockpit2/switches/wiper_speed")
  DataRef("AP_servos_sw", "sim/cockpit2/autopilot/servos_on")
  DataRef("Disconnect_sw", "laminar/B738/autopilot/disconnect_pos")--sim/cockpit2/autopilot/autopilot_on
  DataRef("AP_CWS_sw", "laminar/B738/autopilot/cmd_a_status")
  DataRef("FD_mode_sw", "sim/cockpit2/autopilot/flight_director_mode")
  DataRef("cockpit_door_ratio", "laminar/B738/door/flt_dk_door_ratio")
  DataRef("cockpit_door_lock", "laminar/B738/annunciator/door_lock_fail")
  --DataRef("Landing_light", "laminar/B738/spring_switch/landing_lights_all_on")
  DataRef("Land_light_left", "laminar/B738/switch/land_lights_left_pos")
  DataRef("Land_light_ret_left", "laminar/B738/switch/land_lights_ret_left_pos")
  DataRef("Land_light_ret_right", "laminar/B738/switch/land_lights_ret_right_pos")
  DataRef("Land_light_right", "laminar/B738/switch/land_lights_right_pos")
  --DataRef("Brightness", "laminar/B738/electric/panel_brightness")--,"sim/cockpit2/electrical/panel_brightness_ratio","writable"
  --DataRef("generic_brightness", "sim/flightmodel2/lights/generic_lights_brightness_ratio")
  local Brightness = dataref_table("laminar/B738/electric/panel_brightness")	--配列、メインパネルブライト[0]、オーバーヘッドパネルブライト[2]
  local Generic_lights_SW = dataref_table("sim/cockpit2/switches/generic_lights_switch")	--配列、多数使用
  local Generic_lights_switch = dataref_table("sim/cockpit2/switches/generic_lights_switch")	--配列[6][7]

  DataRef( "trad_nav1_a", "sim/cockpit/radios/nav1_freq_hz"       )
  DataRef( "trad_nav1_s", "sim/cockpit/radios/nav1_stdby_freq_hz" )
  DataRef( "trad_com1_a", "sim/cockpit/radios/com1_freq_hz"       )
  DataRef( "trad_com1_s", "sim/cockpit/radios/com1_stdby_freq_hz" )
  DataRef( "X_Camera_enabled", "SRS/X-Camera/integration/X-Camera_enabled") --そのままではONになるので、X-Camera の方で無効にしておく
  ---------------------------------------------------------------------------------------------------------------------------------------------------

  function Switches_draw()
    local foo_A = "Open_A" --切り替え用の文字
    local foo_B = "Open_B" --切り替え用の文字


    if display_A == true then    --もしdisply_Aがtrue(初期画面)なら、以下を表示
      -----------------------------------------------
      --//////// 17番目 ////////
      if display_B == true then
        draw_string( start_X + 10, start_Y + 117 + (16*21), "B737-800X Zibo", 1, 1, 1, 0.1 )
      else
        draw_string( start_X + 10, start_Y + 117 + (16*10), "B737-800X Zibo", 1, 1, 1, 0.1 )
      end
      ----------------------------------------------------------------------------------------------

      ----------------------------------------------------------------------------------------------
      --//////// 9番目 ////////
      if display_B == true then
        foo_B = "Close_B"   --初期テキスト
        -----------------------------------------------
        --//////// 20番目 ////////
        --X-Camera ID_21のところにマウスを持って行くと色が変化する
        if MOUSE_X > start_X and MOUSE_X < start_X + 88 and MOUSE_Y > start_Y + 113+(16*20) and MOUSE_Y < start_Y + 127+(16*20)   then   --playback mode枠のマウス範囲
          graphics.set_color(0 , 1 , 0, 0.3)
        else
          graphics.set_color(0 , 0 , 0, 0.3)
        end
        graphics.draw_rectangle( start_X, start_Y + 113+(16*20), start_X + 88, start_Y + 127+(16*20)) --playback mode枠の描画
        draw_string( start_X + 10, start_Y + 117 + (16*20), "RJFU ID-22", 0, 1, 0 ) --テキスト
        if X_Camera_enabled == 1 then
          graphics.set_color(0 , 1 , 0, 1) --緑
        else
          graphics.set_color(0 , 1 , 0, 0.3)
        end
        --graphics.draw_filled_circle( start_X + 95, start_Y + 120 + (16*20), 5 )   --円
        ----------------------
        --//////// 19番目 ////////
        --X-Camera ID_21のところにマウスを持って行くと色が変化する
        if MOUSE_X > start_X and MOUSE_X < start_X + 88 and MOUSE_Y > start_Y + 113+(16*19) and MOUSE_Y < start_Y + 127+(16*19)   then   --playback mode枠のマウス範囲
          graphics.set_color(0 , 1 , 0, 0.3)
        else
          graphics.set_color(0 , 0 , 0, 0.3)
        end
        graphics.draw_rectangle( start_X, start_Y + 113+(16*19), start_X + 88, start_Y + 127+(16*19)) --playback mode枠の描画
        draw_string( start_X + 10, start_Y + 117 + (16*19), "RJFF ID-21", 0, 1, 0 ) --テキスト
        if X_Camera_enabled == 1 then
          graphics.set_color(0 , 1 , 0, 1) --緑
        else
          graphics.set_color(0 , 1 , 0, 0.3)
        end
        --graphics.draw_filled_circle( start_X + 95, start_Y + 120 + (16*19), 5 )   --円
        ----------------------
        --//////// 18番目 ////////
        --X-Cameraのところにマウスを持って行くと色が変化する
        if MOUSE_X > start_X and MOUSE_X < start_X + 88 and MOUSE_Y > start_Y + 113+(16*18) and MOUSE_Y < start_Y + 127+(16*18)   then   --playback mode枠のマウス範囲
          graphics.set_color(0 , 1 , 0, 0.3)
        else
          graphics.set_color(0 , 0 , 0, 0.3)
        end
        graphics.draw_rectangle( start_X, start_Y + 113+(16*18), start_X + 88, start_Y + 127+(16*18)) --playback mode枠の描画
        draw_string( start_X + 10, start_Y + 117 + (16*18), "X-Camera", 0, 1, 0 ) --テキスト
        ----------------------
        if X_Camera_enabled == 1 then
          graphics.set_color(0 , 1 , 0, 1) --緑
        else
          graphics.set_color(0 , 1 , 0, 0.3)
        end
        graphics.draw_filled_circle( start_X + 95, start_Y + 120 + (16*18), 5 )   --円
        -----------------------------------------------
        --//////// 16番目 ////////
        -- Brightnessのところにマウスを持って行くと色が変化する
        if MOUSE_X > start_X and MOUSE_X < start_X + 44 and MOUSE_Y > start_Y + 113+(16*16) and MOUSE_Y < start_Y + 127+(16*16)   then   --Brightness枠のマウス範囲
          graphics.set_color(0 , 1 , 0, 0.3)
        else
          graphics.set_color(0 , 0 , 0, 0.3)
        end
        graphics.draw_rectangle( start_X, start_Y + 113+(16*16), start_X + 44, start_Y + 127+(16*16)) --Brightness枠の描画

        if MOUSE_X > start_X + 44 and MOUSE_X < start_X + 88 and MOUSE_Y > start_Y + 113+(16*16) and MOUSE_Y < start_Y + 127+(16*16)   then   --Brightness枠のマウス範囲
          graphics.set_color(0 , 1 , 0, 0.3)
        else
          graphics.set_color(0 , 0 , 0, 0.3)
        end

        graphics.draw_rectangle( start_X + 44, start_Y + 113+(16*16), start_X + 88, start_Y + 127+(16*16)) --Brightness枠の描画
        draw_string( start_X + 10, start_Y + 117 + (16*16), "Brightness", 0, 1, 0 ) --テキスト
        if Brightness[0] == 1 then
          graphics.set_color( 1, 1, 0, 1 ) --黄緑
        elseif Brightness[0] > 0.8 and Brightness[0] < 1 then
          graphics.set_color( 1, 1, 0, 0.8 )
        elseif Brightness[0] > 0.5 and Brightness[0] < 0.8 then
          graphics.set_color( 1, 1, 0, 0.6 )
        elseif Brightness[0] > 0.2 and Brightness[0] < 0.5 then
          graphics.set_color( 1, 1, 0, 0.4 )
        elseif Brightness[0] > 0.01 and Brightness[0] < 0.2 then
          graphics.set_color( 1, 1, 0, 0.2 )
        else
          graphics.set_color(0 , 1 , 0, 0.3)
        end
        graphics.draw_filled_circle( start_X + 95, start_Y + 120 + (16*16), 5 )   --円


        -----------------------------------------------
        --//////// 15番目 ////////
        -- Landing lightのところにマウスを持って行くと色が変化する
        if MOUSE_X > start_X and MOUSE_X < start_X + 88 and MOUSE_Y > start_Y + 113+(16*15) and MOUSE_Y < start_Y + 127+(16*15)   then   --Parking枠のマウス範囲
          graphics.set_color(0 , 1 , 0, 0.3)
        else
          graphics.set_color(0 , 0 , 0, 0.3)
        end
        graphics.draw_rectangle( start_X, start_Y + 113+(16*15), start_X + 88, start_Y + 127+(16*15)) --Parking枠の描画
        -- Landing light 円形のオン・オフ
        draw_string( start_X + 10, start_Y + 117 + (16*15), "Landing light", 0, 1, 0 ) --テキスト

        if Land_light_left == 1 then
          graphics.set_color( 0, 1, 0, 1 ) --黄緑
        else
          graphics.set_color(0 , 1 , 0, 0.3)
        end
        graphics.draw_filled_circle( start_X + 95, start_Y + 120 + (16*15), 5 )   --円

        if Land_light_right == 1 then
          graphics.set_color( 0, 1, 0, 1 ) --黄緑
        else
          graphics.set_color(0 , 1 , 0, 0.3)
        end
        graphics.draw_filled_circle( start_X + 125, start_Y + 120 + (16*15), 5 )   --円

        if Land_light_ret_left == 1 then
          graphics.set_color( 1, 1, 0, 1 ) --黄緑
        elseif Land_light_ret_left == 2 then
          graphics.set_color( 0, 1, 0, 1 )
        else
          graphics.set_color(0 , 1 , 0, 0.3)
        end
        graphics.draw_filled_circle( start_X + 105, start_Y + 120 + (16*15), 5 )   --円

        if Land_light_ret_right == 1 then
          graphics.set_color( 1, 1, 0, 1 ) --黄緑
        elseif Land_light_ret_right == 2 then
          graphics.set_color( 0, 1, 0, 1 )
        else
          graphics.set_color(0 , 1 , 0, 0.3)
        end
        graphics.draw_filled_circle( start_X + 115, start_Y + 120 + (16*15), 5 )   --円



        -----------------------------------------------
        --//////// 14番目 ////////
        -- Com1のところにマウスを持って行くと色が変化する
        graphics.set_color(0 , 0 , 0, 0.3)
        graphics.draw_rectangle( start_X, start_Y + 113+(16*14), start_X + 88, start_Y + 127+(16*14)) --Com1バック枠の描画

        draw_string( start_X + 70,  start_Y + 117 + (16*14),  string.format( "%.2f", trad_com1_a / 100 ),  1, 1, 0 )
        draw_string( start_X + 120, start_Y + 117 + (16*14),  string.format("%.2f", trad_com1_s / 100),  0.6, 0.6, 0.6 )
        draw_string( start_X + 10, start_Y + 117 + (16*14), "COM1", 0, 1, 0 ) --テキスト
        -----------------------------------------------
        --//////// 13番目 ////////
        -- Nav1のところにマウスを持って行くと色が変化する
        graphics.set_color(0 , 0 , 0, 0.3)
        graphics.draw_rectangle( start_X, start_Y + 113+(16*13), start_X + 88, start_Y + 127+(16*13)) --Com1バック枠の描画

        draw_string( start_X + 70,  start_Y + 117 + (16*13),  string.format( "%.2f", trad_nav1_a / 100 ),  1, 1, 0 )
        draw_string( start_X + 120, start_Y + 117 + (16*13),  string.format("%.2f", trad_nav1_s / 100),  0.6, 0.6, 0.6 )
        draw_string( start_X + 10, start_Y + 117 + (16*13), "NAV1", 0, 1, 0 ) --テキスト
        -----------------------------------------------
        --//////// 12番目 ////////
        -- Wiperのところにマウスを持って行くと色が変化する
        if MOUSE_X > start_X+40 and MOUSE_X < start_X + 60 and MOUSE_Y > start_Y + 113+(16*12) and MOUSE_Y < start_Y + 127+(16*12)   then   --Parking枠のマウス範囲
          graphics.set_color(0 , 1 , 0, 0.3)
          graphics.draw_rectangle( start_X+ 40, start_Y + 113+(16*12), start_X + 60, start_Y + 127+(16*12))
        else
          graphics.set_color(0 , 0 , 0, 0.3)
        end
        --Wiper up dn 円形のオン・オフ
        if MOUSE_X > start_X + 60 and MOUSE_X < start_X + 80 and MOUSE_Y > start_Y + 113+(16*12) and MOUSE_Y < start_Y + 127+(16*12)   then   --Parking枠のマウス範囲
          graphics.set_color(0 , 1 , 0, 0.3)
          graphics.draw_rectangle( start_X + 60, start_Y + 113+(16*12), start_X + 88, start_Y + 127+(16*12))
        else
          graphics.set_color(0 , 0 , 0, 0.3)
        end
        graphics.set_color(0 , 0 , 0, 0.3)
        graphics.draw_rectangle( start_X, start_Y + 113+(16*12), start_X + 88, start_Y + 127+(16*12))
        draw_string( start_X + 10, start_Y + 117 + (16*12), "Wiper up dn", 0, 1, 0 ) --テキスト
        -----------------------------------------------
        --//////// 11番目 ////////
        -- Yaw Damperのところにマウスを持って行くと色が変化する
        if MOUSE_X > start_X and MOUSE_X < start_X + 88 and MOUSE_Y > start_Y + 113+(16*11) and MOUSE_Y < start_Y + 127+(16*11)   then   --Parking枠のマウス範囲
          graphics.set_color(0 , 1 , 0, 0.3)
        else
          graphics.set_color(0 , 0 , 0, 0.3)
        end
        graphics.draw_rectangle( start_X, start_Y + 113+(16*11), start_X + 88, start_Y + 127+(16*11)) --Parking枠の描画
        -- Yaw Damper 円形のオン・オフ
        draw_string( start_X + 10, start_Y + 117 + (16*11), "YD", 0, 1, 0 ) --テキスト
        if YawDamper_sw == 1 then
          graphics.set_color( 0, 1, 0, 1 ) --黄緑
        else
          graphics.set_color(0 , 1 , 0, 0.3)
        end
        graphics.draw_filled_circle( start_X + 95, start_Y + 120 + (16*11), 5 )   --円
        -----------------------------------------------
        --//////// 10番目 ////////
        -- coclpit doorのところにマウスを持って行くと色が変化する
        if MOUSE_X > start_X and MOUSE_X < start_X + 88 and MOUSE_Y > start_Y + 113+(16*10) and MOUSE_Y < start_Y + 127+(16*10)   then   --coclpit door枠のマウス範囲
          graphics.set_color(0 , 1 , 0, 0.3)
        else
          graphics.set_color(0 , 0 , 0, 0.3)
        end
        graphics.draw_rectangle( start_X, start_Y + 113+(16*10), start_X + 88, start_Y + 127+(16*10)) --coclpit door枠の描画
        -------------------------------------------------------------------------------------------
        --[[
        -- coclpit door 円形のオン・オフ
        draw_string( start_X + 10, start_Y + 117 + (16*10), "Door open", 0, 1, 0 ) --テキスト
        if cockpit_door == 1 then
          graphics.set_color( 0, 1, 0, 1 ) --黄緑
        else
          graphics.set_color(0 , 1 , 0, 0.3)
        end
        graphics.draw_filled_circle( start_X + 95, start_Y + 120 + (16*10), 5 )   --円
        ]]
        -------------------------------------------------------------------------------------------
        --フラップ点滅用 2つの動作を繰り返す(この場合オンとオフの点滅なので2になっている)
        local msgtime
        msgtime = sim_time % 1
          -- coclpit door 円形のオン・オフ
          draw_string( start_X + 10, start_Y + 117 + (16*10), "Door open", 0, 1, 0 ) --テキスト
          if cockpit_door_ratio == 1 then
              graphics.set_color( 0, 1, 0, 1 ) --黄緑

          elseif cockpit_door_ratio > 0.1 and cockpit_door_ratio < 0.9 then
          --if cockpit_door_ratio > 0 and cockpit_door_ratio < 1 then
            if msgtime < 0.5 then	--1より小さい場合
              graphics.set_color( 0, 1, 0, 1 ) --黄緑
            end
            if msgtime >= 0.5 and msgtime < 2 then	--1.0より大きいか等しい
              graphics.set_color( 0, 1, 0, 0.3 ) --薄い色
            end

          else
            graphics.set_color(0 , 1 , 0, 0.3)
          end
          graphics.draw_filled_circle( start_X + 95, start_Y + 120 + (16*10), 5 )   --円
          -------------------------------------------------------------------------------------------
        --[[
        --1番目へダウン
        --0、0.125、0.25、0.375、0.5、0.625、0.75、0.875、1
        --1番目の点滅、点灯設定
        --最初のif文で上昇と下降の2つの設定をしている。
        if (Flap_sw == 0 and Flap_handle_deploy_sw > 0 and Flap_handle_deploy_sw < 0.125) or (Flap_sw == 0 and Flap_handle_deploy_sw > 0 and Flap_handle_deploy_sw < 1) then
          if msgtime < 1.0 then	--1より小さい場合
            graphics.set_color( 0, 1, 0, 1 ) --黄緑
          end
          if msgtime >= 1.0 and msgtime < 2.0 then	--1.0より大きいか等しい
            graphics.set_color( 0, 1, 0, 0.3 ) --黄緑
          end
        elseif Flap_handle_deploy_sw == 0 then
          graphics.set_color( 0, 1, 0, 1 ) --黄緑
        else
          graphics.set_color(0 , 1 , 0, 0.3)
        end
        graphics.draw_filled_circle( start_X + 95, start_Y + 120 + (16*6), 5 )    --1番目の円
        ]]
        -----------------------------------------------
      end

      --下の方のデータ関係
      foo_A = "Close_A"   --初期テキスト
      -----------------------------------------------
      --//////// 7番目 ////////
      -- APのところにマウスを持って行くと色が変化する
      if MOUSE_X > start_X and MOUSE_X < start_X + 88 and MOUSE_Y > start_Y + 113+(16*7) and MOUSE_Y < start_Y + 127+(16*7)   then   --Parking枠のマウス範囲
        graphics.set_color(0 , 1 , 0, 0.3)
      else
        graphics.set_color(0 , 0 , 0, 0.3)
      end
      graphics.draw_rectangle( start_X, start_Y + 113+(16*7), start_X + 88, start_Y + 127+(16*7))
      draw_string( start_X+ 10, start_Y + 117 + (16*7), "AP engage", 0, 1, 0 ) --テキスト
      -------AP CMD------------------
      if AP_CWS_sw == 1 then
        graphics.set_color( 0, 1, 0, 1 ) --黄緑
      else
        graphics.set_color(0 , 1 , 0, 0.3)
      end
      graphics.draw_filled_circle( start_X + 95, start_Y + 120 + (16*7), 5 )   --円
      -------AP CMD Off--------------

      if AP_CWS_sw == 0  then
        graphics.set_color( 1, 1, 0, 0.7 ) --黄
      else
        graphics.set_color(0 , 1 , 0, 0.3)
      end
      graphics.draw_filled_circle( start_X + 105, start_Y + 120 + (16*7), 5 )   --円

      -------AP DISENGAGE------------
      if Disconnect_sw == 1  then
        graphics.set_color( 1, 0, 0, 1 ) --赤
      else
        graphics.set_color(0 , 1 , 0, 0.3)
      end
      graphics.draw_filled_circle( start_X + 115, start_Y + 120 + (16*7), 5 )   --円
      -----------------------------------------------
      --Flap-Flap-Flap-Flap-Flap-Flap-Flap-Flap-Flap-Flap-Flap-
      --//////// 6番目 ////////
      -- Flapのところにマウスを持って行くと色が変化する
      if MOUSE_X > start_X+40 and MOUSE_X < start_X + 60 and MOUSE_Y > start_Y + 113+(16*6) and MOUSE_Y < start_Y + 127+(16*6)   then   --Parking枠のマウス範囲
        graphics.set_color(0 , 1 , 0, 0.3)
        graphics.draw_rectangle( start_X+ 40, start_Y + 113+(16*6), start_X + 60, start_Y + 127+(16*6))
      else
        graphics.set_color(0 , 0 , 0, 0.3)
      end
      -------------------
      if MOUSE_X > start_X + 60 and MOUSE_X < start_X + 88 and MOUSE_Y > start_Y + 113+(16*6) and MOUSE_Y < start_Y + 127+(16*6)   then   --Parking枠のマウス範囲
        graphics.set_color(0 , 1 , 0, 0.3)
        graphics.draw_rectangle( start_X + 60, start_Y + 113+(16*6), start_X + 88, start_Y + 127+(16*6))
      else
        graphics.set_color(0 , 0 , 0, 0.3)
      end
      graphics.set_color(0 , 0 , 0, 0.3)
      graphics.draw_rectangle( start_X, start_Y + 113+(16*6), start_X + 88, start_Y + 127+(16*6))	--フラップベースの色
      draw_string( start_X + 10, start_Y + 117 + (16*6), "Flap  up", 0, 1, 0 ) --テキスト
      draw_string( start_X + 62, start_Y + 117 + (16*6), "dn", 0, 1, 0 ) --テキスト
      -------------------------------------------------------------------------------------------------------------------------------------------------
      --フラップ点滅用 2つの動作を繰り返す(この場合オンとオフの点滅なので2になっている)
      local msgtime
      msgtime = sim_time % 2
      -------------------------------------------------------------------------------------------------------------------------------------------------
      -- フラップの円の動作
      -----------------------------------------------0〜0.125
      --1番目へダウン
      --0、0.125、0.25、0.375、0.5、0.625、0.75、0.875、1
      --1番目の点滅、点灯設定
      --最初のif文で上昇と下降の2つの設定をしている。
      if (Flap_sw == 0 and Flap_handle_deploy_sw > 0 and Flap_handle_deploy_sw < 0.125) or (Flap_sw == 0 and Flap_handle_deploy_sw > 0 and Flap_handle_deploy_sw < 1) then
        if msgtime < 1.0 then	--1より小さい場合
          graphics.set_color( 0, 1, 0, 1 ) --黄緑
        end
        if msgtime >= 1.0 and msgtime < 2.0 then	--1.0より大きいか等しい
          graphics.set_color( 0, 1, 0, 0.3 ) --黄緑
        end
      elseif Flap_handle_deploy_sw == 0 then
        graphics.set_color( 0, 1, 0, 1 ) --黄緑
      else
        graphics.set_color(0 , 1 , 0, 0.3)
      end
      graphics.draw_filled_circle( start_X + 95, start_Y + 120 + (16*6), 5 )    --1番目の円

      -----------------------------------------------0〜0.125
      --2番目へアップ
      --0、0.125、0.25、0.375、0.5、0.625、0.75、0.875、1
      --2番目が点滅、点灯
      if (Flap_sw == 0.125 and Flap_handle_deploy_sw > 0 and Flap_handle_deploy_sw < 0.125) or (Flap_sw == 0.125 and Flap_handle_deploy_sw > 0.125 and Flap_handle_deploy_sw) or (Flap_sw == 0.125 and Flap_handle_deploy_sw > 0.125 and Flap_handle_deploy_sw) then
        if msgtime < 1.0 then	--1より小さい場合
          graphics.set_color( 0, 1, 0, 1 ) --黄緑
        end
        if msgtime >= 1.0 and msgtime < 2.0 then	--1.0より大きいか等しい
          graphics.set_color( 0, 1, 0, 0.3 ) --黄緑
        end
      elseif Flap_handle_deploy_sw == 0.125 then
        graphics.set_color( 0, 1, 0, 1 ) --黄緑
      else
        graphics.set_color(0 , 1 , 0, 0.3)
      end

      graphics.draw_filled_circle( start_X + 105, start_Y + 120 + (16*6), 5 )    --2番目の円

      -----------------------------------------------0〜0.25
      --3番目へ2段アップ
      --0、0.125、0.25、0.375、0.5、0.625、0.75、0.875、1
      --2番目が点滅、点灯
      if (Flap_sw == 0.25 and Flap_handle_deploy_sw > 0 and Flap_handle_deploy_sw < 0.25) or (Flap_sw == 0.25 and Flap_handle_deploy_sw > 0.125 and Flap_handle_deploy_sw < 0.25) or (Flap_sw == 0.25 and Flap_handle_deploy_sw > 0.25 and Flap_handle_deploy_sw < 0.375) or (Flap_sw == 0.25 and Flap_handle_deploy_sw > 0.25 and Flap_handle_deploy_sw < 1) then
        if msgtime < 1.0 then	--1より小さい場合
          graphics.set_color( 0, 1, 0, 1 ) --黄緑
        end
        if msgtime >= 1.0 and msgtime < 2.0 then	--1.0より大きいか等しい
          graphics.set_color( 0, 1, 0, 0.3 ) --黄緑
        end
      elseif Flap_handle_deploy_sw == 0.25 then
        graphics.set_color( 0, 1, 0, 1 ) --黄緑
      else
        graphics.set_color(0 , 1 , 0, 0.3)
      end
      graphics.draw_filled_circle( start_X + 115, start_Y + 120 + (16*6), 5 )    --2番目の円

      -----------------------------------------------0〜0.375
      --4番目へ3段アップ
      --0、0.125、0.25、0.375、0.5、0.625、0.75、0.875、1
      --2番目が点滅、点灯
      if (Flap_sw == 0.375 and Flap_handle_deploy_sw > 0 and Flap_handle_deploy_sw < 0.375) or (Flap_sw == 0.375 and Flap_handle_deploy_sw > 0.25 and Flap_handle_deploy_sw < 0.375) or (Flap_sw == 0.375 and Flap_handle_deploy_sw > 0.375 and Flap_handle_deploy_sw < 0.5) or (Flap_sw == 0.375 and Flap_handle_deploy_sw > 0.375 and Flap_handle_deploy_sw < 1) then
        if msgtime < 1.0 then	--1より小さい場合
          graphics.set_color( 0, 1, 0, 1 ) --黄緑
        end
        if msgtime >= 1.0 and msgtime < 2.0 then	--1.0より大きいか等しい
          graphics.set_color( 0, 1, 0, 0.3 ) --黄緑
        end
      elseif Flap_handle_deploy_sw == 0.375 then
        graphics.set_color( 0, 1, 0, 1 ) --黄緑
      else
        graphics.set_color(0 , 1 , 0, 0.3)
      end
      graphics.draw_filled_circle( start_X + 125, start_Y + 120 + (16*6), 5 )    --2番目の円

      -----------------------------------------------0〜0.5
      --5番目へ4段アップ
      --0、0.125、0.25、0.375、0.5、0.625、0.75、0.875、1
      --2番目が点滅、点灯
      if (Flap_sw == 0.5 and Flap_handle_deploy_sw > 0 and Flap_handle_deploy_sw < 0.5) or (Flap_sw == 0.5 and Flap_handle_deploy_sw > 0.375 and Flap_handle_deploy_sw < 0.5) or (Flap_sw == 0.5 and Flap_handle_deploy_sw > 0.5 and Flap_handle_deploy_sw < 0.625) or (Flap_sw == 0.5 and Flap_handle_deploy_sw > 0.5 and Flap_handle_deploy_sw < 0.625) then
        if msgtime < 1.0 then	--1より小さい場合
          graphics.set_color( 0, 1, 0, 1 ) --黄緑
        end
        if msgtime >= 1.0 and msgtime < 2.0 then	--1.0より大きいか等しい
          graphics.set_color( 0, 1, 0, 0.3 ) --黄緑
        end
      elseif Flap_handle_deploy_sw == 0.5 then
        graphics.set_color( 0, 1, 0, 1 ) --黄緑
      else
        graphics.set_color(0 , 1 , 0, 0.3)
      end
      graphics.draw_filled_circle( start_X + 135, start_Y + 120 + (16*6), 5 )    --2番目の円
      -----------------------------------------------0〜0.625
      --6番目へ5段アップ
      --0、0.125、0.25、0.375、0.5、0.625、0.75、0.875、1
      --2番目が点滅、点灯
      if (Flap_sw == 0.625 and Flap_handle_deploy_sw > 0 and Flap_handle_deploy_sw < 0.625) or (Flap_sw == 0.625 and Flap_handle_deploy_sw > 0.5 and Flap_handle_deploy_sw < 0.625) or (Flap_sw == 0.625 and Flap_handle_deploy_sw > 0.625 and Flap_handle_deploy_sw < 0.75) or (Flap_sw == 0.625 and Flap_handle_deploy_sw > 0.625 and Flap_handle_deploy_sw < 1) then
        if msgtime < 1.0 then	--1より小さい場合
          graphics.set_color( 0, 1, 0, 1 ) --黄緑
        end
        if msgtime >= 1.0 and msgtime < 2.0 then	--1.0より大きいか等しい
          graphics.set_color( 0, 1, 0, 0.3 ) --黄緑
        end
      elseif Flap_handle_deploy_sw == 0.625 then
        graphics.set_color( 0, 1, 0, 1 ) --黄緑
      else
        graphics.set_color(0 , 1 , 0, 0.3)
      end
      graphics.draw_filled_circle( start_X + 145, start_Y + 120 + (16*6), 5 )    --2番目の円

      -----------------------------------------------0〜0.75
      --7番目へ6段アップ
      --0、0.125、0.25、0.375、0.5、0.625、0.75、0.875、1
      --2番目が点滅、点灯
      if (Flap_sw == 0.75 and Flap_handle_deploy_sw > 0 and Flap_handle_deploy_sw < 0.75) or (Flap_sw == 0.75 and Flap_handle_deploy_sw > 0.625 and Flap_handle_deploy_sw < 0.75) or (Flap_sw == 0.75 and Flap_handle_deploy_sw > 0.75 and Flap_handle_deploy_sw < 0.875) or (Flap_sw == 0.75 and Flap_handle_deploy_sw > 0.75 and Flap_handle_deploy_sw < 1) then
        if msgtime < 1.0 then	--1より小さい場合
          graphics.set_color( 0, 1, 0, 1 ) --黄緑
        end
        if msgtime >= 1.0 and msgtime < 2.0 then	--1.0より大きいか等しい
          graphics.set_color( 0, 1, 0, 0.3 ) --黄緑
        end
      elseif Flap_handle_deploy_sw == 0.75 then
        graphics.set_color( 0, 1, 0, 1 ) --黄緑
      else
        graphics.set_color(0 , 1 , 0, 0.3)
      end
      graphics.draw_filled_circle( start_X + 155, start_Y + 120 + (16*6), 5 )    --2番目の円

      -----------------------------------------------0〜0.875
      --8番目へ7段アップ
      --0、0.125、0.25、0.375、0.5、0.625、0.75、0.875、1
      --2番目が点滅、点灯
      if (Flap_sw == 0.875 and Flap_handle_deploy_sw > 0 and Flap_handle_deploy_sw < 0.875) or (Flap_sw == 0.875 and Flap_handle_deploy_sw > 0.75 and Flap_handle_deploy_sw < 0.875) or (Flap_sw == 0.875 and Flap_handle_deploy_sw > 0.875 and Flap_handle_deploy_sw < 1) then
        if msgtime < 1.0 then	--1より小さい場合
          graphics.set_color( 0, 1, 0, 1 ) --黄緑
        end
        if msgtime >= 1.0 and msgtime < 2.0 then	--1.0より大きいか等しい
          graphics.set_color( 0, 1, 0, 0.3 ) --黄緑
        end
      elseif Flap_handle_deploy_sw == 0.875 then
        graphics.set_color( 0, 1, 0, 1 ) --黄緑
      else
        graphics.set_color(0 , 1 , 0, 0.3)
      end
      graphics.draw_filled_circle( start_X + 165, start_Y + 120 + (16*6), 5 )    --2番目の円

      -----------------------------------------------0〜1
      --9番目へ8段アップ
      --0、0.125、0.25、0.375、0.5、0.625、0.75、0.875、1
      --2番目が点滅、点灯
      if (Flap_sw == 1 and Flap_handle_deploy_sw > 0 and Flap_handle_deploy_sw < 1) or (Flap_sw == 1 and Flap_handle_deploy_sw > 0.875 and Flap_handle_deploy_sw < 1) then
        if msgtime < 1.0 then	--1より小さい場合
          graphics.set_color( 0, 1, 0, 1 ) --黄緑
        end
        if msgtime >= 1.0 and msgtime < 2.0 then	--1.0より大きいか等しい
          graphics.set_color( 0, 1, 0, 0.3 ) --黄緑
        end
      elseif Flap_handle_deploy_sw == 1 then
        graphics.set_color( 0, 1, 0, 1 ) --黄緑
      else
        graphics.set_color(0 , 1 , 0, 0.3)
      end
      graphics.draw_filled_circle( start_X + 175, start_Y + 120 + (16*6), 5 )    --2番目の円
      -----------------------------------------------Flap End
      --//////// 5番目 ////////
      -- SpeedBrakeのところにマウスを持って行くと色が変化する
      if MOUSE_X > start_X and MOUSE_X < start_X + 88 and MOUSE_Y > start_Y + 113+(16*5) and MOUSE_Y < start_Y + 127+(16*5)   then   --Parking枠のマウス範囲
        graphics.set_color(0 , 1 , 0, 0.3)
      else
        graphics.set_color(0 , 0 , 0, 0.3)
      end
      graphics.draw_rectangle( start_X, start_Y + 113+(16*5), start_X + 88, start_Y + 127+(16*5))
      draw_string( start_X+ 10, start_Y + 117 + (16*5), "Air Brake", 0, 1, 0 ) --テキスト
      ------------
      if SpeedBrake_sw > 0.1 then
        graphics.set_color( 1, 1, 0, 1 ) --黄
      else
        graphics.set_color(0 , 1 , 0, 0.3)
      end
      graphics.draw_filled_circle( start_X + 95, start_Y + 120 + (16*5), 5 )   --円
      -----------------------------------------------
      --//////// 4番目 ////////
      -- Reverse Thrustのところにマウスを持って行くと色が変化する
      if MOUSE_X > start_X and MOUSE_X < start_X + 88 and MOUSE_Y > start_Y + 113+(16*4) and MOUSE_Y < start_Y + 127+(16*4)   then   --Reverse Thrust枠のマウス範囲
        graphics.set_color(1 , 1 , 1, 1)
      else
        graphics.set_color(0 , 0 , 0, 0.3)
      end
      graphics.draw_rectangle( start_X, start_Y + 113+(16*4), start_X + 88, start_Y + 127+(16*4))
      draw_string( start_X+ 10, start_Y + 117 + (16*4), "Rev Thrust", 0, 1, 0 ) --テキスト
      ----------------------
      -- Reverse Thrust 円形のオン・オフ
      if ReverseThrust_sw < -0.1 then
        graphics.set_color( 1, 0, 0, 1 ) --マゼンタ
      else
        graphics.set_color(0 , 1 , 0, 0.3)
      end
      graphics.draw_filled_circle( start_X + 95, start_Y + 120 + (16*4), 5 )   --円
      -----------------------------------------------
      --//////// 3番目 ////////
      -- Regular Blakeのところにマウスを持って行くと色が変化する
      if MOUSE_X > start_X and MOUSE_X < start_X + 88 and MOUSE_Y > start_Y + 113+(16*3) and MOUSE_Y < start_Y + 127+(16*3)   then   --Parking枠のマウス範囲
        graphics.set_color(0 , 1 , 0, 0.3)
      else
        graphics.set_color(0 , 0 , 0, 0.3)
      end
      graphics.draw_rectangle( start_X, start_Y + 113+(16*3), start_X + 88, start_Y + 127+(16*3))
      draw_string( start_X+ 10, start_Y + 117 + (16*3), "Reg Brake", 0, 1, 0 ) --テキスト
      ----------------------
      if ParkBrake_sw > 0.1 and  ParkBrake_sw < 0.3 then
        graphics.set_color( 0, 1, 0, 1 ) --黄緑
      else
        graphics.set_color(0 , 1 , 0, 0.3)
      end
      graphics.draw_filled_circle( start_X + 95, start_Y + 120 + (16*3), 5 )   --円
      -----------------------------------------------
      --//////// 2番目 ////////
      -- ParkingBlakeのところにマウスを持って行くと色が変化する
      if MOUSE_X > start_X and MOUSE_X < start_X + 88 and MOUSE_Y > start_Y + 113+(16*2) and MOUSE_Y < start_Y + 127+(16*2)   then   --Parking枠のマウス範囲
        graphics.set_color(0 , 1 , 0, 0.3)
      else
        graphics.set_color(0 , 0 , 0, 0.3)
      end
      graphics.draw_rectangle( start_X, start_Y + 113+(16*2), start_X + 88, start_Y + 127+(16*2)) --Parking枠の描画
      draw_string( start_X + 10, start_Y + 117 + (16*2), "Parking", 0, 1, 0 ) --テキスト
      ----------------------
      if ParkBrake_sw == 1 then
        graphics.set_color( 1, 0, 0, 1 ) --赤
      else
        graphics.set_color(0 , 1 , 0, 0.3)
      end
      graphics.draw_filled_circle( start_X + 95, start_Y + 120 + (16*2), 5 )   --円
      -----------------------------------------------
      --//////// -1番目 ////////
      --playback modeのところにマウスを持って行くと色が変化する
      if MOUSE_X > start_X and MOUSE_X < start_X + 88 and MOUSE_Y > start_Y + 113-(16*1) and MOUSE_Y < start_Y + 127-(16*1)   then   --playback mode枠のマウス範囲
        graphics.set_color(0 , 1 , 0, 0.3)
      else
        graphics.set_color(0 , 0 , 0, 0.3)
      end
      graphics.draw_rectangle( start_X, start_Y + 113-(16*1), start_X + 88, start_Y + 127-(16*1)) --playback mode枠の描画
      draw_string( start_X + 10, start_Y + 117 - (16*1), "playback mode", 0, 1, 0 ) --テキスト
      -----------------------------------------------
      --//////// -2番目 ////////
      --towerのところにマウスを持って行くと色が変化する
      if MOUSE_X > start_X and MOUSE_X < start_X + 88 and MOUSE_Y > start_Y + 113-(16*2) and MOUSE_Y < start_Y + 127-(16*2)   then   --playback mode枠のマウス範囲
        graphics.set_color(0 , 1 , 0, 0.3)
      else
        graphics.set_color(0 , 0 , 0, 0.3)
      end
      graphics.draw_rectangle( start_X, start_Y + 113-(16*2), start_X + 88, start_Y + 127-(16*2)) --playback mode枠の描画
      draw_string( start_X + 10, start_Y + 117 - (16*2), "tower", 0, 1, 0 ) --テキスト
      -----------------------------------------------
      --//////// -3番目 ////////
      --3D Cockpitのところにマウスを持って行くと色が変化する
      if MOUSE_X > start_X and MOUSE_X < start_X + 88 and MOUSE_Y > start_Y + 113-(16*3) and MOUSE_Y < start_Y + 127-(16*3)   then   --playback mode枠のマウス範囲
        graphics.set_color(0 , 1 , 0, 0.3)
      else
        graphics.set_color(0 , 0 , 0, 0.3)
      end
      graphics.draw_rectangle( start_X, start_Y + 113-(16*3), start_X + 88, start_Y + 127-(16*3)) --playback mode枠の描画
      draw_string( start_X + 10, start_Y + 117 - (16*3), "3D Cockpit", 0, 1, 0 ) --テキスト
      -----------------------------------------------
      --//////// -4番目 ////////
      --3D Cockpitのところにマウスを持って行くと色が変化する
      if MOUSE_X > start_X and MOUSE_X < start_X + 88 and MOUSE_Y > start_Y + 113-(16*4) and MOUSE_Y < start_Y + 127-(16*4)   then   --playback mode枠のマウス範囲
        graphics.set_color(0 , 1 , 0, 0.3)
      else
        graphics.set_color(0 , 0 , 0, 0.3)
      end
      graphics.draw_rectangle( start_X, start_Y + 113-(16*4), start_X + 88, start_Y + 127-(16*4)) --playback mode枠の描画
      draw_string( start_X + 10, start_Y + 117 - (16*4), "pushback planner", 0, 1, 0 ) --テキスト
      -----------------------------------------------
      --//////// -5番目 ////////
      --3D Cockpitのところにマウスを持って行くと色が変化する
      if MOUSE_X > start_X and MOUSE_X < start_X + 88 and MOUSE_Y > start_Y + 113-(16*5) and MOUSE_Y < start_Y + 127-(16*5)   then   --playback mode枠のマウス範囲
        graphics.set_color(0 , 1 , 0, 0.3)
      else
        graphics.set_color(0 , 0 , 0, 0.3)
      end
      graphics.draw_rectangle( start_X, start_Y + 113-(16*5), start_X + 88, start_Y + 127-(16*5)) --playback mode枠の描画
      draw_string( start_X + 10, start_Y + 117 - (16*5), "Start pushback", 0, 1, 0 ) --テキスト



      -----------------------------------------------
      --//////// 9番目 ////////
      -----------------------------------------------
      -- "Close Bボタン"のところにマウスを持って行くと色が変化する
      if MOUSE_X > start_X and MOUSE_X < start_X + 88 and MOUSE_Y > start_Y + 113+(16*9) and MOUSE_Y < start_Y + 127+(16*9)   then   --Parking枠のマウス範囲
        graphics.set_color(1 , 1 , 0, 0.3)
      else
        graphics.set_color(1 , 1 , 0, 0.1)
      end
      graphics.draw_rectangle( start_X, start_Y + 113+(16*9), start_X + 88, start_Y + 127+(16*9)) --長方形
      --上のサブスイッチボタン
      draw_string( start_X + 10, start_Y +117 + (16*9), foo_B, 1, 1, 1 )	-- Display Bボタン(テキスト切り替え)

    end

    --//////// 1番目 ////////
    -- "Close Aボタン"のところにマウスを持って行くと色が変化する
    if MOUSE_X > start_X and MOUSE_X < start_X + 88 and MOUSE_Y > start_Y + 113+(16*1) and MOUSE_Y < start_Y + 127+(16*1)   then   --Parking枠のマウス範囲
      graphics.set_color(1 , 1 , 0, 0.3)
    else
      graphics.set_color(1 , 1 , 0, 0.1)
    end
    graphics.draw_rectangle( start_X, start_Y + 113+(16*1), start_X + 88, start_Y + 127+(16*1)) --左下、左上の位置
    --メインのスイッチボタン
    draw_string( start_X + 10, start_Y +117 + (16*1), foo_A, 1, 1, 1 )				-- foo_Aボタン(テキスト切り替え)
  end

  do_every_draw("Switches_draw()")

  ---------------------------------------------------------------------------------------------------------------------------------------------------
  function mouse_click_events()
    ---------------------------------------------
    if MOUSE_STATUS == "down" then --マウスをダウンしたら


      ---------------------------------------------
      -- Display Aボタン、上の"Display A"の中の文字を表示/非表示にする
      if MOUSE_X > start_X and MOUSE_X < start_X + 88 and MOUSE_Y > start_Y + 113+(16*1) and MOUSE_Y < start_Y + 127+(16*1)   then
        RESUME_MOUSE_CLICK = true
        if display_A == true then    --もしdisplay_Bが表示されていたら
          display_A = false          --消す
        else display_A = true        --そうでないなら表示する
        end
      end
      -- Display Bボタン、上の"Display B"の中の文字を表示/非表示にする
      if MOUSE_X > start_X and MOUSE_X < start_X + 88 and MOUSE_Y > start_Y + 113+(16*9) and MOUSE_Y < start_Y + 127+(16*9)   then
        RESUME_MOUSE_CLICK = true
        if display_B == true then    --もし表示されていたら
          display_B = false            --消す
        else display_B = true        --そうでないなら表示する
        end
      end

      ---------------------------------------------
      -- Xボタンで表示/非表示ができる
      if display_A == true then
        --//////// 7番目 ////////
        --AP engage_sw
        if MOUSE_X > start_X and MOUSE_X < start_X + 60 and MOUSE_Y > start_Y + 113+(16*7) and MOUSE_Y < start_Y + 127+(16*7)   then
          command_once("sim/autopilot/CWSA")
        end
        -------------------------------------------------------------------------------
        --//////// 6番目 ////////
        --Flap_sw
        if MOUSE_X > start_X+40 and MOUSE_X < start_X + 60 and MOUSE_Y > start_Y + 113+(16*6) and MOUSE_Y < start_Y + 127+(16*6)   then
          command_once("sim/flight_controls/flaps_up")
        end
        RESUME_MOUSE_CLICK = true
        if MOUSE_X > start_X + 60 and MOUSE_X < start_X + 88 and MOUSE_Y > start_Y + 113+(16*6) and MOUSE_Y < start_Y + 127+(16*6)   then
          command_once("sim/flight_controls/flaps_down")
        end
        RESUME_MOUSE_CLICK = true
        -------------------------------------------------------------------------------
        --//////// 5番目 ////////
        --SpeedBrake_sw
        if MOUSE_X > start_X and MOUSE_X < start_X + 100 and MOUSE_Y > start_Y + 113+(16*5) and MOUSE_Y < start_Y + 127+(16*5)   then
          command_once("sim/flight_controls/speed_brakes_toggle")
        end
        -------------------------------------------------------------------------------
        --//////// 4番目 ////////
        --Thrust_Reverse_sw
        if MOUSE_X > start_X and MOUSE_X < start_X + 100 and MOUSE_Y > start_Y + 113+(16*4) and MOUSE_Y < start_Y + 127+(16*4)   then
          command_once("sim/engines/thrust_reverse_toggle")
        end
        -------------------------------------------------------------------------------
        --//////// 3番目 ////////
        --Regular_Brake_sw
        -- コマンド sim/flight_controls/brakes_regular
        if MOUSE_X > start_X and MOUSE_X < start_X + 100 and MOUSE_Y > start_Y + 113+(16*3) and MOUSE_Y < start_Y + 127+(16*3)   then
          command_once("sim/flight_controls/brakes_toggle_regular")
        end
        -------------------------------------------------------------------------------
        --//////// 2番目 ////////
        --Parking Brakeのスペースを押して入れる
        if MOUSE_X > start_X and MOUSE_X < start_X + 100 and MOUSE_Y > start_Y + 113+(16*2) and MOUSE_Y < start_Y + 127+(16*2)   then
          command_once("sim/flight_controls/brakes_toggle_max")
        end
        -------------------------------------------------------------------------------
        --//////// -1番目 ////////
        --playback modeのスペースを押して入れる
        if MOUSE_X > start_X and MOUSE_X < start_X + 100 and MOUSE_Y > start_Y + 113-(16*1) and MOUSE_Y < start_Y + 127-(16*1)   then
          command_once("sim/replay/replay_toggle")
        end
        -------------------------------------------------------------------------------
        --//////// -2番目 ////////
        --playback modeのスペースを押して入れる
        if MOUSE_X > start_X and MOUSE_X < start_X + 100 and MOUSE_Y > start_Y + 113-(16*2) and MOUSE_Y < start_Y + 127-(16*2)   then
          command_once("sim/view/tower")
        end
        -------------------------------------------------------------------------------
        --//////// -3番目 ////////
        --playback modeのスペースを押して入れる
        if MOUSE_X > start_X and MOUSE_X < start_X + 100 and MOUSE_Y > start_Y + 113-(16*3) and MOUSE_Y < start_Y + 127-(16*3)   then
          command_once("sim/view/3d_cockpit_cmnd_look")
        end
        -------------------------------------------------------------------------------
        --//////// -4番目 ////////
        --playback modeのスペースを押して入れる
        if MOUSE_X > start_X and MOUSE_X < start_X + 100 and MOUSE_Y > start_Y + 113-(16*4) and MOUSE_Y < start_Y + 127-(16*4)   then
          command_once("BetterPushback/start_planner")
        end
        -------------------------------------------------------------------------------
        --//////// -5番目 ////////
        --playback modeのスペースを押して入れる
        if MOUSE_X > start_X and MOUSE_X < start_X + 100 and MOUSE_Y > start_Y + 113-(16*5) and MOUSE_Y < start_Y + 127-(16*5)   then
          command_once("BetterPushback/start")
        end
        -------------------------------------------------------------------------------

        -------------------------------------------------------------------------------
      end




      -- Close_Bボタンで表示/非表示ができる
      --//////// 9番目 ////////
      if display_B == true then
        RESUME_MOUSE_CLICK = false		--これによりX-Planeのスイッチも同時に動かすことができる。
        -------------------------------------------------------------------------------
        --//////// 20番目 ////////
        --X-Camera_View_ID_22 RJFUのスペースを押して入れる
        if MOUSE_X > start_X and MOUSE_X < start_X + 100 and MOUSE_Y > start_Y + 113+(16*20) and MOUSE_Y < start_Y + 127+(16*20)   then
          command_once("SRS/X-Camera/Select_Nearest_Airport_Camera")
          command_once("SRS/X-Camera/Select_View_ID_22")
        end
        ------------------------------------------------------------------------------

        --//////// 19番目 ////////
        --X-Camera_View_ID_21 RJFFのスペースを押して入れる
        if MOUSE_X > start_X and MOUSE_X < start_X + 100 and MOUSE_Y > start_Y + 113+(16*19) and MOUSE_Y < start_Y + 127+(16*19)   then
          command_once("SRS/X-Camera/Select_Nearest_Airport_Camera")
          command_once("SRS/X-Camera/Select_View_ID_21")
        end

        -------------------------------------------------------------------------------
        --//////// 18番目 ////////
        --X-Cameraのスペースを押して入れる
        if MOUSE_X > start_X and MOUSE_X < start_X + 100 and MOUSE_Y > start_Y + 113+(16*18) and MOUSE_Y < start_Y + 127+(16*18)   then
          command_once("SRS/X-Camera/Toggle_X-Camera_on_or_off")
        end
        -------------------------------------------------------------------------------
        --//////// 15番目 ////////
        --landing lightをクリックしたときの動作
        if MOUSE_X > start_X and MOUSE_X < start_X + 88 and MOUSE_Y > start_Y + 113+(16*15) and MOUSE_Y < start_Y + 127+(16*15)   then
          command_once("laminar/B738/spring_switch/landing_lights_all")
        end
        if MOUSE_X > start_X+90 and MOUSE_X < start_X + 100 and MOUSE_Y > start_Y + 113+(16*15) and MOUSE_Y < start_Y + 127+(16*15)   then
          command_once("laminar/B738/switch/land_lights_left")
        end
        if MOUSE_X > start_X+100 and MOUSE_X < start_X + 110 and MOUSE_Y > start_Y + 113+(16*15) and MOUSE_Y < start_Y + 127+(16*15)   then
          command_once("laminar/B738/switch/land_lights_ret_left_up")
        end
        if MOUSE_X > start_X+110 and MOUSE_X < start_X + 120 and MOUSE_Y > start_Y + 113+(16*15) and MOUSE_Y < start_Y + 127+(16*15)   then
          command_once("laminar/B738/switch/land_lights_ret_right_up")
        end
        if MOUSE_X > start_X+120 and MOUSE_X < start_X + 130 and MOUSE_Y > start_Y + 113+(16*15) and MOUSE_Y < start_Y + 127+(16*15)   then
          command_once("laminar/B738/switch/land_lights_right")
        end

        -------------------------------------------------------------------------------
        --//////// 14番目 ////////
        --Com1 スタンバイ周波数をクリックしたときの動作
        --RESUME_MOUSE_CLICK = true   --いまだに不明、あってもなくても同じ様に動作する
        if MOUSE_X > start_X+120 and MOUSE_X < start_X + 160 and MOUSE_Y > start_Y + 113+(16*14) and MOUSE_Y < start_Y + 127+(16*14)   then
          command_once("sim/radios/com1_standy_flip")
        end
        -------------------------------------------------------------------------------
        --//////// 13番目 ////////
        --Nav1 スタンバイ周波数をクリックしたときの動作
        --RESUME_MOUSE_CLICK = true   --いまだに不明、あってもなくても同じ様に動作する
        if MOUSE_X > start_X+120 and MOUSE_X < start_X + 160 and MOUSE_Y > start_Y + 113+(16*13) and MOUSE_Y < start_Y + 127+(16*13)   then
          command_once("sim/radios/nav1_standy_flip")
        end
        -------------------------------------------------------------------------------
        --//////// 12番目 ////////
        --Wiperのスペースを押して入れる
        if MOUSE_X > start_X+40 and MOUSE_X < start_X + 60 and MOUSE_Y > start_Y + 113+(16*12) and MOUSE_Y < start_Y + 127+(16*12)   then
          command_once("laminar/B738/knob/left_wiper_dn")
          command_once("laminar/B738/knob/right_wiper_dn")
        end
        ------------------
        if MOUSE_X > start_X + 60 and MOUSE_X < start_X + 88 and MOUSE_Y > start_Y + 113+(16*12) and MOUSE_Y < start_Y + 127+(16*12)   then
          command_once("laminar/B738/knob/left_wiper_up")
          command_once("laminar/B738/knob/right_wiper_up")
        end
        -------------------------------------------------------------------------------
        --//////// 11番目 ////////
        --YDのスペースを押して入れる
        if MOUSE_X > start_X and MOUSE_X < start_X + 100 and MOUSE_Y > start_Y + 113+(16*11) and MOUSE_Y < start_Y + 127+(16*11)   then
          command_once("laminar/B738/toggle_switch/yaw_dumper")
        end
        -------------------------------------------------------------------------------
        --//////// 10番目 ////////
        --Cockpit doorのスペースを押して入れる
        if MOUSE_X > start_X and MOUSE_X < start_X + 100 and MOUSE_Y > start_Y + 113+(16*10) and MOUSE_Y < start_Y + 127+(16*10)   then
          command_once("laminar/B738/toggle_switch/flt_dk_door_open")
        end
        --------------------------------------
      end
      -------------------------------------------------------------------------------
    end
  end

  do_on_mouse_click("mouse_click_events()")	--上の関数マウスクリックをここで実行

  ---------------------------------------------------------------------------------------------------------------------------------------------------
  ------------------------------------------------------------------------------------------------------------------------------------
  --マウスホイールの動きに合わせて動作する
  function adjustRADIO()
    if display_A == true then
      --Com1----------------------------
      if MOUSE_X > start_X+120 and MOUSE_X < start_X + 140 and MOUSE_Y > start_Y + 113+(16*14) and MOUSE_Y < start_Y + 127+(16*14)   then
        RESUME_MOUSE_WHEEL = true
        if MOUSE_WHEEL_CLICKS > 0 then
          command_once("sim/radios/stby_com1_coarse_up")
        else
          command_once("sim/radios/stby_com1_coarse_down")
        end
      end

      if MOUSE_X > start_X+140 and MOUSE_X < start_X + 160 and MOUSE_Y > start_Y + 113+(16*14) and MOUSE_Y < start_Y + 127+(16*14)   then
        RESUME_MOUSE_WHEEL = true
        if MOUSE_WHEEL_CLICKS > 0 then
          command_once("sim/radios/stby_com1_fine_up")
        else
          command_once("sim/radios/stby_com1_fine_down")
        end
      end

      --Nav1----------------------------
      if MOUSE_X > start_X+120 and MOUSE_X < start_X + 140 and MOUSE_Y > start_Y + 113+(16*13) and MOUSE_Y < start_Y + 127+(16*13)   then
        RESUME_MOUSE_WHEEL = true
        if MOUSE_WHEEL_CLICKS > 0 then
          command_once("sim/radios/stby_nav1_coarse_up")
        else
          command_once("sim/radios/stby_nav1_coarse_down")
        end
      end

      if MOUSE_X > start_X+140 and MOUSE_X < start_X + 160 and MOUSE_Y > start_Y + 113+(16*13) and MOUSE_Y < start_Y + 127+(16*13)   then
        RESUME_MOUSE_WHEEL = true
        if MOUSE_WHEEL_CLICKS > 0 then
          command_once("sim/radios/stby_nav1_fine_up")
        else
          command_once("sim/radios/stby_nav1_fine_down")
        end
      end

    end

  end

  do_on_mouse_wheel("adjustRADIO()")

  function qs_mouse_click_events2()
    -------------------------------------------------------------------------
    --メインパネル Britnessスライダー	スペースクリック又はドラッグした時の動作
    -------------------------------------------------------------------------
    --左範囲をクリックした場合の動作
    if MOUSE_X > start_X and MOUSE_X < start_X + 44 and MOUSE_Y > start_Y + 113+(16*16) and MOUSE_Y < start_Y + 127+(16*16)   then
      if MOUSE_STATUS == "down" then
        Brightness[0] = Brightness[0] - 0.01
        Generic_lights_switch[6] = Generic_lights_switch[6] - 0.01
        Generic_lights_switch[7] = Generic_lights_switch[7] - 0.01
      end
      if MOUSE_STATUS == "drag" then
        Brightness[0] = Brightness[0] - 0.01
        Generic_lights_switch[6] = Generic_lights_switch[6] - 0.01
        Generic_lights_switch[7] = Generic_lights_switch[7] - 0.01
      end
      --dataref数値の制限(0になったら止まる)
      if Brightness[0] < 0 then
        Brightness[0] = 0
      end
      if Generic_lights_switch[6] < 0 then
        Generic_lights_switch[6] = 0
      end
      if Generic_lights_switch[7] < 0 then
        Generic_lights_switch[7] = 0
      end
      RESUME_MOUSE_CLICK = true	--これ必ず必要
    end
    --右範囲をクリックした場合の動作
    if MOUSE_X > start_X + 44 and MOUSE_X < start_X + 88 and MOUSE_Y > start_Y + 113+(16*16) and MOUSE_Y < start_Y + 127+(16*16)   then
      if MOUSE_STATUS == "down" then
        Brightness[0] = Brightness[0] + 0.01
        Generic_lights_switch[6] = Generic_lights_switch[6] + 0.01
        Generic_lights_switch[7] = Generic_lights_switch[7] + 0.01
      end
      if MOUSE_STATUS == "drag" then
        Brightness[0] = Brightness[0] + 0.01
        Generic_lights_switch[6] = Generic_lights_switch[6] + 0.01
        Generic_lights_switch[7] = Generic_lights_switch[7] + 0.01
      end
      --dataref数値の制限(1になったら止まる)
      if Brightness[0] > 1 then
        Brightness[0] = 1
      end
      if Generic_lights_switch[6] > 1 then
        Generic_lights_switch[6] = 1
      end
      if Generic_lights_switch[7] > 1 then
        Generic_lights_switch[7] = 1
      end
      RESUME_MOUSE_CLICK = true
    end
  end
  do_on_mouse_click("qs_mouse_click_events2()")

end