ビーコンライトスイッチをON/OFF
非常に簡単なスクリプトですが、スイッチボタンを作成してビーコンライトをコントロールします。以下の画像ではセスナのスイッチで実行しています。マウスを左下隅に持っていくとボタンが表示され、クリックするとスイッチが連動します。
ファイル名は半角英数字だったら、好きなように付けてください。
ここでは BeaconLightSwitch.lua
ダウンロード
require "graphics"
local qs_beacon_light = dataref_table("sim/cockpit/electrical/beacon_lights_on")
function draw_quick_settings()
-- マウスが反応するスペース。この範囲にマウスを持っていくとボタンが出てくる。
if MOUSE_Y > 100 or MOUSE_X > 600 then
return
end
-- グラフィックシステムを初期化する
XPLMSetGraphicsState(0,0,0,1,1,0,0)
-- カラースイッチ情報を描画(ビーコンライトをON/OFFしたときの色)
if qs_beacon_light[0] == 0 then
graphics.set_color(1, 1, 0, 1) --イエロー
else
graphics.set_color(0, 1, 0, 1) --グリーン
end
graphics.draw_rectangle(0, 0, 40, 30) --ビーコンの色範囲を描く
-- 情報テキストを描く
graphics.set_color(0, 0, 0, 1) --黒
draw_string_Helvetica_10(5, 17, "Beacon")
draw_string_Helvetica_10(8, 5, "Light")
end
do_every_draw("draw_quick_settings()")
-- マウスをクリックしたときの動作を設定
function qs_mouse_click_events()
-- 一度だけ反応します
if MOUSE_STATUS ~= "down" then
return
end
-- ビーコンライトのON/OFF
if MOUSE_X < 40 and MOUSE_Y < 30 then
if qs_beacon_light[0] == 0 then
qs_beacon_light[0] = 1
else
qs_beacon_light[0] = 0
end
RESUME_MOUSE_CLICK = true
end
end
do_on_mouse_click("qs_mouse_click_events()")