diff --git a/README.md b/README.md index 38486bd..74e1af0 100644 --- a/README.md +++ b/README.md @@ -27,7 +27,7 @@ Der Export von Daten wird für folgende Module unterstützt: - UH-1H - alle Flaming Cliffs Flugzeuge -Kompatibel zur DCS World 1.5.8 und DCS World (Open BETA) 2.5.0 +Kompatibel zur DCS World 1.5.8 und DCS World 2.5.0 # English --- @@ -57,7 +57,7 @@ Following moduls are supported: - UH-1H - all Flaming Cliffs aircrafts -Compatible with DCS World 1.5.8 and DCS World (Open BETA) 2.5.0 +Compatible with DCS World 1.5.8 and DCS World 2.5.0 # Wiki --- diff --git a/Scripts/DCS-ExportScript/Config.lua b/Scripts/DCS-ExportScript/Config.lua index 6dd7b3c..39e7b53 100644 --- a/Scripts/DCS-ExportScript/Config.lua +++ b/Scripts/DCS-ExportScript/Config.lua @@ -1,5 +1,5 @@ -- Ikarus and D.A.C. Export Script --- Version 1.0.1 +-- Version 1.0.2 -- -- Config File -- diff --git a/Scripts/DCS-ExportScript/ExportsModules/A-10A.lua b/Scripts/DCS-ExportScript/ExportsModules/A-10A.lua index 88776b9..8298fcc 100644 --- a/Scripts/DCS-ExportScript/ExportsModules/A-10A.lua +++ b/Scripts/DCS-ExportScript/ExportsModules/A-10A.lua @@ -1,5 +1,5 @@ -- A-10A Export --- Version 1.0.1 +-- Version 1.0.2 ExportScript.FoundFCModule = true diff --git a/Scripts/DCS-ExportScript/ExportsModules/A-10C.lua b/Scripts/DCS-ExportScript/ExportsModules/A-10C.lua index a5c6a0a..c2e6922 100644 --- a/Scripts/DCS-ExportScript/ExportsModules/A-10C.lua +++ b/Scripts/DCS-ExportScript/ExportsModules/A-10C.lua @@ -1,5 +1,5 @@ -- A-10C Export --- Version 1.0.1 +-- Version 1.0.2 ExportScript.FoundDCSModule = true @@ -666,28 +666,23 @@ function ExportScript.ProcessIkarusDCSConfigHighImportance(mainPanelDevice) get data from device local lUHFRadio = GetDevice(54) ExportScript.Tools.SendData("ExportID", "Format") - ExportScript.Tools.SendData(2000, string.format("%7.3f", lUHFRadio:get_frequency()/1000000)) <- special function for get frequency data + ExportScript.Tools.SendData(2000, string.format("%7.3f", lUHFRadio:get_frequency()/1000000)) -- <- special function for get frequency data + ExportScript.Tools.SendData(2000, ExportScript.Tools.RoundFreqeuncy((UHF_RADIO:get_frequency()/1000000))) -- ExportScript.Tools.RoundFreqeuncy(frequency (MHz|KHz), format ("7.3"), PrefixZeros (false), LeastValue (0.025)) ]] -- Digital Clock ------------------------------------------------- - local lDigitalClock = list_indication(4) - lDigitalClock = lDigitalClock:gsub("-----------------------------------------", "") - lDigitalClock = lDigitalClock:gsub("txtHours", "") - lDigitalClock = lDigitalClock:gsub("txtColon", "") - lDigitalClock = lDigitalClock:gsub(":", "") - lDigitalClock = lDigitalClock:gsub("txtMinutes", "") - lDigitalClock = lDigitalClock:gsub("txtSeconds", "") - lDigitalClock = lDigitalClock:gsub("%c", "") - lDigitalClock = lDigitalClock:gsub("txt", "") - lDigitalClock = lDigitalClock:sub(1, 8) - if lDigitalClock:sub(7, 7) == "C" then - lDigitalClock = lDigitalClock:sub(1, 6).."; C" - elseif lDigitalClock:sub(7, 8) == "ET" then - lDigitalClock = lDigitalClock:sub(1, 6)..";ET" - else - lDigitalClock = "" + local lDigitalClock = ExportScript.Tools.getListIndicatorValue(4) + + if lDigitalClock ~= nil and lDigitalClock.txtHours ~= nil then + local lCET = "" + if lDigitalClock.txtET ~= nil then + lCET = ";"..lDigitalClock.txtET + else + lCET = "; "..lDigitalClock.txtC + end + + ExportScript.Tools.SendData(2010, string.format("%s%s%s%s", lDigitalClock.txtHours, lDigitalClock.txtMinutes, lDigitalClock.txtSeconds, lCET)) end - ExportScript.Tools.SendData(2010, string.format("%s", lDigitalClock)) end function ExportScript.ProcessDACConfigHighImportance(mainPanelDevice) @@ -700,19 +695,15 @@ function ExportScript.ProcessDACConfigHighImportance(mainPanelDevice) ExportScript.Tools.SendDataDAC("ExportID", "Format") ExportScript.Tools.SendDataDAC("ExportID", "Format", HardwareConfigID) ExportScript.Tools.SendDataDAC("2000", string.format("%7.3f", UHF_RADIO:get_frequency()/1000000)) - ExportScript.Tools.SendDataDAC("2000", string.format("%7.3f", UHF_RADIO:get_frequency()/1000000), 2) -- export to Hardware '2' Config + ExportScript.Tools.SendDataDAC("2000", ExportScript.Tools.RoundFreqeuncy((UHF_RADIO:get_frequency()/1000000))) -- ExportScript.Tools.RoundFreqeuncy(frequency (MHz|KHz), format ("7.3"), PrefixZeros (false), LeastValue (0.025)) ]] -- Digital Clock ------------------------------------------------- - local lDigitalClock = list_indication(4) - lDigitalClock = lDigitalClock:gsub("-----------------------------------------", "") - lDigitalClock = lDigitalClock:gsub("txtHours", "") - lDigitalClock = lDigitalClock:gsub("txtColon", "") - lDigitalClock = lDigitalClock:gsub(":", "") - lDigitalClock = lDigitalClock:gsub("txtMinutes", "") - lDigitalClock = lDigitalClock:gsub("txtSeconds", "") - lDigitalClock = lDigitalClock:gsub("%c", "") - ExportScript.Tools.SendDataDAC("2010", string.format("%s", lDigitalClock:sub(1, 6))) -- with : lDigitalClock:sub(1, 7) + local lDigitalClock = ExportScript.Tools.getListIndicatorValue(4) + + if lDigitalClock ~= nil and lDigitalClock.txtHours ~= nil then + ExportScript.Tools.SendDataDAC("2010", string.format("%s%s%s", lDigitalClock.txtHours, lDigitalClock.txtMinutes, lDigitalClock.txtSeconds)) + end end ----------------------------------------------------- @@ -729,29 +720,27 @@ function ExportScript.ProcessIkarusDCSConfigLowImportance(mainPanelDevice) get data from device local lUHFRadio = GetDevice(54) ExportScript.Tools.SendData("ExportID", "Format") - ExportScript.Tools.SendData(2000, string.format("%7.3f", lUHFRadio:get_frequency()/1000000)) <- special function for get frequency data + ExportScript.Tools.SendData(2000, string.format("%7.3f", lUHFRadio:get_frequency()/1000000)) -- <- special function for get frequency data + ExportScript.Tools.SendData(2000, ExportScript.Tools.RoundFreqeuncy((UHF_RADIO:get_frequency()/1000000))) -- ExportScript.Tools.RoundFreqeuncy(frequency (MHz|KHz), format ("7.3"), PrefixZeros (false), LeastValue (0.025)) ]] -- AN/ARC-164 UHF and UHF Preset Channel --------------------------------------------------- local lUHF_RADIO = GetDevice(54) if lUHF_RADIO:is_on() then - ExportScript.Tools.SendData(2000, string.format("%.3f", lUHF_RADIO:get_frequency()/1000000)) - - local lPresetChannel = list_indication(10) - lPresetChannel = lPresetChannel:gsub("-----------------------------------------", "") - lPresetChannel = lPresetChannel:gsub("txtPresetChannel", "") - lPresetChannel = lPresetChannel:gsub("%c", "") - - ExportScript.Tools.SendData(2001, string.format("%s", lPresetChannel)) + ExportScript.Tools.SendData(2000, ExportScript.Tools.RoundFreqeuncy((lUHF_RADIO:get_frequency()/1000000))) + + local lPresetChannel = ExportScript.Tools.getListIndicatorValue(10) + + ExportScript.Tools.SendData(2001, string.format("%s", lPresetChannel.txtPresetChannel)) else - ExportScript.Tools.SendData(2000, "") - ExportScript.Tools.SendData(2001, "") + ExportScript.Tools.SendData(2000, " ") + ExportScript.Tools.SendData(2001, " ") end -- AN/ARC-186(V) VHF AM and Preset Channel --------------------------------------------------- local lVHF_AM_RADIO = GetDevice(55) - ExportScript.Tools.SendData(2002, string.format("%.3f", lVHF_AM_RADIO:get_frequency()/1000000)) + ExportScript.Tools.SendData(2002, ExportScript.Tools.RoundFreqeuncy((lVHF_AM_RADIO:get_frequency()/1000000))) local lVHF_AM_RADIO_PRESET = {[0.0]="1",[0.01]="2",[0.02]="3",[0.03]="4",[0.04]="5",[0.05]="6",[0.06]="7",[0.07]="8",[0.08]="9",[0.09]="10",[0.10]="11",[0.11]="12",[0.12]="13",[0.13]="14",[0.14]="15",[0.15]="16",[0.16]="17",[0.17]="18",[0.18]="19",[0.19]="20",[0.20]="1"} ExportScript.Tools.SendData(2003, lVHF_AM_RADIO_PRESET[ExportScript.Tools.round(mainPanelDevice:get_argument_value(137), 2)]) @@ -759,7 +748,7 @@ function ExportScript.ProcessIkarusDCSConfigLowImportance(mainPanelDevice) -- AN/ARC-186(V) VHF FM and Preset Channel ------------------------------------------------- local lVHF_FM_RADIO = GetDevice(56) - ExportScript.Tools.SendData(2004, string.format("%.3f", lVHF_FM_RADIO:get_frequency()/1000000)) + ExportScript.Tools.SendData(2004, ExportScript.Tools.RoundFreqeuncy((lVHF_FM_RADIO:get_frequency()/1000000))) -- Preset is buggy local lVHF_FM_RADIO_PRESET = {[0.0]="1",[0.01]="2",[0.02]="3",[0.03]="4",[0.04]="5",[0.05]="6",[0.06]="7",[0.07]="8",[0.08]="9",[0.09]="10",[0.10]="11",[0.11]="12",[0.12]="13",[0.13]="14",[0.14]="15",[0.15]="16",[0.16]="17",[0.17]="18",[0.18]="19",[0.19]="20",[0.20]="1"} @@ -779,62 +768,55 @@ function ExportScript.ProcessIkarusDCSConfigLowImportance(mainPanelDevice) -- CMSC 2020 (Text only) ------------------------------------------------- - local lCMSC = list_indication(8) - lCMSC = lCMSC:gsub("-----------------------------------------", "") - lCMSC = lCMSC:gsub("txt_CHAFF_FLARE", "") - lCMSC = lCMSC:gsub("txt_JMR", "") - lCMSC = lCMSC:gsub("txt_MWS", "") - lCMSC = lCMSC:gsub("%c%c(%C)", "%1") - lCMSC = lCMSC.."\n" + if mainPanelDevice:get_argument_value(364) > 0 then + local lCMSCTable = ExportScript.Tools.getListIndicatorValue(8) - local lCMSCTable = {} - lCMSCTable = ExportScript.Tools.split(lCMSC, "%c") - - if lCMSCTable[2] ~= nil then - ExportScript.Tools.SendData(2011, string.format("%s", lCMSCTable[1])) -- txt_CHAFF_FLARE - ExportScript.Tools.SendData(2012, string.format("%s", lCMSCTable[2])) -- txt_JMR - ExportScript.Tools.SendData(2013, string.format("%s", lCMSCTable[3])) -- txt_MWS + if lCMSCTable ~= nil and lCMSCTable.txt_JMR ~= nil then + ExportScript.Tools.SendData(2011, string.format("%s", lCMSCTable.txt_CHAFF_FLARE)) -- txt_CHAFF_FLARE + ExportScript.Tools.SendData(2012, string.format("%s", lCMSCTable.txt_JMR)) -- txt_JMR + ExportScript.Tools.SendData(2013, string.format("%s", lCMSCTable.txt_MWS)) -- txt_MWS + end else - ExportScript.Tools.SendData(2011, "") -- txt_CHAFF_FLARE - ExportScript.Tools.SendData(2012, "") -- txt_JMR - ExportScript.Tools.SendData(2013, "") -- txt_MWS + ExportScript.Tools.SendData(2011, " ") -- txt_CHAFF_FLARE + ExportScript.Tools.SendData(2012, " ") -- txt_JMR + ExportScript.Tools.SendData(2013, " ") -- txt_MWS end - -- CMSP ------------------------------------------------- - local lCMSP = list_indication(7) - --ExportScript.Tools.WriteToLog('CMSP: '..ExportScript.Tools.dump(lCMSP)) - lCMSP = lCMSP:gsub("-----------------------------------------", "") - lCMSP = lCMSP:gsub("txt_UP", "") - lCMSP = lCMSP:gsub("txt_DOWN1", "") - lCMSP = lCMSP:gsub("txt_DOWN2", "") - lCMSP = lCMSP:gsub("txt_DOWN3", "") - lCMSP = lCMSP:gsub("txt_DOWN4", "") - lCMSP = lCMSP:gsub("%c%c(%C)", "%1") - - local lCMSPTable = {"","","","","","","",""} - - if lCMSP ~= "" then - --ExportScript.Tools.WriteToLog('CMSP 2: '..ExportScript.Tools.dump(lCMSP)) + if mainPanelDevice:get_argument_value(364) > 0 then + local lCMSP = ExportScript.Tools.getListIndicatorValue(7) - lCMSP = lCMSP:gsub(" ", " ") - lCMSP = lCMSP:gsub(" %c", "\n") - lCMSP = lCMSP:gsub(" ", "\n") + local lCMSPTable = {"","","",""} - lCMSPTable = ExportScript.Tools.split(lCMSP, "%c") - end + if lCMSP ~= nil and lCMSP.txt_UP ~= nil then + lCMSP.txt_UP = lCMSP.txt_UP:gsub(" ", " ") + lCMSP.txt_UP = lCMSP.txt_UP.." " + lCMSPTable = ExportScript.Tools.split(lCMSP.txt_UP, "%s") + end + + --ExportScript.Tools.WriteToLog('lCMSP: '..ExportScript.Tools.dump(lCMSP)) + --ExportScript.Tools.WriteToLog('lCMSPTable: '..ExportScript.Tools.dump(lCMSPTable)) + + ExportScript.Tools.SendData(2014, string.format("%s", lCMSPTable[1])) + ExportScript.Tools.SendData(2015, string.format("%s", lCMSPTable[2])) + ExportScript.Tools.SendData(2016, string.format("%s", lCMSPTable[3])) + ExportScript.Tools.SendData(2017, string.format("%s", lCMSPTable[4])) + ExportScript.Tools.SendData(2018, string.format("%s", lCMSP.txt_DOWN1)) + ExportScript.Tools.SendData(2019, string.format("%s", lCMSP.txt_DOWN2)) + ExportScript.Tools.SendData(2020, string.format("%s", lCMSP.txt_DOWN3)) + ExportScript.Tools.SendData(2021, string.format("%s", lCMSP.txt_DOWN4)) + else + ExportScript.Tools.SendData(2014, " ") + ExportScript.Tools.SendData(2015, " ") + ExportScript.Tools.SendData(2016, " ") + ExportScript.Tools.SendData(2017, " ") + ExportScript.Tools.SendData(2018, " ") + ExportScript.Tools.SendData(2019, " ") + ExportScript.Tools.SendData(2020, " ") + ExportScript.Tools.SendData(2021, " ") + end - --ExportScript.Tools.WriteToLog('lCMSPTable: '..ExportScript.Tools.dump(lCMSPTable)) - ExportScript.Tools.SendData(2014, string.format("%s", lCMSPTable[1])) - ExportScript.Tools.SendData(2015, string.format("%s", lCMSPTable[2])) - ExportScript.Tools.SendData(2016, string.format("%s", lCMSPTable[3])) - ExportScript.Tools.SendData(2017, string.format("%s", lCMSPTable[4])) - ExportScript.Tools.SendData(2018, string.format("%s", lCMSPTable[5])) - ExportScript.Tools.SendData(2019, string.format("%s", lCMSPTable[6])) - ExportScript.Tools.SendData(2020, string.format("%s", lCMSPTable[7])) - ExportScript.Tools.SendData(2021, string.format("%s", lCMSPTable[8])) - -- Cockpit Light ExportScript.Tools.IkarusCockpitLights(mainPanelDevice, {290,292,293}) -- Engine Instruments Lights, Flight Instruments Lights, Auxiliary Instruments Lights @@ -853,21 +835,18 @@ function ExportScript.ProcessDACConfigLowImportance(mainPanelDevice) ExportScript.Tools.SendDataDAC("ExportID", "Format") ExportScript.Tools.SendDataDAC("ExportID", "Format", HardwareConfigID) ExportScript.Tools.SendDataDAC("2000", string.format("%7.3f", UHF_RADIO:get_frequency()/1000000)) - ExportScript.Tools.SendDataDAC("2000", string.format("%7.3f", UHF_RADIO:get_frequency()/1000000), 2) -- export to Hardware '2' Config + ExportScript.Tools.SendDataDAC("2000", ExportScript.Tools.RoundFreqeuncy((UHF_RADIO:get_frequency()/1000000))) -- ExportScript.Tools.RoundFreqeuncy(frequency (MHz|KHz), format ("7.3"), PrefixZeros (false), LeastValue (0.025)) ]] -- AN/ARC-164 UHF and UHF Preset Channel --------------------------------------------------- local lUHF_RADIO = GetDevice(54) if lUHF_RADIO:is_on() then - ExportScript.Tools.SendDataDAC("2000", string.format("%.3f", lUHF_RADIO:get_frequency()/1000000)) - - local lPresetChannel = list_indication(10) - lPresetChannel = lPresetChannel:gsub("-----------------------------------------", "") - lPresetChannel = lPresetChannel:gsub("txtPresetChannel", "") - lPresetChannel = lPresetChannel:gsub("%c", "") + ExportScript.Tools.SendDataDAC("2000", ExportScript.Tools.RoundFreqeuncy((lUHF_RADIO:get_frequency()/1000000))) + + local lPresetChannel = ExportScript.Tools.getListIndicatorValue(10) - ExportScript.Tools.SendDataDAC("2001", string.format("%s", lPresetChannel)) + ExportScript.Tools.SendDataDAC("2001", string.format("%s", lPresetChannel.txtPresetChannel)) else ExportScript.Tools.SendDataDAC("2000", "-") ExportScript.Tools.SendDataDAC("2001", "-") @@ -876,7 +855,7 @@ function ExportScript.ProcessDACConfigLowImportance(mainPanelDevice) -- AN/ARC-186(V) VHF AM and Preset Channel --------------------------------------------------- local lVHF_AM_RADIO = GetDevice(55) - ExportScript.Tools.SendDataDAC("2002", string.format("%.3f", lVHF_AM_RADIO:get_frequency()/1000000)) + ExportScript.Tools.SendDataDAC("2002", ExportScript.Tools.RoundFreqeuncy((lVHF_AM_RADIO:get_frequency()/1000000))) local lVHF_AM_RADIO_PRESET = {[0.0]="1",[0.01]="2",[0.02]="3",[0.03]="4",[0.04]="5",[0.05]="6",[0.06]="7",[0.07]="8",[0.08]="9",[0.09]="10",[0.10]="11",[0.11]="12",[0.12]="13",[0.13]="14",[0.14]="15",[0.15]="16",[0.16]="17",[0.17]="18",[0.18]="19",[0.19]="20",[0.20]="1"} ExportScript.Tools.SendDataDAC("2003", lVHF_AM_RADIO_PRESET[ExportScript.Tools.round(mainPanelDevice:get_argument_value(137), 2)]) @@ -884,7 +863,7 @@ function ExportScript.ProcessDACConfigLowImportance(mainPanelDevice) -- AN/ARC-186(V) VHF FM and Preset Channel ------------------------------------------------- local lVHF_FM_RADIO = GetDevice(56) - ExportScript.Tools.SendDataDAC("2004", string.format("%.3f", lVHF_FM_RADIO:get_frequency()/1000000)) + ExportScript.Tools.SendDataDAC("2004", ExportScript.Tools.RoundFreqeuncy((lVHF_FM_RADIO:get_frequency()/1000000))) -- Preset is buggy local lVHF_FM_RADIO_PRESET = {[0.0]="1",[0.01]="2",[0.02]="3",[0.03]="4",[0.04]="5",[0.05]="6",[0.06]="7",[0.07]="8",[0.08]="9",[0.09]="10",[0.10]="11",[0.11]="12",[0.12]="13",[0.13]="14",[0.14]="15",[0.15]="16",[0.16]="17",[0.17]="18",[0.18]="19",[0.19]="20",[0.20]="1"} @@ -1085,12 +1064,12 @@ function ExportScript.ProcessDACConfigLowImportance(mainPanelDevice) ExportScript.Tools.WriteToLog('CMSP: '..ExportScript.Tools.dump(list_indication(7))) local ltmp1 = 0 - for ltmp2 = 0, 13, 1 do + for ltmp2 = 0, 20, 1 do ltmp1 = list_indication(ltmp2) ExportScript.Tools.WriteToLog(ltmp2..': '..ExportScript.Tools.dump(ltmp1)) --ExportScript.Tools.WriteToLog(ltmp2..' (metatable): '..ExportScript.Tools.dump(getmetatable(ltmp1))) end - ]] +]] --[[ -- LITENING_INTERFACE local lLITENING_INTERFACE = GetDevice(11) @@ -20981,22 +20960,8 @@ function ExportScript.AF.replaceSymbols(s) return s end - -function ExportScript.AF.parse_indication(indicator_id) - local ret = {} - local li = list_indication(indicator_id) - if li == "" then return nil end - local m = li:gmatch("-----------------------------------------\n([^\n]+)\n([^\n]*)\n") - while true do - local name, value = m() - if not name then break end - ret[name] = value - end - return ret -end - function ExportScript.AF.exportCDU() - local cdu = ExportScript.AF.parse_indication(3) + local cdu = ExportScript.Tools.getListIndicatorValue(3) local cdu_lines = {} local empty_line = " " -- 24 spaces diff --git a/Scripts/DCS-ExportScript/ExportsModules/AJS37.lua b/Scripts/DCS-ExportScript/ExportsModules/AJS37.lua index 0c90bdd..f1212a0 100644 --- a/Scripts/DCS-ExportScript/ExportsModules/AJS37.lua +++ b/Scripts/DCS-ExportScript/ExportsModules/AJS37.lua @@ -1,5 +1,5 @@ -- AJS37 Export --- Version 1.0.1 +-- Version 1.0.2 ExportScript.FoundDCSModule = true @@ -373,7 +373,8 @@ function ExportScript.ProcessIkarusDCSConfigHighImportance(mainPanelDevice) get data from device local lUHFRadio = GetDevice(54) ExportScript.Tools.SendData("ExportID", "Format") - ExportScript.Tools.SendData(2000, string.format("%7.3f", lUHFRadio:get_frequency()/1000000)) <- special function for get frequency data + ExportScript.Tools.SendData(2000, string.format("%7.3f", lUHFRadio:get_frequency()/1000000)) -- <- special function for get frequency data + ExportScript.Tools.SendData(2000, ExportScript.Tools.RoundFreqeuncy((UHF_RADIO:get_frequency()/1000000))) -- ExportScript.Tools.RoundFreqeuncy(frequency (MHz|KHz), format ("7.3"), PrefixZeros (false), LeastValue (0.025)) ]] end @@ -387,7 +388,7 @@ function ExportScript.ProcessDACConfigHighImportance(mainPanelDevice) ExportScript.Tools.SendDataDAC("ExportID", "Format") ExportScript.Tools.SendDataDAC("ExportID", "Format", HardwareConfigID) ExportScript.Tools.SendDataDAC("2000", string.format("%7.3f", UHF_RADIO:get_frequency()/1000000)) - ExportScript.Tools.SendDataDAC("2000", string.format("%7.3f", UHF_RADIO:get_frequency()/1000000), 2) -- export to Hardware '2' Config + ExportScript.Tools.SendDataDAC("2000", ExportScript.Tools.RoundFreqeuncy((UHF_RADIO:get_frequency()/1000000))) -- ExportScript.Tools.RoundFreqeuncy(frequency (MHz|KHz), format ("7.3"), PrefixZeros (false), LeastValue (0.025)) ]] end @@ -405,11 +406,13 @@ function ExportScript.ProcessIkarusDCSConfigLowImportance(mainPanelDevice) get data from device local lUHFRadio = GetDevice(54) ExportScript.Tools.SendData("ExportID", "Format") - ExportScript.Tools.SendData(2000, string.format("%7.3f", lUHFRadio:get_frequency()/1000000)) <- special function for get frequency data + ExportScript.Tools.SendData(2000, string.format("%7.3f", lUHFRadio:get_frequency()/1000000)) -- <- special function for get frequency data + ExportScript.Tools.SendData(2000, ExportScript.Tools.RoundFreqeuncy((UHF_RADIO:get_frequency()/1000000))) -- ExportScript.Tools.RoundFreqeuncy(frequency (MHz|KHz), format ("7.3"), PrefixZeros (false), LeastValue (0.025)) ]] local lFR22Radio = GetDevice(31) - ExportScript.Tools.SendData(2500, string.format("%7.3f", lFR22Radio:get_frequency()/1000000)) -- full frequency + --ExportScript.Tools.SendData(2500, string.format("%7.3f", lFR22Radio:get_frequency()/1000000)) -- full frequency + ExportScript.Tools.SendData(2500, ExportScript.Tools.RoundFreqeuncy(lFR22Radio:get_frequency()/1000000)) -- full frequency local lMHz = string.format("%0.0f", lFR22Radio:get_frequency()/1000000) local lKHz = string.sub(string.format("%0.3f", string.format("%.3f", lFR22Radio:get_frequency()/1000000) - lMHz), 3) ExportScript.Tools.SendData(2501, lMHz) -- slice frequency MHz @@ -452,11 +455,12 @@ function ExportScript.ProcessDACConfigLowImportance(mainPanelDevice) ExportScript.Tools.SendDataDAC("ExportID", "Format") ExportScript.Tools.SendDataDAC("ExportID", "Format", HardwareConfigID) ExportScript.Tools.SendDataDAC("2000", string.format("%7.3f", UHF_RADIO:get_frequency()/1000000)) - ExportScript.Tools.SendDataDAC("2000", string.format("%7.3f", UHF_RADIO:get_frequency()/1000000), 2) -- export to Hardware '2' Config + ExportScript.Tools.SendDataDAC("2000", ExportScript.Tools.RoundFreqeuncy((UHF_RADIO:get_frequency()/1000000))) -- ExportScript.Tools.RoundFreqeuncy(frequency (MHz|KHz), format ("7.3"), PrefixZeros (false), LeastValue (0.025)) ]] local lFR22Radio = GetDevice(31) - ExportScript.Tools.SendData(2500, string.format("%7.3f", lFR22Radio:get_frequency()/1000000)) -- full frequency + --ExportScript.Tools.SendData(2500, string.format("%7.3f", lFR22Radio:get_frequency()/1000000)) -- full frequency + ExportScript.Tools.SendData(2500, ExportScript.Tools.RoundFreqeuncy(lFR22Radio:get_frequency()/1000000)) -- full frequency local lMHz = string.format("%0.0f", lFR22Radio:get_frequency()/1000000) local lKHz = string.sub(string.format("%0.3f", string.format("%.3f", lFR22Radio:get_frequency()/1000000) - lMHz), 3) ExportScript.Tools.SendData(2501, lMHz) -- slice frequency MHz @@ -488,21 +492,23 @@ function ExportScript.ProcessDACConfigLowImportance(mainPanelDevice) --[[ ExportScript.Tools.WriteToLog('list_cockpit_params(): '..ExportScript.Tools.dump(list_cockpit_params())) ExportScript.Tools.WriteToLog('CMSP: '..ExportScript.Tools.dump(list_indication(7))) - ]] + + -- list_indication get tehe value of cockpit displays local ltmp1 = 0 - for ltmp2 = 0, 30, 1 do + for ltmp2 = 0, 20, 1 do ltmp1 = list_indication(ltmp2) ExportScript.Tools.WriteToLog(ltmp2..': '..ExportScript.Tools.dump(ltmp1)) - --ExportScript.Tools.WriteToLog(ltmp2..' (metatable): '..ExportScript.Tools.dump(getmetatable(ltmp1))) end - + ]] +--[[ + -- getmetatable get function name from devices local ltmp1 = 0 - for ltmp2 = 1, 36, 1 do + for ltmp2 = 1, 70, 1 do ltmp1 = GetDevice(ltmp2) ExportScript.Tools.WriteToLog(ltmp2..': '..ExportScript.Tools.dump(ltmp1)) ExportScript.Tools.WriteToLog(ltmp2..' (metatable): '..ExportScript.Tools.dump(getmetatable(ltmp1))) end - +]] end ----------------------------- diff --git a/Scripts/DCS-ExportScript/ExportsModules/Bf-109K-4.lua b/Scripts/DCS-ExportScript/ExportsModules/Bf-109K-4.lua index fd81579..f09c269 100644 --- a/Scripts/DCS-ExportScript/ExportsModules/Bf-109K-4.lua +++ b/Scripts/DCS-ExportScript/ExportsModules/Bf-109K-4.lua @@ -1,5 +1,5 @@ -- Bf-109K-4 Kurfürst --- Version 1.0.1 +-- Version 1.0.2 ExportScript.FoundDCSModule = true @@ -236,22 +236,33 @@ ExportScript.ConfigArguments = -- Pointed to by ProcessIkarusDCSHighImportance function ExportScript.ProcessIkarusDCSConfigHighImportance(mainPanelDevice) + --[[ + every frame export to Ikarus + Example from A-10C + Get Radio Frequencies + get data from device + local lUHFRadio = GetDevice(54) + ExportScript.Tools.SendData("ExportID", "Format") + ExportScript.Tools.SendData(2000, string.format("%7.3f", lUHFRadio:get_frequency()/1000000)) -- <- special function for get frequency data + ExportScript.Tools.SendData(2000, ExportScript.Tools.RoundFreqeuncy((UHF_RADIO:get_frequency()/1000000))) -- ExportScript.Tools.RoundFreqeuncy(frequency (MHz|KHz), format ("7.3"), PrefixZeros (false), LeastValue (0.025)) + ]] ExportScript.Tools.SendData(35, string.format("%0.4f", mainPanelDevice:get_argument_value(35))) -- Oxygen_Flow_Blinker ExportScript.Tools.SendData(42, string.format("%0.4f", mainPanelDevice:get_argument_value(42))) -- MG131_0_Klappanker ExportScript.Tools.SendData(43, string.format("%0.4f", mainPanelDevice:get_argument_value(43))) -- MG131_1_Klappanker end function ExportScript.ProcessDACConfigHighImportance(mainPanelDevice) --- Hier kommen alle Daten rein die ueber die Hardware in schneller folge ausgeben werden soll --- In der Regel sind das die Statusanzeigen - --- ExportScript.Tools.SendDataDAC(), ist die Funktion zur Ausgabe der Werte an die Hardware --- "178" ist die ID des Wertes die in der entsprechenden XML Datei festgelegt wird, sollte der DCS ID entsprechen --- mainPanelDevice:get_argument_value() ist eine Funktion die die Werte der übergeben DCS ID aus dem Spiel ausliest --- 178 ist die DCS ID von dem man die Werte haben will --- Description - --ExportScript.Tools.SendDataDAC("178", mainPanelDevice:get_argument_value(178)) -- L_AILERON_EMER_DISENGAGE - --ExportScript.Tools.SendDataDAC("", mainPanelDevice:get_argument_value()) -- + --[[ + every frame export to DAC + Example from A-10C + Get Radio Frequencies + get data from device + local UHF_RADIO = GetDevice(54) + ExportScript.Tools.SendDataDAC("ExportID", "Format") + ExportScript.Tools.SendDataDAC("ExportID", "Format", HardwareConfigID) + ExportScript.Tools.SendDataDAC("2000", string.format("%7.3f", UHF_RADIO:get_frequency()/1000000)) + ExportScript.Tools.SendDataDAC("2000", ExportScript.Tools.RoundFreqeuncy((UHF_RADIO:get_frequency()/1000000))) -- ExportScript.Tools.RoundFreqeuncy(frequency (MHz|KHz), format ("7.3"), PrefixZeros (false), LeastValue (0.025)) + ]] end ----------------------------------------------------- @@ -261,6 +272,16 @@ end -- Pointed to by ExportScript.ProcessIkarusDCSConfigLowImportance function ExportScript.ProcessIkarusDCSConfigLowImportance(mainPanelDevice) + --[[ + export in low tick interval to Ikarus + Example from A-10C + Get Radio Frequencies + get data from device + local lUHFRadio = GetDevice(54) + ExportScript.Tools.SendData("ExportID", "Format") + ExportScript.Tools.SendData(2000, string.format("%7.3f", lUHFRadio:get_frequency()/1000000)) -- <- special function for get frequency data + ExportScript.Tools.SendData(2000, ExportScript.Tools.RoundFreqeuncy((UHF_RADIO:get_frequency()/1000000))) -- ExportScript.Tools.RoundFreqeuncy(frequency (MHz|KHz), format ("7.3"), PrefixZeros (false), LeastValue (0.025)) + ]] end function ExportScript.ProcessDACConfigLowImportance(mainPanelDevice) @@ -273,11 +294,12 @@ function ExportScript.ProcessDACConfigLowImportance(mainPanelDevice) ExportScript.Tools.SendDataDAC("ExportID", "Format") ExportScript.Tools.SendDataDAC("ExportID", "Format", HardwareConfigID) ExportScript.Tools.SendDataDAC("2000", string.format("%7.3f", UHF_RADIO:get_frequency()/1000000)) - ExportScript.Tools.SendDataDAC("2000", string.format("%7.3f", UHF_RADIO:get_frequency()/1000000), 2) -- export to Hardware '2' Config + ExportScript.Tools.SendDataDAC("2000", ExportScript.Tools.RoundFreqeuncy((UHF_RADIO:get_frequency()/1000000))) -- ExportScript.Tools.RoundFreqeuncy(frequency (MHz|KHz), format ("7.3"), PrefixZeros (false), LeastValue (0.025)) ]] local lRADIO = GetDevice(14) - ExportScript.Tools.SendDataDAC("2000", string.format("%7.3f", lRADIO:get_frequency()/1000000)) + --ExportScript.Tools.SendDataDAC("2000", string.format("%7.3f", lRADIO:get_frequency()/1000000)) + ExportScript.Tools.SendDataDAC("2000", ExportScript.Tools.RoundFreqeuncy(lRADIO:get_frequency()/1000000)) -- Lamps ExportScript.Tools.SendDataDAC("35", mainPanelDevice:get_argument_value(35) > 0.8 and 1 or 0) -- Oxygen_Flow_Blinker @@ -289,16 +311,17 @@ function ExportScript.ProcessDACConfigLowImportance(mainPanelDevice) ExportScript.Tools.WriteToLog('list_cockpit_params(): '..ExportScript.Tools.dump(list_cockpit_params())) ExportScript.Tools.WriteToLog('CMSP: '..ExportScript.Tools.dump(list_indication(7))) + -- list_indication get tehe value of cockpit displays local ltmp1 = 0 - for ltmp2 = 0, 13, 1 do + for ltmp2 = 0, 20, 1 do ltmp1 = list_indication(ltmp2) ExportScript.Tools.WriteToLog(ltmp2..': '..ExportScript.Tools.dump(ltmp1)) - --ExportScript.Tools.WriteToLog(ltmp2..' (metatable): '..ExportScript.Tools.dump(getmetatable(ltmp1))) end ]] --[[ + -- getmetatable get function name from devices local ltmp1 = 0 - for ltmp2 = 1, 16, 1 do + for ltmp2 = 1, 70, 1 do ltmp1 = GetDevice(ltmp2) ExportScript.Tools.WriteToLog(ltmp2..': '..ExportScript.Tools.dump(ltmp1)) ExportScript.Tools.WriteToLog(ltmp2..' (metatable): '..ExportScript.Tools.dump(getmetatable(ltmp1))) @@ -308,7 +331,4 @@ end ----------------------------- -- Custom functions -- ------------------------------ - -function ExportScript.genericRadio(key, value, hardware) -end +----------------------------- \ No newline at end of file diff --git a/Scripts/DCS-ExportScript/ExportsModules/Empty-DCS.lua b/Scripts/DCS-ExportScript/ExportsModules/Empty-DCS.lua index 6b3d0d2..e504459 100644 --- a/Scripts/DCS-ExportScript/ExportsModules/Empty-DCS.lua +++ b/Scripts/DCS-ExportScript/ExportsModules/Empty-DCS.lua @@ -38,7 +38,8 @@ function ExportScript.ProcessIkarusDCSConfigHighImportance(mainPanelDevice) get data from device local lUHFRadio = GetDevice(54) ExportScript.Tools.SendData("ExportID", "Format") - ExportScript.Tools.SendData(2000, string.format("%7.3f", lUHFRadio:get_frequency()/1000000)) <- special function for get frequency data + ExportScript.Tools.SendData(2000, string.format("%7.3f", lUHFRadio:get_frequency()/1000000)) -- <- special function for get frequency data + ExportScript.Tools.SendData(2000, ExportScript.Tools.RoundFreqeuncy((UHF_RADIO:get_frequency()/1000000))) -- ExportScript.Tools.RoundFreqeuncy(frequency (MHz|KHz), format ("7.3"), PrefixZeros (false), LeastValue (0.025)) ]] end @@ -52,7 +53,7 @@ function ExportScript.ProcessDACConfigHighImportance(mainPanelDevice) ExportScript.Tools.SendDataDAC("ExportID", "Format") ExportScript.Tools.SendDataDAC("ExportID", "Format", HardwareConfigID) ExportScript.Tools.SendDataDAC("2000", string.format("%7.3f", UHF_RADIO:get_frequency()/1000000)) - ExportScript.Tools.SendDataDAC("2000", string.format("%7.3f", UHF_RADIO:get_frequency()/1000000), 2) -- export to Hardware '2' Config + ExportScript.Tools.SendDataDAC("2000", ExportScript.Tools.RoundFreqeuncy((UHF_RADIO:get_frequency()/1000000))) -- ExportScript.Tools.RoundFreqeuncy(frequency (MHz|KHz), format ("7.3"), PrefixZeros (false), LeastValue (0.025)) ]] end @@ -70,7 +71,8 @@ function ExportScript.ProcessIkarusDCSConfigLowImportance(mainPanelDevice) get data from device local lUHFRadio = GetDevice(54) ExportScript.Tools.SendData("ExportID", "Format") - ExportScript.Tools.SendData(2000, string.format("%7.3f", lUHFRadio:get_frequency()/1000000)) <- special function for get frequency data + ExportScript.Tools.SendData(2000, string.format("%7.3f", lUHFRadio:get_frequency()/1000000)) -- <- special function for get frequency data + ExportScript.Tools.SendData(2000, ExportScript.Tools.RoundFreqeuncy((UHF_RADIO:get_frequency()/1000000))) -- ExportScript.Tools.RoundFreqeuncy(frequency (MHz|KHz), format ("7.3"), PrefixZeros (false), LeastValue (0.025)) ]] end @@ -84,7 +86,7 @@ function ExportScript.ProcessDACConfigLowImportance(mainPanelDevice) ExportScript.Tools.SendDataDAC("ExportID", "Format") ExportScript.Tools.SendDataDAC("ExportID", "Format", HardwareConfigID) ExportScript.Tools.SendDataDAC("2000", string.format("%7.3f", UHF_RADIO:get_frequency()/1000000)) - ExportScript.Tools.SendDataDAC("2000", string.format("%7.3f", UHF_RADIO:get_frequency()/1000000), 2) -- export to Hardware '2' Config + ExportScript.Tools.SendDataDAC("2000", ExportScript.Tools.RoundFreqeuncy((UHF_RADIO:get_frequency()/1000000))) -- ExportScript.Tools.RoundFreqeuncy(frequency (MHz|KHz), format ("7.3"), PrefixZeros (false), LeastValue (0.025)) ]] --===================================================================================== @@ -92,16 +94,17 @@ function ExportScript.ProcessDACConfigLowImportance(mainPanelDevice) ExportScript.Tools.WriteToLog('list_cockpit_params(): '..ExportScript.Tools.dump(list_cockpit_params())) ExportScript.Tools.WriteToLog('CMSP: '..ExportScript.Tools.dump(list_indication(7))) + -- list_indication get tehe value of cockpit displays local ltmp1 = 0 - for ltmp2 = 0, 13, 1 do + for ltmp2 = 0, 20, 1 do ltmp1 = list_indication(ltmp2) ExportScript.Tools.WriteToLog(ltmp2..': '..ExportScript.Tools.dump(ltmp1)) - --ExportScript.Tools.WriteToLog(ltmp2..' (metatable): '..ExportScript.Tools.dump(getmetatable(ltmp1))) end ]] --[[ + -- getmetatable get function name from devices local ltmp1 = 0 - for ltmp2 = 1, 73, 1 do + for ltmp2 = 1, 70, 1 do ltmp1 = GetDevice(ltmp2) ExportScript.Tools.WriteToLog(ltmp2..': '..ExportScript.Tools.dump(ltmp1)) ExportScript.Tools.WriteToLog(ltmp2..' (metatable): '..ExportScript.Tools.dump(getmetatable(ltmp1))) diff --git a/Scripts/DCS-ExportScript/ExportsModules/F-15C.lua b/Scripts/DCS-ExportScript/ExportsModules/F-15C.lua index f4278ae..e95eac5 100644 --- a/Scripts/DCS-ExportScript/ExportsModules/F-15C.lua +++ b/Scripts/DCS-ExportScript/ExportsModules/F-15C.lua @@ -1,5 +1,5 @@ -- F-15C Export --- Version 1.0.1 +-- Version 1.0.2 ExportScript.FoundFCModule = true @@ -595,7 +595,7 @@ function ExportScript.AF.StatusLamp(FunctionTyp) if lMCPState == nil then return end - ExportScript.Tools.WriteToLog('lMCPState: '..ExportScript.Tools.dump(lMCPState)) + --ExportScript.Tools.WriteToLog('lMCPState: '..ExportScript.Tools.dump(lMCPState)) --[[ [RightTailPlaneFailure] = boolean: "false" [EOSFailure] = boolean: "false" diff --git a/Scripts/DCS-ExportScript/ExportsModules/F-5E-3.lua b/Scripts/DCS-ExportScript/ExportsModules/F-5E-3.lua index 50a3646..dae39a1 100644 --- a/Scripts/DCS-ExportScript/ExportsModules/F-5E-3.lua +++ b/Scripts/DCS-ExportScript/ExportsModules/F-5E-3.lua @@ -1,5 +1,5 @@ -- F-5E-3 --- Version 1.0.1 +-- Version 1.0.2 ExportScript.FoundDCSModule = true @@ -507,7 +507,8 @@ function ExportScript.ProcessIkarusDCSConfigHighImportance(mainPanelDevice) get data from device local lUHFRadio = GetDevice(54) ExportScript.Tools.SendData("ExportID", "Format") - ExportScript.Tools.SendData(2000, string.format("%7.3f", lUHFRadio:get_frequency()/1000000)) <- special function for get frequency data + ExportScript.Tools.SendData(2000, string.format("%7.3f", lUHFRadio:get_frequency()/1000000)) -- <- special function for get frequency data + ExportScript.Tools.SendData(2000, ExportScript.Tools.RoundFreqeuncy((UHF_RADIO:get_frequency()/1000000))) -- ExportScript.Tools.RoundFreqeuncy(frequency (MHz|KHz), format ("7.3"), PrefixZeros (false), LeastValue (0.025)) ]] end @@ -521,7 +522,7 @@ function ExportScript.ProcessDACConfigHighImportance(mainPanelDevice) ExportScript.Tools.SendDataDAC("ExportID", "Format") ExportScript.Tools.SendDataDAC("ExportID", "Format", HardwareConfigID) ExportScript.Tools.SendDataDAC("2000", string.format("%7.3f", UHF_RADIO:get_frequency()/1000000)) - ExportScript.Tools.SendDataDAC("2000", string.format("%7.3f", UHF_RADIO:get_frequency()/1000000), 2) -- export to Hardware '2' Config + ExportScript.Tools.SendDataDAC("2000", ExportScript.Tools.RoundFreqeuncy((UHF_RADIO:get_frequency()/1000000))) -- ExportScript.Tools.RoundFreqeuncy(frequency (MHz|KHz), format ("7.3"), PrefixZeros (false), LeastValue (0.025)) ]] end @@ -539,13 +540,15 @@ function ExportScript.ProcessIkarusDCSConfigLowImportance(mainPanelDevice) get data from device local lUHFRadio = GetDevice(54) ExportScript.Tools.SendData("ExportID", "Format") - ExportScript.Tools.SendData(2000, string.format("%7.3f", lUHFRadio:get_frequency()/1000000)) <- special function for get frequency data + ExportScript.Tools.SendData(2000, string.format("%7.3f", lUHFRadio:get_frequency()/1000000)) -- <- special function for get frequency data + ExportScript.Tools.SendData(2000, ExportScript.Tools.RoundFreqeuncy((UHF_RADIO:get_frequency()/1000000))) -- ExportScript.Tools.RoundFreqeuncy(frequency (MHz|KHz), format ("7.3"), PrefixZeros (false), LeastValue (0.025)) ]] --AN/ARC-164 UHF --------------------------------------------------- local lUHFRadio = GetDevice(23) if lUHFRadio:is_on() then - ExportScript.Tools.SendData(2000, string.format("%.3f", lUHFRadio:get_frequency()/1000000)) + --ExportScript.Tools.SendData(2000, string.format("%.3f", lUHFRadio:get_frequency()/1000000)) + ExportScript.Tools.SendData(2000, ExportScript.Tools.RoundFreqeuncy(lUHFRadio:get_frequency()/1000000)) local lUHFRadio_PRESET = {[0.0]="01",[0.1]="02",[0.2]="03",[0.3]="04",[0.4]="05",[0.5]="06",[0.6]="07",[0.7]="08",[0.8]="09",[0.9]="10",[0.10]="11",[0.11]="12",[0.12]="13",[0.13]="14",[0.14]="15",[0.15]="16",[0.16]="17",[0.17]="18",[0.18]="19",[0.19]="20"} ExportScript.Tools.SendData(2001, lUHFRadio_PRESET[ExportScript.Tools.round(mainPanelDevice:get_argument_value(300), 2)]) @@ -567,14 +570,15 @@ function ExportScript.ProcessDACConfigLowImportance(mainPanelDevice) ExportScript.Tools.SendDataDAC("ExportID", "Format") ExportScript.Tools.SendDataDAC("ExportID", "Format", HardwareConfigID) ExportScript.Tools.SendDataDAC("2000", string.format("%7.3f", UHF_RADIO:get_frequency()/1000000)) - ExportScript.Tools.SendDataDAC("2000", string.format("%7.3f", UHF_RADIO:get_frequency()/1000000), 2) -- export to Hardware '2' Config + ExportScript.Tools.SendDataDAC("2000", ExportScript.Tools.RoundFreqeuncy((UHF_RADIO:get_frequency()/1000000))) -- ExportScript.Tools.RoundFreqeuncy(frequency (MHz|KHz), format ("7.3"), PrefixZeros (false), LeastValue (0.025)) ]] --AN/ARC-164 UHF --------------------------------------------------- local lUHFRadio = GetDevice(23) if lUHFRadio:is_on() then - ExportScript.Tools.SendDataDAC(2000, string.format("%.3f", lUHFRadio:get_frequency()/1000000)) + --ExportScript.Tools.SendDataDAC(2000, string.format("%.3f", lUHFRadio:get_frequency()/1000000)) + ExportScript.Tools.SendDataDAC(2000, ExportScript.Tools.RoundFreqeuncy(lUHFRadio:get_frequency()/1000000)) local lUHFRadio_PRESET = {[0.0]="01",[0.1]="02",[0.2]="03",[0.3]="04",[0.4]="05",[0.5]="06",[0.6]="07",[0.7]="08",[0.8]="09",[0.9]="10",[0.10]="11",[0.11]="12",[0.12]="13",[0.13]="14",[0.14]="15",[0.15]="16",[0.16]="17",[0.17]="18",[0.18]="19",[0.19]="20"} ExportScript.Tools.SendDataDAC(2001, lUHFRadio_PRESET[ExportScript.Tools.round(mainPanelDevice:get_argument_value(300), 2)]) @@ -635,24 +639,24 @@ function ExportScript.ProcessDACConfigLowImportance(mainPanelDevice) --===================================================================================== --[[ ExportScript.Tools.WriteToLog('list_cockpit_params(): '..ExportScript.Tools.dump(list_cockpit_params())) - --ExportScript.Tools.WriteToLog('CMSP: '..ExportScript.Tools.dump(list_indication(7))) + ExportScript.Tools.WriteToLog('CMSP: '..ExportScript.Tools.dump(list_indication(7))) + -- list_indication get tehe value of cockpit displays local ltmp1 = 0 - for ltmp2 = 0, 30, 1 do + for ltmp2 = 0, 20, 1 do ltmp1 = list_indication(ltmp2) ExportScript.Tools.WriteToLog(ltmp2..': '..ExportScript.Tools.dump(ltmp1)) - --ExportScript.Tools.WriteToLog(ltmp2..' (metatable): '..ExportScript.Tools.dump(getmetatable(ltmp1))) end - - + ]] +--[[ + -- getmetatable get function name from devices local ltmp1 = 0 - for ltmp2 = 1, 36, 1 do + for ltmp2 = 1, 70, 1 do ltmp1 = GetDevice(ltmp2) ExportScript.Tools.WriteToLog(ltmp2..': '..ExportScript.Tools.dump(ltmp1)) ExportScript.Tools.WriteToLog(ltmp2..' (metatable): '..ExportScript.Tools.dump(getmetatable(ltmp1))) end - ]] - +]] end ----------------------------- diff --git a/Scripts/DCS-ExportScript/ExportsModules/F-86F Sabre.lua b/Scripts/DCS-ExportScript/ExportsModules/F-86F Sabre.lua index c2853d6..6f678bd 100644 --- a/Scripts/DCS-ExportScript/ExportsModules/F-86F Sabre.lua +++ b/Scripts/DCS-ExportScript/ExportsModules/F-86F Sabre.lua @@ -1,8 +1,8 @@ -- F-86 Export --- Version 1.0.1 +-- Version 1.0.2 ExportScript.FoundDCSModule = true -ExportScript.NoLuaExportBeforeNextFrame = true +--ExportScript.NoLuaExportBeforeNextFrame = true ExportScript.ConfigEveryFrameArguments = { @@ -323,7 +323,8 @@ function ExportScript.ProcessIkarusDCSConfigHighImportance(mainPanelDevice) get data from device local lUHFRadio = GetDevice(54) ExportScript.Tools.SendData("ExportID", "Format") - ExportScript.Tools.SendData(2000, string.format("%7.3f", lUHFRadio:get_frequency()/1000000)) <- special function for get frequency data + ExportScript.Tools.SendData(2000, string.format("%7.3f", lUHFRadio:get_frequency()/1000000)) -- <- special function for get frequency data + ExportScript.Tools.SendData(2000, ExportScript.Tools.RoundFreqeuncy((UHF_RADIO:get_frequency()/1000000))) -- ExportScript.Tools.RoundFreqeuncy(frequency (MHz|KHz), format ("7.3"), PrefixZeros (false), LeastValue (0.025)) ]] end @@ -337,7 +338,7 @@ function ExportScript.ProcessDACConfigHighImportance(mainPanelDevice) ExportScript.Tools.SendDataDAC("ExportID", "Format") ExportScript.Tools.SendDataDAC("ExportID", "Format", HardwareConfigID) ExportScript.Tools.SendDataDAC("2000", string.format("%7.3f", UHF_RADIO:get_frequency()/1000000)) - ExportScript.Tools.SendDataDAC("2000", string.format("%7.3f", UHF_RADIO:get_frequency()/1000000), 2) -- export to Hardware '2' Config + ExportScript.Tools.SendDataDAC("2000", ExportScript.Tools.RoundFreqeuncy((UHF_RADIO:get_frequency()/1000000))) -- ExportScript.Tools.RoundFreqeuncy(frequency (MHz|KHz), format ("7.3"), PrefixZeros (false), LeastValue (0.025)) ]] end @@ -355,19 +356,10 @@ function ExportScript.ProcessIkarusDCSConfigLowImportance(mainPanelDevice) get data from device local lUHFRadio = GetDevice(54) ExportScript.Tools.SendData("ExportID", "Format") - ExportScript.Tools.SendData(2000, string.format("%7.3f", lUHFRadio:get_frequency()/1000000)) <- special function for get frequency data - ]] ---[[ - -- Cockpit Light - if mainPanelDevice:get_argument_value(654) > 0.4 or -- Compass Light Switch - mainPanelDevice:get_argument_value(813) > 0.4 or -- Instrument Panel Primary Light Rheostat - mainPanelDevice:get_argument_value(811) > 0.4 or -- Instrument Panel Auxiliary Light Rheostat - mainPanelDevice:get_argument_value(812) > 0.4 then -- Console and Panel Light Rheostat - ExportScript.Tools.SendData(2222, "1.0") -- Ikarus Cockpit Light on - else - ExportScript.Tools.SendData(2222, "0.0") -- Ikarus Cockpit Light off - end + ExportScript.Tools.SendData(2000, string.format("%7.3f", lUHFRadio:get_frequency()/1000000)) -- <- special function for get frequency data + ExportScript.Tools.SendData(2000, ExportScript.Tools.RoundFreqeuncy((UHF_RADIO:get_frequency()/1000000))) -- ExportScript.Tools.RoundFreqeuncy(frequency (MHz|KHz), format ("7.3"), PrefixZeros (false), LeastValue (0.025)) ]] + ExportScript.Tools.IkarusCockpitLights(mainPanelDevice, {654,813,811,812}) -- Compass Light Switch, Instrument Panel Primary Light Rheostat, Instrument Panel Auxiliary Light Rheostat, Console and Panel Light Rheostat end @@ -382,7 +374,7 @@ function ExportScript.ProcessDACConfigLowImportance(mainPanelDevice) ExportScript.Tools.SendDataDAC("ExportID", "Format") ExportScript.Tools.SendDataDAC("ExportID", "Format", HardwareConfigID) ExportScript.Tools.SendDataDAC("2000", string.format("%7.3f", UHF_RADIO:get_frequency()/1000000)) - ExportScript.Tools.SendDataDAC("2000", string.format("%7.3f", UHF_RADIO:get_frequency()/1000000), 2) -- export to Hardware '2' Config + ExportScript.Tools.SendDataDAC("2000", ExportScript.Tools.RoundFreqeuncy((UHF_RADIO:get_frequency()/1000000))) -- ExportScript.Tools.RoundFreqeuncy(frequency (MHz|KHz), format ("7.3"), PrefixZeros (false), LeastValue (0.025)) ]] --===================================================================================== @@ -390,16 +382,17 @@ function ExportScript.ProcessDACConfigLowImportance(mainPanelDevice) ExportScript.Tools.WriteToLog('list_cockpit_params(): '..ExportScript.Tools.dump(list_cockpit_params())) ExportScript.Tools.WriteToLog('CMSP: '..ExportScript.Tools.dump(list_indication(7))) + -- list_indication get tehe value of cockpit displays local ltmp1 = 0 - for ltmp2 = 0, 13, 1 do + for ltmp2 = 0, 20, 1 do ltmp1 = list_indication(ltmp2) ExportScript.Tools.WriteToLog(ltmp2..': '..ExportScript.Tools.dump(ltmp1)) - --ExportScript.Tools.WriteToLog(ltmp2..' (metatable): '..ExportScript.Tools.dump(getmetatable(ltmp1))) end ]] --[[ + -- getmetatable get function name from devices local ltmp1 = 0 - for ltmp2 = 1, 73, 1 do + for ltmp2 = 1, 70, 1 do ltmp1 = GetDevice(ltmp2) ExportScript.Tools.WriteToLog(ltmp2..': '..ExportScript.Tools.dump(ltmp1)) ExportScript.Tools.WriteToLog(ltmp2..' (metatable): '..ExportScript.Tools.dump(getmetatable(ltmp1))) @@ -409,8 +402,4 @@ end ----------------------------- -- Custom functions -- ------------------------------ - -function ExportScript.genericRadio(key, value, hardware) -end - +----------------------------- \ No newline at end of file diff --git a/Scripts/DCS-ExportScript/ExportsModules/FC_AuxiliaryFuntions.lua b/Scripts/DCS-ExportScript/ExportsModules/FC_AuxiliaryFuntions.lua index 6b6fc5b..4dbfcff 100644 --- a/Scripts/DCS-ExportScript/ExportsModules/FC_AuxiliaryFuntions.lua +++ b/Scripts/DCS-ExportScript/ExportsModules/FC_AuxiliaryFuntions.lua @@ -1,5 +1,5 @@ -- Flaming Cliffs Auxiliary Functons --- Version 1.0.1 +-- Version 1.0.2 -- Workaround for engine start-up ExportScript.AF.LeftEngineOn = false @@ -1881,9 +1881,9 @@ function ExportScript.AF.FC_US_ADI() [25] = "%0.1f", -- ADI Attitude Warning Flag [19] = "%0.1f", -- ADI Course Warning Flag ]] - lNavInfoPitch = lNavInfoPitch / lRadToDCSsignd + lNavInfoPitch = lNavInfoPitch / (lRadToDCSsignd * -1) -- lNavInfoPitch / lRadToDCSsignd lNavInfoRoll = lNavInfoRoll / lRadToDCSsignd - lPitch = lPitch / (lRadToDCSsignd / 1.5) + lPitch = lPitch / (lRadToDCSsignd / 2) -- lPitch / (lRadToDCSsignd / 1.5) lBank = lBank / lRadToDCSsignd ExportScript.Tools.SendData(2, string.format("%.4f", ExportScript.Tools.negate(lPitch))) -- negate diff --git a/Scripts/DCS-ExportScript/ExportsModules/FW-190D9.lua b/Scripts/DCS-ExportScript/ExportsModules/FW-190D9.lua index c937d9e..9f452dd 100644 --- a/Scripts/DCS-ExportScript/ExportsModules/FW-190D9.lua +++ b/Scripts/DCS-ExportScript/ExportsModules/FW-190D9.lua @@ -1,5 +1,5 @@ -- FW-190D9 Dora --- Version 1.0.1 +-- Version 1.0.2 ExportScript.FoundDCSModule = true @@ -207,7 +207,8 @@ function ExportScript.ProcessIkarusDCSConfigHighImportance(mainPanelDevice) get data from device local lUHFRadio = GetDevice(54) ExportScript.Tools.SendData("ExportID", "Format") - ExportScript.Tools.SendData(2000, string.format("%7.3f", lUHFRadio:get_frequency()/1000000)) <- special function for get frequency data + ExportScript.Tools.SendData(2000, string.format("%7.3f", lUHFRadio:get_frequency()/1000000)) -- <- special function for get frequency data + ExportScript.Tools.SendData(2000, ExportScript.Tools.RoundFreqeuncy((UHF_RADIO:get_frequency()/1000000))) -- ExportScript.Tools.RoundFreqeuncy(frequency (MHz|KHz), format ("7.3"), PrefixZeros (false), LeastValue (0.025)) ]] --[50] = "%.4f", -- Gun_Fire_1 {0.0, 1.0} --[164] = "%.4f", -- Gun_Fire_2 {0.0, 1.0} @@ -231,7 +232,7 @@ function ExportScript.ProcessDACConfigHighImportance(mainPanelDevice) ExportScript.Tools.SendDataDAC("ExportID", "Format") ExportScript.Tools.SendDataDAC("ExportID", "Format", HardwareConfigID) ExportScript.Tools.SendDataDAC("2000", string.format("%7.3f", UHF_RADIO:get_frequency()/1000000)) - ExportScript.Tools.SendDataDAC("2000", string.format("%7.3f", UHF_RADIO:get_frequency()/1000000), 2) -- export to Hardware '2' Config + ExportScript.Tools.SendDataDAC("2000", ExportScript.Tools.RoundFreqeuncy((UHF_RADIO:get_frequency()/1000000))) -- ExportScript.Tools.RoundFreqeuncy(frequency (MHz|KHz), format ("7.3"), PrefixZeros (false), LeastValue (0.025)) ]] ExportScript.Tools.SendData(50, mainPanelDevice:get_argument_value(50) > 0.3 and 1 or 0) -- Gun_Fire_1 {0.0, 1.0} ExportScript.Tools.SendData(164, mainPanelDevice:get_argument_value(164) > 0.3 and 1 or 0) -- Gun_Fire_2 {0.0, 1.0} @@ -254,7 +255,8 @@ function ExportScript.ProcessIkarusDCSConfigLowImportance(mainPanelDevice) get data from device local lUHFRadio = GetDevice(54) ExportScript.Tools.SendData("ExportID", "Format") - ExportScript.Tools.SendData(2000, string.format("%7.3f", lUHFRadio:get_frequency()/1000000)) <- special function for get frequency data + ExportScript.Tools.SendData(2000, string.format("%7.3f", lUHFRadio:get_frequency()/1000000)) -- <- special function for get frequency data + ExportScript.Tools.SendData(2000, ExportScript.Tools.RoundFreqeuncy((UHF_RADIO:get_frequency()/1000000))) -- ExportScript.Tools.RoundFreqeuncy(frequency (MHz|KHz), format ("7.3"), PrefixZeros (false), LeastValue (0.025)) ]] end @@ -268,7 +270,7 @@ function ExportScript.ProcessDACConfigLowImportance(mainPanelDevice) ExportScript.Tools.SendDataDAC("ExportID", "Format") ExportScript.Tools.SendDataDAC("ExportID", "Format", HardwareConfigID) ExportScript.Tools.SendDataDAC("2000", string.format("%7.3f", UHF_RADIO:get_frequency()/1000000)) - ExportScript.Tools.SendDataDAC("2000", string.format("%7.3f", UHF_RADIO:get_frequency()/1000000), 2) -- export to Hardware '2' Config + ExportScript.Tools.SendDataDAC("2000", ExportScript.Tools.RoundFreqeuncy((UHF_RADIO:get_frequency()/1000000))) -- ExportScript.Tools.RoundFreqeuncy(frequency (MHz|KHz), format ("7.3"), PrefixZeros (false), LeastValue (0.025)) ]] --===================================================================================== @@ -276,16 +278,17 @@ function ExportScript.ProcessDACConfigLowImportance(mainPanelDevice) ExportScript.Tools.WriteToLog('list_cockpit_params(): '..ExportScript.Tools.dump(list_cockpit_params())) ExportScript.Tools.WriteToLog('CMSP: '..ExportScript.Tools.dump(list_indication(7))) + -- list_indication get tehe value of cockpit displays local ltmp1 = 0 - for ltmp2 = 0, 13, 1 do + for ltmp2 = 0, 20, 1 do ltmp1 = list_indication(ltmp2) ExportScript.Tools.WriteToLog(ltmp2..': '..ExportScript.Tools.dump(ltmp1)) - --ExportScript.Tools.WriteToLog(ltmp2..' (metatable): '..ExportScript.Tools.dump(getmetatable(ltmp1))) end ]] --[[ + -- getmetatable get function name from devices local ltmp1 = 0 - for ltmp2 = 1, 73, 1 do + for ltmp2 = 1, 70, 1 do ltmp1 = GetDevice(ltmp2) ExportScript.Tools.WriteToLog(ltmp2..': '..ExportScript.Tools.dump(ltmp1)) ExportScript.Tools.WriteToLog(ltmp2..' (metatable): '..ExportScript.Tools.dump(getmetatable(ltmp1))) @@ -295,7 +298,4 @@ end ----------------------------- -- Custom functions -- ------------------------------ - -function ExportScript.genericRadio(key, value, hardware) -end \ No newline at end of file +----------------------------- \ No newline at end of file diff --git a/Scripts/DCS-ExportScript/ExportsModules/Ka-50.lua b/Scripts/DCS-ExportScript/ExportsModules/Ka-50.lua index 2bc686e..3c19f14 100644 --- a/Scripts/DCS-ExportScript/ExportsModules/Ka-50.lua +++ b/Scripts/DCS-ExportScript/ExportsModules/Ka-50.lua @@ -1,5 +1,5 @@ -- Ka-50 Export --- Version 1.0.1 +-- Version 1.0.2 ExportScript.FoundDCSModule = true @@ -662,7 +662,8 @@ function ExportScript.ProcessIkarusDCSConfigLowImportance(mainPanelDevice) get data from device local lUHFRadio = GetDevice(54) ExportScript.Tools.SendData("ExportID", "Format") - ExportScript.Tools.SendData(2000, string.format("%7.3f", lUHFRadio:get_frequency()/1000000)) <- special function for get frequency data + ExportScript.Tools.SendData(2000, string.format("%7.3f", lUHFRadio:get_frequency()/1000000)) -- <- special function for get frequency data + ExportScript.Tools.SendData(2000, ExportScript.Tools.RoundFreqeuncy((UHF_RADIO:get_frequency()/1000000))) -- ExportScript.Tools.RoundFreqeuncy(frequency (MHz|KHz), format ("7.3"), PrefixZeros (false), LeastValue (0.025)) ]] -- function for Ikarus @@ -705,12 +706,13 @@ function ExportScript.ProcessIkarusDCSConfigLowImportance(mainPanelDevice) ExportScript.Tools.SendData(2006, string.format("%s", lCannonAmmoCount)) -- UV-26 - local lUV26 = list_indication(7) - lUV26 = lUV26:gsub("-----------------------------------------", "") - lUV26 = lUV26:gsub("txt_digits", "") - lUV26 = lUV26:gsub("%c", "") + local lUV26 = ExportScript.Tools.getListIndicatorValue(7) - ExportScript.Tools.SendData(2007, string.format("%s", lUV26)) + if lUV26 ~= nil and lUV26.txt_digits ~= nil then + ExportScript.Tools.SendData(2007, string.format("%s", lUV26.txt_digits)) + else + ExportScript.Tools.SendData(2007, " ") + end -- EKRAN --------------------------------------------------- @@ -859,7 +861,7 @@ function ExportScript.ProcessDACConfigLowImportance(mainPanelDevice) ExportScript.Tools.SendDataDAC("ExportID", "Format") ExportScript.Tools.SendDataDAC("ExportID", "Format", HardwareConfigID) ExportScript.Tools.SendDataDAC("2000", string.format("%7.3f", UHF_RADIO:get_frequency()/1000000)) - ExportScript.Tools.SendDataDAC("2000", string.format("%7.3f", UHF_RADIO:get_frequency()/1000000), 2) -- export to Hardware '2' Config + ExportScript.Tools.SendDataDAC("2000", ExportScript.Tools.RoundFreqeuncy((UHF_RADIO:get_frequency()/1000000))) -- ExportScript.Tools.RoundFreqeuncy(frequency (MHz|KHz), format ("7.3"), PrefixZeros (false), LeastValue (0.025)) ]] -- Radio comunication -- ARK_22 (ADF) Frequncy @@ -868,7 +870,8 @@ function ExportScript.ProcessDACConfigLowImportance(mainPanelDevice) -- R_800 local lR_800 = GetDevice(48) - ExportScript.Tools.SendDataDAC("2001", string.format("%7.3f", lR_800:get_frequency()/1000000)) + --ExportScript.Tools.SendDataDAC("2001", string.format("%7.3f", lR_800:get_frequency()/1000000)) + ExportScript.Tools.SendDataDAC("2001",ExportScript.Tools.RoundFreqeuncy(lR_800:get_frequency()/1000000)) -- R_828 Channel local lR_828 = {[0.0]="1",[0.1]="2",[0.2]="3",[0.3]="4",[0.4]="5",[0.5]="6",[0.6]="7",[0.7]="8",[0.8]="9",[0.9]="10"} @@ -877,7 +880,8 @@ function ExportScript.ProcessDACConfigLowImportance(mainPanelDevice) -- R_828 Frequency local lR_828_F = GetDevice(49) if lR_828_F:is_on() then - ExportScript.Tools.SendDataDAC("2003", string.format("%7.3f", lR_828_F:get_frequency()/1000000)) + --ExportScript.Tools.SendDataDAC("2003", string.format("%7.3f", lR_828_F:get_frequency()/1000000)) + ExportScript.Tools.SendDataDAC("2003", ExportScript.Tools.RoundFreqeuncy(lR_828_F:get_frequency()/1000000)) else ExportScript.Tools.SendDataDAC("2003", "-") end @@ -920,12 +924,13 @@ function ExportScript.ProcessDACConfigLowImportance(mainPanelDevice) ExportScript.Tools.SendDataDAC("2006",lCannonAmmoCount) -- UV-26 - local lUV26 = list_indication(7) - lUV26 = lUV26:gsub("-----------------------------------------", "") - lUV26 = lUV26:gsub("txt_digits", "") - lUV26 = lUV26:gsub("%c", "") + local lUV26 = ExportScript.Tools.getListIndicatorValue(7) - ExportScript.Tools.SendDataDAC("2007", string.format("%s", lUV26)) + if lUV26 ~= nil and lUV26.txt_digits ~= nil then + ExportScript.Tools.SendDataDAC("2007", string.format("%s", lUV26.txt_digits)) + else + ExportScript.Tools.SendDataDAC("2007", "-") + end local lPVI800 = list_indication(5) --[[ @@ -1149,16 +1154,6 @@ function ExportScript.ProcessDACConfigLowImportance(mainPanelDevice) ExportScript.genericRadio(nil, nil) - --[[ - --ExportScript.Tools.WriteToLog('list_cockpit_params(): '..ExportScript.Tools.dump(list_cockpit_params())) - - local ltmp1 = 0 - for ltmp2 = 1, 14, 1 do - ltmp1 = list_indication(ltmp2) - ExportScript.Tools.WriteToLog(ltmp2..': '..ExportScript.Tools.dump(ltmp1)) - --ExportScript.Tools.WriteToLog(ltmp2..' (metatable): '..ExportScript.Tools.dump(getmetatable(ltmp1))) - end - ]] end ----------------------------- @@ -1175,7 +1170,8 @@ function ExportScript.ProcessIkarusDCSConfigHighImportance(mainPanelDevice) get data from device local lUHFRadio = GetDevice(54) ExportScript.Tools.SendData("ExportID", "Format") - ExportScript.Tools.SendData(2000, string.format("%7.3f", lUHFRadio:get_frequency()/1000000)) <- special function for get frequency data + ExportScript.Tools.SendData(2000, string.format("%7.3f", lUHFRadio:get_frequency()/1000000)) -- <- special function for get frequency data + ExportScript.Tools.SendData(2000, ExportScript.Tools.RoundFreqeuncy((UHF_RADIO:get_frequency()/1000000))) -- ExportScript.Tools.RoundFreqeuncy(frequency (MHz|KHz), format ("7.3"), PrefixZeros (false), LeastValue (0.025)) ]] ExportScript.Tools.SendData(44, string.format("%.1f", mainPanelDevice:get_argument_value(44))) -- lamp_MasterWarning {0.0,0.3} {0,1} ExportScript.Tools.SendData(46, string.format("%.1f", mainPanelDevice:get_argument_value(46))) -- lamp_RotorRPM {0.0,0.1} {0,1} @@ -1192,7 +1188,7 @@ function ExportScript.ProcessDACConfigHighImportance(mainPanelDevice) ExportScript.Tools.SendDataDAC("ExportID", "Format") ExportScript.Tools.SendDataDAC("ExportID", "Format", HardwareConfigID) ExportScript.Tools.SendDataDAC("2000", string.format("%7.3f", UHF_RADIO:get_frequency()/1000000)) - ExportScript.Tools.SendDataDAC("2000", string.format("%7.3f", UHF_RADIO:get_frequency()/1000000), 2) -- export to Hardware '2' Config + ExportScript.Tools.SendDataDAC("2000", ExportScript.Tools.RoundFreqeuncy((UHF_RADIO:get_frequency()/1000000))) -- ExportScript.Tools.RoundFreqeuncy(frequency (MHz|KHz), format ("7.3"), PrefixZeros (false), LeastValue (0.025)) ]] ExportScript.Tools.SendDataDAC("44", mainPanelDevice:get_argument_value(44) > 0.0 and 1 or 0) -- lamp_MasterWarning {0.0,0.3} @@ -1326,9 +1322,21 @@ function ExportScript.ProcessDACConfigHighImportance(mainPanelDevice) ExportScript.Tools.WriteToLog('lSTBY_ADI:get_bank '..ExportScript.Tools.dump(lSTBY_ADI:get_bank())) ExportScript.Tools.WriteToLog('lSTBY_ADI:get_pitch '..ExportScript.Tools.dump(lSTBY_ADI:get_pitch())) ]] ---[[ + --[[ + ExportScript.Tools.WriteToLog('list_cockpit_params(): '..ExportScript.Tools.dump(list_cockpit_params())) + ExportScript.Tools.WriteToLog('CMSP: '..ExportScript.Tools.dump(list_indication(7))) + + -- list_indication get tehe value of cockpit displays local ltmp1 = 0 - for ltmp2 = 0, 62, 1 do + for ltmp2 = 0, 20, 1 do + ltmp1 = list_indication(ltmp2) + ExportScript.Tools.WriteToLog(ltmp2..': '..ExportScript.Tools.dump(ltmp1)) + end + ]] +--[[ + -- getmetatable get function name from devices + local ltmp1 = 0 + for ltmp2 = 1, 70, 1 do ltmp1 = GetDevice(ltmp2) ExportScript.Tools.WriteToLog(ltmp2..': '..ExportScript.Tools.dump(ltmp1)) ExportScript.Tools.WriteToLog(ltmp2..' (metatable): '..ExportScript.Tools.dump(getmetatable(ltmp1))) diff --git a/Scripts/DCS-ExportScript/ExportsModules/L-39C.lua b/Scripts/DCS-ExportScript/ExportsModules/L-39C.lua index 3b42374..0773374 100644 --- a/Scripts/DCS-ExportScript/ExportsModules/L-39C.lua +++ b/Scripts/DCS-ExportScript/ExportsModules/L-39C.lua @@ -1,5 +1,5 @@ -- L-39C --- Version 1.0.1 +-- Version 1.0.2 ExportScript.FoundDCSModule = true @@ -622,7 +622,8 @@ function ExportScript.ProcessIkarusDCSConfigHighImportance(mainPanelDevice) get data from device local lUHFRadio = GetDevice(54) ExportScript.Tools.SendData("ExportID", "Format") - ExportScript.Tools.SendData(2000, string.format("%7.3f", lUHFRadio:get frequency()/1000000)) <- special function for get frequency data + ExportScript.Tools.SendData(2000, string.format("%7.3f", lUHFRadio:get_frequency()/1000000)) -- <- special function for get frequency data + ExportScript.Tools.SendData(2000, ExportScript.Tools.RoundFreqeuncy((UHF_RADIO:get_frequency()/1000000))) -- ExportScript.Tools.RoundFreqeuncy(frequency (MHz|KHz), format ("7.3"), PrefixZeros (false), LeastValue (0.025)) ]] -- Front Seat @@ -729,7 +730,7 @@ function ExportScript.ProcessDACConfigHighImportance(mainPanelDevice) ExportScript.Tools.SendDataDAC("ExportID", "Format") ExportScript.Tools.SendDataDAC("ExportID", "Format", HardwareConfigID) ExportScript.Tools.SendDataDAC("2000", string.format("%7.3f", UHF RADIO:get_frequency()/1000000)) - ExportScript.Tools.SendDataDAC("2000", string.format("%7.3f", UHF RADIO:get_frequency()/1000000), 2) -- export to Hardware '2' Config + ExportScript.Tools.SendDataDAC("2000", ExportScript.Tools.RoundFreqeuncy((UHF_RADIO:get_frequency()/1000000))) -- ExportScript.Tools.RoundFreqeuncy(frequency (MHz|KHz), format ("7.3"), PrefixZeros (false), LeastValue (0.025)) ]] end @@ -747,7 +748,8 @@ function ExportScript.ProcessIkarusDCSConfigLowImportance(mainPanelDevice) get data from device local lUHFRadio = GetDevice(54) ExportScript.Tools.SendData("ExportID", "Format") - ExportScript.Tools.SendData(2000, string.format("%7.3f", lUHFRadio:get_frequency()/1000000)) <- special function for get frequency data + ExportScript.Tools.SendData(2000, string.format("%7.3f", lUHFRadio:get_frequency()/1000000)) -- <- special function for get frequency data + ExportScript.Tools.SendData(2000, ExportScript.Tools.RoundFreqeuncy((UHF_RADIO:get_frequency()/1000000))) -- ExportScript.Tools.RoundFreqeuncy(frequency (MHz|KHz), format ("7.3"), PrefixZeros (false), LeastValue (0.025)) ]] -- R_832M Channel @@ -758,7 +760,8 @@ function ExportScript.ProcessIkarusDCSConfigLowImportance(mainPanelDevice) -- R_832M Frequency local lR_832M_F = GetDevice(19) if lR_832M_F:is_on() then - ExportScript.Tools.SendData(2001, string.format("%7.3f", lR_832M_F:get_frequency()/1000000)) + --ExportScript.Tools.SendData(2001, string.format("%7.3f", lR_832M_F:get_frequency()/1000000)) + ExportScript.Tools.SendData(2001, ExportScript.Tools.RoundFreqeuncy(lR_832M_F:get_frequency()/1000000)) --ExportScript.Tools.WriteToLog('R_832M Frequency: '..ExportScript.Tools.dump(string.format("%7.3f", lR_832M_F:get_frequency()/1000000))) else ExportScript.Tools.SendData(2001, " ") @@ -791,7 +794,7 @@ function ExportScript.ProcessDACConfigLowImportance(mainPanelDevice) ExportScript.Tools.SendDataDAC("ExportID", "Format") ExportScript.Tools.SendDataDAC("ExportID", "Format", HardwareConfigID) ExportScript.Tools.SendDataDAC("2000", string.format("%7.3f", UHF RADIO:get frequency()/1000000)) - ExportScript.Tools.SendDataDAC("2000", string.format("%7.3f", UHF RADIO:get frequency()/1000000), 2) -- export to Hardware '2' Config + ExportScript.Tools.SendDataDAC("2000", ExportScript.Tools.RoundFreqeuncy((UHF_RADIO:get_frequency()/1000000))) -- ExportScript.Tools.RoundFreqeuncy(frequency (MHz|KHz), format ("7.3"), PrefixZeros (false), LeastValue (0.025)) ]] -- R_832M Channel @@ -803,7 +806,8 @@ function ExportScript.ProcessDACConfigLowImportance(mainPanelDevice) -- R_832M Frequency local lR_832M_F = GetDevice(19) if lR_832M_F:is_on() then - ExportScript.Tools.SendDataDAC(2001, string.format("%7.3f", lR_832M_F:get_frequency()/1000000)) + --ExportScript.Tools.SendDataDAC(2001, string.format("%7.3f", lR_832M_F:get_frequency()/1000000)) + ExportScript.Tools.SendDataDAC(2001, ExportScript.Tools.RoundFreqeuncy(lR_832M_F:get_frequency()/1000000)) --ExportScript.Tools.WriteToLog('R_832M Frequency: '..ExportScript.Tools.dump(string.format("%7.3f", lR_832M_F:get_frequency()/1000000))) else ExportScript.Tools.SendDataDAC(2001, " ") @@ -818,24 +822,26 @@ function ExportScript.ProcessDACConfigLowImportance(mainPanelDevice) ExportScript.Tools.SendDataDAC(190, lRSBN_Chan[ExportScript.Tools.round(mainPanelDevice:get_argument_value(190), 2)]) --===================================================================================== - - --ExportScript.Tools.WriteToLog('list_cockpit_params(): '..ExportScript.Tools.dump(list_cockpit_params())) - --ExportScript.Tools.WriteToLog('CMSP: '..ExportScript.Tools.dump(list_indication(7))) --[[ + ExportScript.Tools.WriteToLog('list_cockpit_params(): '..ExportScript.Tools.dump(list_cockpit_params())) + ExportScript.Tools.WriteToLog('CMSP: '..ExportScript.Tools.dump(list_indication(7))) + + -- list_indication get tehe value of cockpit displays local ltmp1 = 0 for ltmp2 = 0, 20, 1 do ltmp1 = list_indication(ltmp2) ExportScript.Tools.WriteToLog(ltmp2..': '..ExportScript.Tools.dump(ltmp1)) - --ExportScript.Tools.WriteToLog(ltmp2..' (metatable): '..ExportScript.Tools.dump(getmetatable(ltmp1))) end - + ]] +--[[ + -- getmetatable get function name from devices local ltmp1 = 0 - for ltmp2 = 1, 46, 1 do + for ltmp2 = 1, 70, 1 do ltmp1 = GetDevice(ltmp2) ExportScript.Tools.WriteToLog(ltmp2..': '..ExportScript.Tools.dump(ltmp1)) ExportScript.Tools.WriteToLog(ltmp2..' (metatable): '..ExportScript.Tools.dump(getmetatable(ltmp1))) end - ]] +]] end -- global VD-20 Pressure variable diff --git a/Scripts/DCS-ExportScript/ExportsModules/L-39ZA.lua b/Scripts/DCS-ExportScript/ExportsModules/L-39ZA.lua index fa3bd9d..0ad9d62 100644 --- a/Scripts/DCS-ExportScript/ExportsModules/L-39ZA.lua +++ b/Scripts/DCS-ExportScript/ExportsModules/L-39ZA.lua @@ -1,5 +1,5 @@ -- L-39C --- Version 1.0.1 +-- Version 1.0.2 ExportScript.FoundDCSModule = true @@ -220,16 +220,16 @@ ExportScript.ConfigEveryFrameArguments = [391] = "%.4f", -- Backseat - VD-20 km Ind {0.0, 1.0}{0.0, 20.0} [392] = "%.4f", -- Backseat - VD-20 m Ind {0.0, 1.0}{0.0, 1000.0} --[393] = "%.4f", -- Backseat - VD-20 PRESS {0.0, 1.0}{670.0, 826.0} - -- Barometric altimeter - -- Altimeter Feet , copy of A-10 altimeter - [737] = "%.4f", -- Altimeter_100_footPtr {0.0, 1.0}{0.0, 1000.0} - [732] = "%.4f", -- Altimeter_10000_footCount {0.0, 1.0}{0.0, 10.0} - [731] = "%.4f", -- Altimeter_1000_footCount {0.0, 1.0}{0.0, 10.0} - [730] = "%.4f", -- Altimeter_100_footCount {0.0, 1.0}{0.0, 10.0} - [736] = "%.4f", -- pressure_setting_0 {0.0, 1.0}{0.0, 10.0} - [735] = "%.4f", -- pressure_setting_1 {0.0, 1.0}{0.0, 10.0} - [734] = "%.4f", -- pressure_setting_2 {0.0, 1.0}{0.0, 10.0} - [733] = "%.4f", -- pressure_setting_3 {0.0, 1.0}{0.0, 10.0} + -- Barometric altimeter + -- Altimeter Feet , copy of A-10 altimeter + [737] = "%.4f", -- Altimeter_100_footPtr {0.0, 1.0}{0.0, 1000.0} + [732] = "%.4f", -- Altimeter_10000_footCount {0.0, 1.0}{0.0, 10.0} + [731] = "%.4f", -- Altimeter_1000_footCount {0.0, 1.0}{0.0, 10.0} + [730] = "%.4f", -- Altimeter_100_footCount {0.0, 1.0}{0.0, 10.0} + [736] = "%.4f", -- pressure_setting_0 {0.0, 1.0}{0.0, 10.0} + [735] = "%.4f", -- pressure_setting_1 {0.0, 1.0}{0.0, 10.0} + [734] = "%.4f", -- pressure_setting_2 {0.0, 1.0}{0.0, 10.0} + [733] = "%.4f", -- pressure_setting_3 {0.0, 1.0}{0.0, 10.0} -- AIRSPEED AND MACH [386] = "%.4f", -- Backseat - IAS {0.0, 0.08, 0.186, 0.296, 0.436, 0.55, 0.635, 0.705, 0.765, 0.824, 1.0}{0.0, 100.0, 150.0, 200.0, 300.0, 400.0, 500.0, 600.0, 700.0, 800.0, 1200.0} [387] = "%.4f", -- Backseat - TAS {0.0, 0.08, 0.186, 0.296, 0.436, 0.55, 0.635, 0.705, 0.765, 0.824, 1.0}{0.0, 100.0, 150.0, 200.0, 300.0, 400.0, 500.0, 600.0, 700.0, 800.0, 1200.0} @@ -642,7 +642,8 @@ function ExportScript.ProcessIkarusDCSConfigHighImportance(mainPanelDevice) get data from device local lUHFRadio = GetDevice(54) ExportScript.Tools.SendData("ExportID", "Format") - ExportScript.Tools.SendData(2000, string.format("%7.3f", lUHFRadio:get frequency()/1000000)) <- special function for get frequency data + ExportScript.Tools.SendData(2000, string.format("%7.3f", lUHFRadio:get_frequency()/1000000)) -- <- special function for get frequency data + ExportScript.Tools.SendData(2000, ExportScript.Tools.RoundFreqeuncy((UHF_RADIO:get_frequency()/1000000))) -- ExportScript.Tools.RoundFreqeuncy(frequency (MHz|KHz), format ("7.3"), PrefixZeros (false), LeastValue (0.025)) ]] -- Front Seat @@ -749,7 +750,7 @@ function ExportScript.ProcessDACConfigHighImportance(mainPanelDevice) ExportScript.Tools.SendDataDAC("ExportID", "Format") ExportScript.Tools.SendDataDAC("ExportID", "Format", HardwareConfigID) ExportScript.Tools.SendDataDAC("2000", string.format("%7.3f", UHF RADIO:get frequency()/1000000)) - ExportScript.Tools.SendDataDAC("2000", string.format("%7.3f", UHF RADIO:get frequency()/1000000), 2) -- export to Hardware '2' Config + ExportScript.Tools.SendDataDAC("2000", ExportScript.Tools.RoundFreqeuncy((UHF_RADIO:get_frequency()/1000000))) -- ExportScript.Tools.RoundFreqeuncy(frequency (MHz|KHz), format ("7.3"), PrefixZeros (false), LeastValue (0.025)) ]] end @@ -767,7 +768,8 @@ function ExportScript.ProcessIkarusDCSConfigLowImportance(mainPanelDevice) get data from device local lUHFRadio = GetDevice(54) ExportScript.Tools.SendData("ExportID", "Format") - ExportScript.Tools.SendData(2000, string.format("%7.3f", lUHFRadio:get frequency()/1000000)) <- special function for get frequency data + ExportScript.Tools.SendData(2000, string.format("%7.3f", lUHFRadio:get_frequency()/1000000)) -- <- special function for get frequency data + ExportScript.Tools.SendData(2000, ExportScript.Tools.RoundFreqeuncy((UHF_RADIO:get_frequency()/1000000))) -- ExportScript.Tools.RoundFreqeuncy(frequency (MHz|KHz), format ("7.3"), PrefixZeros (false), LeastValue (0.025)) ]] -- R_832M Channel @@ -778,7 +780,8 @@ function ExportScript.ProcessIkarusDCSConfigLowImportance(mainPanelDevice) -- R_832M Frequency local lR_832M_F = GetDevice(19) if lR_832M_F:is_on() then - ExportScript.Tools.SendData(2001, string.format("%7.3f", lR_832M_F:get_frequency()/1000000)) + --ExportScript.Tools.SendData(2001, string.format("%7.3f", lR_832M_F:get_frequency()/1000000)) + ExportScript.Tools.SendData(2001, ExportScript.Tools.RoundFreqeuncy(lR_832M_F:get_frequency()/1000000)) --ExportScript.Tools.WriteToLog('R_832M Frequency: '..ExportScript.Tools.dump(string.format("%7.3f", lR_832M_F:get_frequency()/1000000))) else ExportScript.Tools.SendData(2001, " ") @@ -799,7 +802,7 @@ function ExportScript.ProcessDACConfigLowImportance(mainPanelDevice) ExportScript.Tools.SendDataDAC("ExportID", "Format") ExportScript.Tools.SendDataDAC("ExportID", "Format", HardwareConfigID) ExportScript.Tools.SendDataDAC("2000", string.format("%7.3f", UHF RADIO:get frequency()/1000000)) - ExportScript.Tools.SendDataDAC("2000", string.format("%7.3f", UHF RADIO:get frequency()/1000000), 2) -- export to Hardware '2' Config + ExportScript.Tools.SendDataDAC("2000", ExportScript.Tools.RoundFreqeuncy((UHF_RADIO:get_frequency()/1000000))) -- ExportScript.Tools.RoundFreqeuncy(frequency (MHz|KHz), format ("7.3"), PrefixZeros (false), LeastValue (0.025)) ]] -- R_832M Channel @@ -811,7 +814,8 @@ function ExportScript.ProcessDACConfigLowImportance(mainPanelDevice) -- R_832M Frequency local lR_832M_F = GetDevice(19) if lR_832M_F:is_on() then - ExportScript.Tools.SendDataDAC(2001, string.format("%7.3f", lR_832M_F:get_frequency()/1000000)) + --ExportScript.Tools.SendDataDAC(2001, string.format("%7.3f", lR_832M_F:get_frequency()/1000000)) + ExportScript.Tools.SendDataDAC(2001, ExportScript.Tools.RoundFreqeuncy(lR_832M_F:get_frequency()/1000000)) --ExportScript.Tools.WriteToLog('R_832M Frequency: '..ExportScript.Tools.dump(string.format("%7.3f", lR_832M_F:get_frequency()/1000000))) else ExportScript.Tools.SendDataDAC(2001, " ") @@ -819,19 +823,20 @@ function ExportScript.ProcessDACConfigLowImportance(mainPanelDevice) --===================================================================================== --[[ - ExportScript.Tools.WriteToLog('list cockpit params(): '..ExportScript.Tools.dump(list cockpit params())) - ExportScript.Tools.WriteToLog('CMSP: '..ExportScript.Tools.dump(list indication(7))) + ExportScript.Tools.WriteToLog('list_cockpit_params(): '..ExportScript.Tools.dump(list_cockpit_params())) + ExportScript.Tools.WriteToLog('CMSP: '..ExportScript.Tools.dump(list_indication(7))) + -- list_indication get tehe value of cockpit displays local ltmp1 = 0 - for ltmp2 = 0, 13, 1 do - ltmp1 = list indication(ltmp2) + for ltmp2 = 0, 20, 1 do + ltmp1 = list_indication(ltmp2) ExportScript.Tools.WriteToLog(ltmp2..': '..ExportScript.Tools.dump(ltmp1)) - --ExportScript.Tools.WriteToLog(ltmp2..' (metatable): '..ExportScript.Tools.dump(getmetatable(ltmp1))) end ]] --[[ + -- getmetatable get function name from devices local ltmp1 = 0 - for ltmp2 = 1, 73, 1 do + for ltmp2 = 1, 70, 1 do ltmp1 = GetDevice(ltmp2) ExportScript.Tools.WriteToLog(ltmp2..': '..ExportScript.Tools.dump(ltmp1)) ExportScript.Tools.WriteToLog(ltmp2..' (metatable): '..ExportScript.Tools.dump(getmetatable(ltmp1))) diff --git a/Scripts/DCS-ExportScript/ExportsModules/Mi-8MT.lua b/Scripts/DCS-ExportScript/ExportsModules/Mi-8MT.lua index 744ca26..adfe652 100644 --- a/Scripts/DCS-ExportScript/ExportsModules/Mi-8MT.lua +++ b/Scripts/DCS-ExportScript/ExportsModules/Mi-8MT.lua @@ -1,5 +1,5 @@ -- Mi-8MTV2 Export --- Version 1.0.1 +-- Version 1.0.2 ExportScript.FoundDCSModule = true @@ -996,7 +996,8 @@ function ExportScript.ProcessIkarusDCSConfigHighImportance(mainPanelDevice) get data from device local lUHFRadio = GetDevice(54) ExportScript.Tools.SendData("ExportID", "Format") - ExportScript.Tools.SendData(2000, string.format("%7.3f", lUHFRadio:get_frequency()/1000000)) <- special function for get frequency data + ExportScript.Tools.SendData(2000, string.format("%7.3f", lUHFRadio:get_frequency()/1000000)) -- <- special function for get frequency data + ExportScript.Tools.SendData(2000, ExportScript.Tools.RoundFreqeuncy((UHF_RADIO:get_frequency()/1000000))) -- ExportScript.Tools.RoundFreqeuncy(frequency (MHz|KHz), format ("7.3"), PrefixZeros (false), LeastValue (0.025)) ]] --[12] = "%.4f", -- AGB_3K_Left_pitch {1.0, -1.0} @@ -1016,7 +1017,7 @@ function ExportScript.ProcessDACConfigHighImportance(mainPanelDevice) ExportScript.Tools.SendDataDAC("ExportID", "Format") ExportScript.Tools.SendDataDAC("ExportID", "Format", HardwareConfigID) ExportScript.Tools.SendDataDAC("2000", string.format("%7.3f", UHF_RADIO:get_frequency()/1000000)) - ExportScript.Tools.SendDataDAC("2000", string.format("%7.3f", UHF_RADIO:get_frequency()/1000000), 2) -- export to Hardware '2' Config + ExportScript.Tools.SendDataDAC("2000", ExportScript.Tools.RoundFreqeuncy((UHF_RADIO:get_frequency()/1000000))) -- ExportScript.Tools.RoundFreqeuncy(frequency (MHz|KHz), format ("7.3"), PrefixZeros (false), LeastValue (0.025)) ]] end @@ -1034,7 +1035,8 @@ function ExportScript.ProcessIkarusDCSConfigLowImportance(mainPanelDevice) get data from device local lUHFRadio = GetDevice(54) ExportScript.Tools.SendData("ExportID", "Format") - ExportScript.Tools.SendData(2000, string.format("%7.3f", lUHFRadio:get_frequency()/1000000)) <- special function for get frequency data + ExportScript.Tools.SendData(2000, string.format("%7.3f", lUHFRadio:get_frequency()/1000000)) -- <- special function for get frequency data + ExportScript.Tools.SendData(2000, ExportScript.Tools.RoundFreqeuncy((UHF_RADIO:get_frequency()/1000000))) -- ExportScript.Tools.RoundFreqeuncy(frequency (MHz|KHz), format ("7.3"), PrefixZeros (false), LeastValue (0.025)) ]] -- Cockpit Light @@ -1044,6 +1046,15 @@ function ExportScript.ProcessIkarusDCSConfigLowImportance(mainPanelDevice) -- deactivated WPADI right warning Flag ExportScript.Tools.SendData(2020, 0) + -- UV-26 + local lUV26 = ExportScript.Tools.getListIndicatorValue(4) + + if lUV26 ~= nil and lUV26.txt_digits ~= nil then + ExportScript.Tools.SendData(2006, string.format("%s", lUV26.txt_digits)) + else + ExportScript.Tools.SendData(2006, " ") + end + --[[ -- AGB_3K_LEFT local lAGB_3K_LEFT = GetDevice(6) @@ -1113,38 +1124,32 @@ function ExportScript.ProcessIkarusDCSConfigLowImportance(mainPanelDevice) end function ExportScript.ProcessDACConfigLowImportance(mainPanelDevice) ---[[ - export in low tick interval to hardware + --[[ + export in low tick interval to DAC Example from A-10C - Landing Gear - mainPanelDevice, basis panel - ExportScript.Tools.SendDataDAC("2004", mainPanelDevice:get_argument_value(659)) -- GEAR_N_SAFE - ExportScript.Tools.SendDataDAC("2005", mainPanelDevice:get_argument_value(660)) -- GEAR_L_SAFE - ExportScript.Tools.SendDataDAC("2006", mainPanelDevice:get_argument_value(661)) -- GEAR_R_SAFE - - Device test, Device 2 to 32 - is value "userdata", is only DLL intern functions - - local ltmp1 = 0 - for ltmp2 = 1, 50, 1 do - ltmp1 = GetDevice(ltmp2) - ExportScript.Tools.ExportScript.Tools.WriteToLog(ltmp2..': '..ExportScript.Tools.ExportScript.Tools.dump(ltmp1)) - ExportScript.Tools.ExportScript.Tools.WriteToLog(ltmp2..' (metatable): '..ExportScript.Tools.ExportScript.Tools.dump(getmetatable(ltmp1))) - end + Get Radio Frequencies + get data from device + local UHF_RADIO = GetDevice(54) + ExportScript.Tools.SendDataDAC("ExportID", "Format") + ExportScript.Tools.SendDataDAC("ExportID", "Format", HardwareConfigID) + ExportScript.Tools.SendDataDAC("2000", string.format("%7.3f", UHF_RADIO:get_frequency()/1000000)) + ExportScript.Tools.SendDataDAC("2000", ExportScript.Tools.RoundFreqeuncy((UHF_RADIO:get_frequency()/1000000))) -- ExportScript.Tools.RoundFreqeuncy(frequency (MHz|KHz), format ("7.3"), PrefixZeros (false), LeastValue (0.025)) ]] -- Radio comunication -- JADRO 1A local lJADRO_1A = GetDevice(37) if lJADRO_1A:is_on() then - ExportScript.Tools.SendDataDAC("2000", string.format("%7.4f", lJADRO_1A:get_frequency()/1000000)) + --ExportScript.Tools.SendDataDAC("2000", string.format("%7.4f", lJADRO_1A:get_frequency()/1000000)) + ExportScript.Tools.SendDataDAC("2000", ExportScript.Tools.RoundFreqeuncy(lJADRO_1A:get_frequency()/1000000, "7.4")) else ExportScript.Tools.SendDataDAC("2000", "-") end -- R_863 (center) local lR_863_c = GetDevice(38) - ExportScript.Tools.SendDataDAC("2001", string.format("%7.3f", lR_863_c:get_frequency()/1000000)) + --ExportScript.Tools.SendDataDAC("2001", string.format("%7.3f", lR_863_c:get_frequency()/1000000)) + ExportScript.Tools.SendDataDAC("2001", ExportScript.Tools.RoundFreqeuncy(lR_863_c:get_frequency()/1000000)) -- R_863 (left) Channel local lR_863_l = {[0.0]="1",[0.05]="2",[0.10]="3",[0.15]="4",[0.20]="5",[0.25]="6",[0.30]="7",[0.35]="8",[0.40]="9",[0.45]="10",[0.50]="11",[0.55]="12",[0.60]="13",[0.65]="14",[0.70]="15",[0.75]="16",[0.80]="17",[0.85]="18",[0.90]="19",[0.95]="20"} @@ -1153,7 +1158,8 @@ function ExportScript.ProcessDACConfigLowImportance(mainPanelDevice) -- R_863 (left) Frequency -- is the same frequency as R_863 (center), but not the frequency from R_863 (left) local lR_863_F = GetDevice(38) - ExportScript.Tools.SendDataDAC("2003", string.format("%7.3f", lR_863_F:get_frequency()/1000000)) + --ExportScript.Tools.SendDataDAC("2003", string.format("%7.3f", lR_863_F:get_frequency()/1000000)) + ExportScript.Tools.SendDataDAC("2003", ExportScript.Tools.RoundFreqeuncy(lR_863_F:get_frequency()/1000000)) -- R_828 Channel local lR_828 = {[0.0]="1",[0.101]="2",[0.199]="3",[0.302]="4",[0.400]="5",[0.502]="6",[0.601]="7",[0.697]="8",[0.801]="9",[0.898]="10"} @@ -1162,18 +1168,20 @@ function ExportScript.ProcessDACConfigLowImportance(mainPanelDevice) -- R_828 Frequency local lR_828_F = GetDevice(39) if lR_828_F:is_on() then - ExportScript.Tools.SendDataDAC("2005", string.format("%7.3f", lR_828_F:get_frequency()/1000000)) + --ExportScript.Tools.SendDataDAC("2005", string.format("%7.3f", lR_828_F:get_frequency()/1000000)) + ExportScript.Tools.SendDataDAC("2005", ExportScript.Tools.RoundFreqeuncy(lR_828_F:get_frequency()/1000000)) else ExportScript.Tools.SendDataDAC("2005", "-") end -- UV-26 - local lUV26 = list_indication(5) - lUV26 = lUV26:gsub("-----------------------------------------", "") - lUV26 = lUV26:gsub("txt_digits", "") - lUV26 = lUV26:gsub("%c", "") + local lUV26 = ExportScript.Tools.getListIndicatorValue(4) - ExportScript.Tools.SendDataDAC("2006", string.format("%s", lUV26)) + if lUV26 ~= nil and lUV26.txt_digits ~= nil then + ExportScript.Tools.SendDataDAC("2006", string.format("%s", lUV26.txt_digits)) + else + ExportScript.Tools.SendDataDAC("2006", "-") + end -- generic Radio display and frequency rotarys ------------------------------------------------- @@ -1293,14 +1301,24 @@ function ExportScript.ProcessDACConfigLowImportance(mainPanelDevice) ExportScript.genericRadio(nil, nil) --============================================================================================ - --[[ +--[[ ExportScript.Tools.WriteToLog('list_cockpit_params(): '..ExportScript.Tools.dump(list_cockpit_params())) + ExportScript.Tools.WriteToLog('CMSP: '..ExportScript.Tools.dump(list_indication(7))) + -- list_indication get tehe value of cockpit displays local ltmp1 = 0 - for ltmp2 = 1, 10, 1 do + for ltmp2 = 0, 20, 1 do ltmp1 = list_indication(ltmp2) ExportScript.Tools.WriteToLog(ltmp2..': '..ExportScript.Tools.dump(ltmp1)) - --ExportScript.Tools.WriteToLog(ltmp2..' (metatable): '..ExportScript.Tools.dump(getmetatable(ltmp1))) end - ]] +]] +--[[ + -- getmetatable get function name from devices + local ltmp1 = 0 + for ltmp2 = 1, 70, 1 do + ltmp1 = GetDevice(ltmp2) + ExportScript.Tools.WriteToLog(ltmp2..': '..ExportScript.Tools.dump(ltmp1)) + ExportScript.Tools.WriteToLog(ltmp2..' (metatable): '..ExportScript.Tools.dump(getmetatable(ltmp1))) + end +]] end diff --git a/Scripts/DCS-ExportScript/ExportsModules/MiG-15bis.lua b/Scripts/DCS-ExportScript/ExportsModules/MiG-15bis.lua index 160c2f1..fe47f7e 100644 --- a/Scripts/DCS-ExportScript/ExportsModules/MiG-15bis.lua +++ b/Scripts/DCS-ExportScript/ExportsModules/MiG-15bis.lua @@ -1,5 +1,5 @@ -- MiG-15Bis --- Version 1.0.1 +-- Version 1.0.2 ExportScript.FoundDCSModule = true @@ -288,7 +288,8 @@ function ExportScript.ProcessIkarusDCSConfigHighImportance(mainPanelDevice) get data from device local lUHFRadio = GetDevice(54) ExportScript.Tools.SendData("ExportID", "Format") - ExportScript.Tools.SendData(2000, string.format("%7.3f", lUHFRadio:get_frequency()/1000000)) <- special function for get frequency data + ExportScript.Tools.SendData(2000, string.format("%7.3f", lUHFRadio:get_frequency()/1000000)) -- <- special function for get frequency data + ExportScript.Tools.SendData(2000, ExportScript.Tools.RoundFreqeuncy((UHF_RADIO:get_frequency()/1000000))) -- ExportScript.Tools.RoundFreqeuncy(frequency (MHz|KHz), format ("7.3"), PrefixZeros (false), LeastValue (0.025)) ]] -- AGK_47B_sideslip negate --[8] = "%.4f", -- AGK_47B_sideslip {-1.0, 1.0} @@ -305,7 +306,7 @@ function ExportScript.ProcessDACConfigHighImportance(mainPanelDevice) ExportScript.Tools.SendDataDAC("ExportID", "Format") ExportScript.Tools.SendDataDAC("ExportID", "Format", HardwareConfigID) ExportScript.Tools.SendDataDAC("2000", string.format("%7.3f", UHF_RADIO:get_frequency()/1000000)) - ExportScript.Tools.SendDataDAC("2000", string.format("%7.3f", UHF_RADIO:get_frequency()/1000000), 2) -- export to Hardware '2' Config + ExportScript.Tools.SendDataDAC("2000", ExportScript.Tools.RoundFreqeuncy((UHF_RADIO:get_frequency()/1000000))) -- ExportScript.Tools.RoundFreqeuncy(frequency (MHz|KHz), format ("7.3"), PrefixZeros (false), LeastValue (0.025)) ]] end @@ -323,7 +324,8 @@ function ExportScript.ProcessIkarusDCSConfigLowImportance(mainPanelDevice) get data from device local lUHFRadio = GetDevice(54) ExportScript.Tools.SendData("ExportID", "Format") - ExportScript.Tools.SendData(2000, string.format("%7.3f", lUHFRadio:get_frequency()/1000000)) <- special function for get frequency data + ExportScript.Tools.SendData(2000, string.format("%7.3f", lUHFRadio:get_frequency()/1000000)) -- <- special function for get frequency data + ExportScript.Tools.SendData(2000, ExportScript.Tools.RoundFreqeuncy((UHF_RADIO:get_frequency()/1000000))) -- ExportScript.Tools.RoundFreqeuncy(frequency (MHz|KHz), format ("7.3"), PrefixZeros (false), LeastValue (0.025)) ]] -- Cockpit Light @@ -342,7 +344,7 @@ function ExportScript.ProcessDACConfigLowImportance(mainPanelDevice) ExportScript.Tools.SendDataDAC("ExportID", "Format") ExportScript.Tools.SendDataDAC("ExportID", "Format", HardwareConfigID) ExportScript.Tools.SendDataDAC("2000", string.format("%7.3f", UHF_RADIO:get_frequency()/1000000)) - ExportScript.Tools.SendDataDAC("2000", string.format("%7.3f", UHF_RADIO:get_frequency()/1000000), 2) -- export to Hardware '2' Config + ExportScript.Tools.SendDataDAC("2000", ExportScript.Tools.RoundFreqeuncy((UHF_RADIO:get_frequency()/1000000))) -- ExportScript.Tools.RoundFreqeuncy(frequency (MHz|KHz), format ("7.3"), PrefixZeros (false), LeastValue (0.025)) ]] --===================================================================================== @@ -350,16 +352,17 @@ function ExportScript.ProcessDACConfigLowImportance(mainPanelDevice) ExportScript.Tools.WriteToLog('list_cockpit_params(): '..ExportScript.Tools.dump(list_cockpit_params())) ExportScript.Tools.WriteToLog('CMSP: '..ExportScript.Tools.dump(list_indication(7))) + -- list_indication get tehe value of cockpit displays local ltmp1 = 0 - for ltmp2 = 0, 13, 1 do + for ltmp2 = 0, 20, 1 do ltmp1 = list_indication(ltmp2) ExportScript.Tools.WriteToLog(ltmp2..': '..ExportScript.Tools.dump(ltmp1)) - --ExportScript.Tools.WriteToLog(ltmp2..' (metatable): '..ExportScript.Tools.dump(getmetatable(ltmp1))) end ]] --[[ + -- getmetatable get function name from devices local ltmp1 = 0 - for ltmp2 = 1, 73, 1 do + for ltmp2 = 1, 70, 1 do ltmp1 = GetDevice(ltmp2) ExportScript.Tools.WriteToLog(ltmp2..': '..ExportScript.Tools.dump(ltmp1)) ExportScript.Tools.WriteToLog(ltmp2..' (metatable): '..ExportScript.Tools.dump(getmetatable(ltmp1))) @@ -370,6 +373,3 @@ end ----------------------------- -- Custom functions -- ----------------------------- - -function ExportScript.genericRadio(key, value, hardware) -end diff --git a/Scripts/DCS-ExportScript/ExportsModules/MiG-21Bis.lua b/Scripts/DCS-ExportScript/ExportsModules/MiG-21Bis.lua index 3f63889..617b50a 100644 --- a/Scripts/DCS-ExportScript/ExportsModules/MiG-21Bis.lua +++ b/Scripts/DCS-ExportScript/ExportsModules/MiG-21Bis.lua @@ -1,5 +1,5 @@ -- MiG-21Bis Export --- Version 1.0.1 +-- Version 1.0.2 ExportScript.FoundDCSModule = true @@ -592,7 +592,8 @@ function ExportScript.ProcessIkarusDCSConfigHighImportance(mainPanelDevice) get data from device local lUHFRadio = GetDevice(54) ExportScript.Tools.SendData("ExportID", "Format") - ExportScript.Tools.SendData(2000, string.format("%7.3f", lUHFRadio:get_frequency()/1000000)) <- special function for get frequency data + ExportScript.Tools.SendData(2000, string.format("%7.3f", lUHFRadio:get_frequency()/1000000)) -- <- special function for get frequency data + ExportScript.Tools.SendData(2000, ExportScript.Tools.RoundFreqeuncy((UHF_RADIO:get_frequency()/1000000))) -- ExportScript.Tools.RoundFreqeuncy(frequency (MHz|KHz), format ("7.3"), PrefixZeros (false), LeastValue (0.025)) ]] -- ADI/KPP correction @@ -610,7 +611,7 @@ function ExportScript.ProcessDACConfigHighImportance(mainPanelDevice) ExportScript.Tools.SendDataDAC("ExportID", "Format") ExportScript.Tools.SendDataDAC("ExportID", "Format", HardwareConfigID) ExportScript.Tools.SendDataDAC("2000", string.format("%7.3f", UHF_RADIO:get_frequency()/1000000)) - ExportScript.Tools.SendDataDAC("2000", string.format("%7.3f", UHF_RADIO:get_frequency()/1000000), 2) -- export to Hardware '2' Config + ExportScript.Tools.SendDataDAC("2000", ExportScript.Tools.RoundFreqeuncy((UHF_RADIO:get_frequency()/1000000))) -- ExportScript.Tools.RoundFreqeuncy(frequency (MHz|KHz), format ("7.3"), PrefixZeros (false), LeastValue (0.025)) ]] --[50] = "%.4f", -- ENGINE_RPM local lENGINE_RPM = mainPanelDevice:get_argument_value(50) @@ -667,7 +668,8 @@ function ExportScript.ProcessIkarusDCSConfigLowImportance(mainPanelDevice) get data from device local lUHFRadio = GetDevice(54) ExportScript.Tools.SendData("ExportID", "Format") - ExportScript.Tools.SendData(2000, string.format("%7.3f", lUHFRadio:get_frequency()/1000000)) <- special function for get frequency data + ExportScript.Tools.SendData(2000, string.format("%7.3f", lUHFRadio:get_frequency()/1000000)) -- <- special function for get frequency data + ExportScript.Tools.SendData(2000, ExportScript.Tools.RoundFreqeuncy((UHF_RADIO:get_frequency()/1000000))) -- ExportScript.Tools.RoundFreqeuncy(frequency (MHz|KHz), format ("7.3"), PrefixZeros (false), LeastValue (0.025)) ]] -- logic error with upper landing gear lights ExportScript.Tools.SendData(9, (mainPanelDevice:get_argument_value(9) == 0 and 1 or 0)) -- GEAR_NOSE_UP_LIGHT @@ -685,7 +687,7 @@ function ExportScript.ProcessDACConfigLowImportance(mainPanelDevice) ExportScript.Tools.SendDataDAC("ExportID", "Format") ExportScript.Tools.SendDataDAC("ExportID", "Format", HardwareConfigID) ExportScript.Tools.SendDataDAC("2000", string.format("%7.3f", UHF_RADIO:get_frequency()/1000000)) - ExportScript.Tools.SendDataDAC("2000", string.format("%7.3f", UHF_RADIO:get_frequency()/1000000), 2) -- export to Hardware '2' Config + ExportScript.Tools.SendDataDAC("2000", ExportScript.Tools.RoundFreqeuncy((UHF_RADIO:get_frequency()/1000000))) -- ExportScript.Tools.RoundFreqeuncy(frequency (MHz|KHz), format ("7.3"), PrefixZeros (false), LeastValue (0.025)) ]] --===================================================================================== @@ -693,16 +695,17 @@ function ExportScript.ProcessDACConfigLowImportance(mainPanelDevice) ExportScript.Tools.WriteToLog('list_cockpit_params(): '..ExportScript.Tools.dump(list_cockpit_params())) ExportScript.Tools.WriteToLog('CMSP: '..ExportScript.Tools.dump(list_indication(7))) + -- list_indication get tehe value of cockpit displays local ltmp1 = 0 - for ltmp2 = 0, 13, 1 do + for ltmp2 = 0, 20, 1 do ltmp1 = list_indication(ltmp2) ExportScript.Tools.WriteToLog(ltmp2..': '..ExportScript.Tools.dump(ltmp1)) - --ExportScript.Tools.WriteToLog(ltmp2..' (metatable): '..ExportScript.Tools.dump(getmetatable(ltmp1))) end ]] --[[ + -- getmetatable get function name from devices local ltmp1 = 0 - for ltmp2 = 1, 73, 1 do + for ltmp2 = 1, 70, 1 do ltmp1 = GetDevice(ltmp2) ExportScript.Tools.WriteToLog(ltmp2..': '..ExportScript.Tools.dump(ltmp1)) ExportScript.Tools.WriteToLog(ltmp2..' (metatable): '..ExportScript.Tools.dump(getmetatable(ltmp1))) @@ -713,6 +716,3 @@ end ----------------------------- -- Custom functions -- ----------------------------- - -function ExportScript.genericRadio(key, value, hardware) -end diff --git a/Scripts/DCS-ExportScript/ExportsModules/MiG-29A.lua b/Scripts/DCS-ExportScript/ExportsModules/MiG-29A.lua index bc3c71e..24dfb1e 100644 --- a/Scripts/DCS-ExportScript/ExportsModules/MiG-29A.lua +++ b/Scripts/DCS-ExportScript/ExportsModules/MiG-29A.lua @@ -1,5 +1,5 @@ -- MiG-29A Export --- Version 1.0.1 +-- Version 1.0.2 ExportScript.FoundFCModule = true diff --git a/Scripts/DCS-ExportScript/ExportsModules/MiG-29G.lua b/Scripts/DCS-ExportScript/ExportsModules/MiG-29G.lua index e5f7f50..0275bfb 100644 --- a/Scripts/DCS-ExportScript/ExportsModules/MiG-29G.lua +++ b/Scripts/DCS-ExportScript/ExportsModules/MiG-29G.lua @@ -1,5 +1,5 @@ -- MiG-29G Export --- Version 1.0.1 +-- Version 1.0.2 ExportScript.FoundFCModule = true diff --git a/Scripts/DCS-ExportScript/ExportsModules/MiG-29S.lua b/Scripts/DCS-ExportScript/ExportsModules/MiG-29S.lua index e7c7839..157b0aa 100644 --- a/Scripts/DCS-ExportScript/ExportsModules/MiG-29S.lua +++ b/Scripts/DCS-ExportScript/ExportsModules/MiG-29S.lua @@ -1,5 +1,5 @@ -- MiG-29S Export --- Version 1.0.1 +-- Version 1.0.2 ExportScript.FoundFCModule = true diff --git a/Scripts/DCS-ExportScript/ExportsModules/P-51D.lua b/Scripts/DCS-ExportScript/ExportsModules/P-51D.lua index 8137d73..7d83a0a 100644 --- a/Scripts/DCS-ExportScript/ExportsModules/P-51D.lua +++ b/Scripts/DCS-ExportScript/ExportsModules/P-51D.lua @@ -1,5 +1,5 @@ -- P-51D Export --- Version 1.0.1 +-- Version 1.0.2 ExportScript.FoundDCSModule = true @@ -252,7 +252,8 @@ function ExportScript.ProcessIkarusDCSConfigHighImportance(mainPanelDevice) get data from device local lUHFRadio = GetDevice(54) ExportScript.Tools.SendData("ExportID", "Format") - ExportScript.Tools.SendData(2000, string.format("%7.3f", lUHFRadio:get_frequency()/1000000)) <- special function for get frequency data + ExportScript.Tools.SendData(2000, string.format("%7.3f", lUHFRadio:get_frequency()/1000000)) -- <- special function for get frequency data + ExportScript.Tools.SendData(2000, ExportScript.Tools.RoundFreqeuncy((UHF_RADIO:get_frequency()/1000000))) -- ExportScript.Tools.RoundFreqeuncy(frequency (MHz|KHz), format ("7.3"), PrefixZeros (false), LeastValue (0.025)) ]] end @@ -266,7 +267,7 @@ function ExportScript.ProcessDACConfigHighImportance(mainPanelDevice) ExportScript.Tools.SendDataDAC("ExportID", "Format") ExportScript.Tools.SendDataDAC("ExportID", "Format", HardwareConfigID) ExportScript.Tools.SendDataDAC("2000", string.format("%7.3f", UHF_RADIO:get_frequency()/1000000)) - ExportScript.Tools.SendDataDAC("2000", string.format("%7.3f", UHF_RADIO:get_frequency()/1000000), 2) -- export to Hardware '2' Config + ExportScript.Tools.SendDataDAC("2000", ExportScript.Tools.RoundFreqeuncy((UHF_RADIO:get_frequency()/1000000))) -- ExportScript.Tools.RoundFreqeuncy(frequency (MHz|KHz), format ("7.3"), PrefixZeros (false), LeastValue (0.025)) ]] end @@ -284,7 +285,8 @@ function ExportScript.ProcessIkarusDCSConfigLowImportance(mainPanelDevice) get data from device local lUHFRadio = GetDevice(54) ExportScript.Tools.SendData("ExportID", "Format") - ExportScript.Tools.SendData(2000, string.format("%7.3f", lUHFRadio:get_frequency()/1000000)) <- special function for get frequency data + ExportScript.Tools.SendData(2000, string.format("%7.3f", lUHFRadio:get_frequency()/1000000)) -- <- special function for get frequency data + ExportScript.Tools.SendData(2000, ExportScript.Tools.RoundFreqeuncy((UHF_RADIO:get_frequency()/1000000))) -- ExportScript.Tools.RoundFreqeuncy(frequency (MHz|KHz), format ("7.3"), PrefixZeros (false), LeastValue (0.025)) ]] end @@ -298,7 +300,7 @@ function ExportScript.ProcessDACConfigLowImportance(mainPanelDevice) ExportScript.Tools.SendDataDAC("ExportID", "Format") ExportScript.Tools.SendDataDAC("ExportID", "Format", HardwareConfigID) ExportScript.Tools.SendDataDAC("2000", string.format("%7.3f", UHF_RADIO:get_frequency()/1000000)) - ExportScript.Tools.SendDataDAC("2000", string.format("%7.3f", UHF_RADIO:get_frequency()/1000000), 2) -- export to Hardware '2' Config + ExportScript.Tools.SendDataDAC("2000", ExportScript.Tools.RoundFreqeuncy((UHF_RADIO:get_frequency()/1000000))) -- ExportScript.Tools.RoundFreqeuncy(frequency (MHz|KHz), format ("7.3"), PrefixZeros (false), LeastValue (0.025)) ]] --===================================================================================== @@ -306,16 +308,17 @@ function ExportScript.ProcessDACConfigLowImportance(mainPanelDevice) ExportScript.Tools.WriteToLog('list_cockpit_params(): '..ExportScript.Tools.dump(list_cockpit_params())) ExportScript.Tools.WriteToLog('CMSP: '..ExportScript.Tools.dump(list_indication(7))) + -- list_indication get tehe value of cockpit displays local ltmp1 = 0 - for ltmp2 = 0, 13, 1 do + for ltmp2 = 0, 20, 1 do ltmp1 = list_indication(ltmp2) ExportScript.Tools.WriteToLog(ltmp2..': '..ExportScript.Tools.dump(ltmp1)) - --ExportScript.Tools.WriteToLog(ltmp2..' (metatable): '..ExportScript.Tools.dump(getmetatable(ltmp1))) end ]] --[[ + -- getmetatable get function name from devices local ltmp1 = 0 - for ltmp2 = 1, 73, 1 do + for ltmp2 = 1, 70, 1 do ltmp1 = GetDevice(ltmp2) ExportScript.Tools.WriteToLog(ltmp2..': '..ExportScript.Tools.dump(ltmp1)) ExportScript.Tools.WriteToLog(ltmp2..' (metatable): '..ExportScript.Tools.dump(getmetatable(ltmp1))) @@ -326,6 +329,3 @@ end ----------------------------- -- Custom functions -- ----------------------------- - -function ExportScript.genericRadio(key, value, hardware) -end diff --git a/Scripts/DCS-ExportScript/ExportsModules/SA342L.lua b/Scripts/DCS-ExportScript/ExportsModules/SA342L.lua index 8d101e3..a39b952 100644 --- a/Scripts/DCS-ExportScript/ExportsModules/SA342L.lua +++ b/Scripts/DCS-ExportScript/ExportsModules/SA342L.lua @@ -1,5 +1,5 @@ -- SA342L --- Version 1.0.1 +-- Version 1.0.2 ExportScript.FoundDCSModule = true @@ -395,7 +395,8 @@ function ExportScript.ProcessIkarusDCSConfigHighImportance(mainPanelDevice) get data from device local lUHFRadio = GetDevice(54) ExportScript.Tools.SendData("ExportID", "Format") - ExportScript.Tools.SendData(2000, string.format("%7.3f", lUHFRadio:get_frequency()/1000000)) <- special function for get frequency data + ExportScript.Tools.SendData(2000, string.format("%7.3f", lUHFRadio:get_frequency()/1000000)) -- <- special function for get frequency data + ExportScript.Tools.SendData(2000, ExportScript.Tools.RoundFreqeuncy((UHF_RADIO:get_frequency()/1000000))) -- ExportScript.Tools.RoundFreqeuncy(frequency (MHz|KHz), format ("7.3"), PrefixZeros (false), LeastValue (0.025)) ]] end @@ -409,7 +410,7 @@ function ExportScript.ProcessDACConfigHighImportance(mainPanelDevice) ExportScript.Tools.SendDataDAC("ExportID", "Format") ExportScript.Tools.SendDataDAC("ExportID", "Format", HardwareConfigID) ExportScript.Tools.SendDataDAC("2000", string.format("%7.3f", UHF_RADIO:get_frequency()/1000000)) - ExportScript.Tools.SendDataDAC("2000", string.format("%7.3f", UHF_RADIO:get_frequency()/1000000), 2) -- export to Hardware '2' Config + ExportScript.Tools.SendDataDAC("2000", ExportScript.Tools.RoundFreqeuncy((UHF_RADIO:get_frequency()/1000000))) -- ExportScript.Tools.RoundFreqeuncy(frequency (MHz|KHz), format ("7.3"), PrefixZeros (false), LeastValue (0.025)) ]] end @@ -427,7 +428,8 @@ function ExportScript.ProcessIkarusDCSConfigLowImportance(mainPanelDevice) get data from device local lUHFRadio = GetDevice(54) ExportScript.Tools.SendData("ExportID", "Format") - ExportScript.Tools.SendData(2000, string.format("%7.3f", lUHFRadio:get_frequency()/1000000)) <- special function for get frequency data + ExportScript.Tools.SendData(2000, string.format("%7.3f", lUHFRadio:get_frequency()/1000000)) -- <- special function for get frequency data + ExportScript.Tools.SendData(2000, ExportScript.Tools.RoundFreqeuncy((UHF_RADIO:get_frequency()/1000000))) -- ExportScript.Tools.RoundFreqeuncy(frequency (MHz|KHz), format ("7.3"), PrefixZeros (false), LeastValue (0.025)) ]] -- UHF Radio @@ -437,23 +439,20 @@ function ExportScript.ProcessIkarusDCSConfigLowImportance(mainPanelDevice) --ExportScript.Tools.SendData(2000, string.format("%.3f", lUHFRadio:get_frequency()/1000000)) --ExportScript.Tools.WriteToLog('UHF_Freq: '..ExportScript.Tools.dump(list_indication(5))) - local lUHFRadioFreq = list_indication(5) - lUHFRadioFreq = lUHFRadioFreq:gsub("-----------------------------------------", "") - lUHFRadioFreq = lUHFRadioFreq:gsub("Base", "") - lUHFRadioFreq = lUHFRadioFreq:gsub("total_field_of_view", "") - lUHFRadioFreq = lUHFRadioFreq:gsub("UHF_Freq", "") - lUHFRadioFreq = lUHFRadioFreq:gsub("%c", "") + local lUHFRadioFreq = ExportScript.Tools.getListIndicatorValue(5) - ExportScript.Tools.SendData(2000, lUHFRadioFreq) - --ExportScript.Tools.WriteToLog('UHF_Freq: '..ExportScript.Tools.dump(lUHFRadioFreq)) + if lUHFRadioFreq ~= nil and lUHFRadioFreq.UHF_Freq ~= nil then + ExportScript.Tools.SendData(2000, string.format("%s", lUHFRadioFreq.UHF_Freq)) + end else - ExportScript.Tools.SendData(2000, "") + ExportScript.Tools.SendData(2000, " ") end -- AM Radio --------------------------------------------------- local lAMRadio = GetDevice(5) - ExportScript.Tools.SendData(2001, string.format("%.3f", lAMRadio:get_frequency()/1000000)) + --ExportScript.Tools.SendData(2001, string.format("%.3f", lAMRadio:get_frequency()/1000000)) + ExportScript.Tools.SendData(2001, ExportScript.Tools.RoundFreqeuncy(lAMRadio:get_frequency()/1000000)) -- FM Radio PR4G --------------------------------------------------- @@ -462,17 +461,13 @@ function ExportScript.ProcessIkarusDCSConfigLowImportance(mainPanelDevice) --ExportScript.Tools.SendData(2002, string.format("%.3f", lFMRadio:get_frequency()/1000000)) --ExportScript.Tools.WriteToLog('FM_Freq: '..ExportScript.Tools.dump(list_indication(4))) - local lFMRadioFreq = list_indication(4) - lFMRadioFreq = lFMRadioFreq:gsub("-----------------------------------------", "") - lFMRadioFreq = lFMRadioFreq:gsub("Base", "") - lFMRadioFreq = lFMRadioFreq:gsub("total_field_of_view", "") - lFMRadioFreq = lFMRadioFreq:gsub("FM_Freq", "") - lFMRadioFreq = lFMRadioFreq:gsub("%c", "") + local lFMRadioFreq = ExportScript.Tools.getListIndicatorValue(4) - ExportScript.Tools.SendData(2002, lFMRadioFreq) - --ExportScript.Tools.WriteToLog('FM_Freq: '..ExportScript.Tools.dump(lFMRadioFreq)) + if lFMRadioFreq ~= nil and lFMRadioFreq.FM_Freq ~= nil then + ExportScript.Tools.SendData(2002, string.format("%s", lFMRadioFreq.FM_Freq)) + end else - ExportScript.Tools.SendData(2002, "") + ExportScript.Tools.SendData(2002, " ") end -- [273] = "%.3f", -- FM RADIO - Chanel Selector {0.0,0.143,0.286,0.429,0.572,0.715,0.858,1.0} -- laut clickabledata.lua @@ -483,26 +478,19 @@ function ExportScript.ProcessIkarusDCSConfigLowImportance(mainPanelDevice) -- Weapon Panel --------------------------------------------------- if mainPanelDevice:get_argument_value(354) >= 0.0 then -- Weapon panel is On - local lWeaponPanelDisplays = list_indication(8) - lWeaponPanelDisplays = lWeaponPanelDisplays:gsub("-----------------------------------------", "") - lWeaponPanelDisplays = lWeaponPanelDisplays:gsub("Base", "") - lWeaponPanelDisplays = lWeaponPanelDisplays:gsub("total_field_of_view", "") - lWeaponPanelDisplays = lWeaponPanelDisplays:gsub("LEFT_screen", "LEFT_screen:") - lWeaponPanelDisplays = lWeaponPanelDisplays:gsub("RIGHT_screen", "RIGHT_screen:") - lWeaponPanelDisplays = lWeaponPanelDisplays:gsub("%c", "") + local lWeaponPanelDisplays = ExportScript.Tools.getListIndicatorValue(8) - local lLeftDisplay = string.match(lWeaponPanelDisplays, '%d+', 0) - local lRightDisplay = string.match(lWeaponPanelDisplays, '%d+', string.find(lWeaponPanelDisplays, "RIGHT_screen")) - - if lLeftDisplay ~= nil then - ExportScript.Tools.SendData(2004, lLeftDisplay) - end - if lRightDisplay ~= nil then - ExportScript.Tools.SendData(2005, lRightDisplay) + if lWeaponPanelDisplays ~= nil then + if lWeaponPanelDisplays.LEFT_screen ~= nil then + ExportScript.Tools.SendData(2004, string.format("%s", lWeaponPanelDisplays.LEFT_screen)) + end + if lWeaponPanelDisplays.RIGHT_screen ~= nil then + ExportScript.Tools.SendData(2005, string.format("%s", lWeaponPanelDisplays.RIGHT_screen)) + end end else - ExportScript.Tools.SendData(2004, "") - ExportScript.Tools.SendData(2005, "") + ExportScript.Tools.SendData(2004, " ") + ExportScript.Tools.SendData(2005, " ") end end @@ -516,7 +504,7 @@ function ExportScript.ProcessDACConfigLowImportance(mainPanelDevice) ExportScript.Tools.SendDataDAC("ExportID", "Format") ExportScript.Tools.SendDataDAC("ExportID", "Format", HardwareConfigID) ExportScript.Tools.SendDataDAC("2000", string.format("%7.3f", UHF_RADIO:get_frequency()/1000000)) - ExportScript.Tools.SendDataDAC("2000", string.format("%7.3f", UHF_RADIO:get_frequency()/1000000), 2) -- export to Hardware '2' Config + ExportScript.Tools.SendDataDAC("2000", ExportScript.Tools.RoundFreqeuncy((UHF_RADIO:get_frequency()/1000000))) -- ExportScript.Tools.RoundFreqeuncy(frequency (MHz|KHz), format ("7.3"), PrefixZeros (false), LeastValue (0.025)) ]] -- UHF Radio @@ -526,15 +514,11 @@ function ExportScript.ProcessDACConfigLowImportance(mainPanelDevice) --ExportScript.Tools.SendDataDAC("2000", string.format("%.3f", lUHFRadio:get_frequency()/1000000)) --ExportScript.Tools.WriteToLog('UHF_Freq: '..ExportScript.Tools.dump(list_indication(5))) - local lUHFRadioFreq = list_indication(5) - lUHFRadioFreq = lUHFRadioFreq:gsub("-----------------------------------------", "") - lUHFRadioFreq = lUHFRadioFreq:gsub("Base", "") - lUHFRadioFreq = lUHFRadioFreq:gsub("total_field_of_view", "") - lUHFRadioFreq = lUHFRadioFreq:gsub("UHF_Freq", "") - lUHFRadioFreq = lUHFRadioFreq:gsub("%c", "") + local lUHFRadioFreq = ExportScript.Tools.getListIndicatorValue(5) - ExportScript.Tools.SendDataDAC("2000", lUHFRadioFreq) - --ExportScript.Tools.WriteToLog('UHF_Freq: '..ExportScript.Tools.dump(lUHFRadioFreq)) + if lUHFRadioFreq ~= nil and lUHFRadioFreq.UHF_Freq ~= nil then + ExportScript.Tools.SendDataDAC("2000", string.format("%s", lUHFRadioFreq.UHF_Freq)) + end else ExportScript.Tools.SendDataDAC("2000", "-") end @@ -542,7 +526,8 @@ function ExportScript.ProcessDACConfigLowImportance(mainPanelDevice) -- AM Radio --------------------------------------------------- local lAMRadio = GetDevice(5) - ExportScript.Tools.SendDataDAC("2001", string.format("%.3f", lAMRadio:get_frequency()/1000000)) + --ExportScript.Tools.SendDataDAC("2001", string.format("%.3f", lAMRadio:get_frequency()/1000000)) + ExportScript.Tools.SendDataDAC("2001", ExportScript.Tools.RoundFreqeuncy(lAMRadio:get_frequency()/1000000)) -- FM Radio PR4G --------------------------------------------------- @@ -551,15 +536,11 @@ function ExportScript.ProcessDACConfigLowImportance(mainPanelDevice) --ExportScript.Tools.SendDataDAC(2002, string.format("%.3f", lFMRadio:get_frequency()/1000000)) --ExportScript.Tools.WriteToLog('FM_Freq: '..ExportScript.Tools.dump(list_indication(4))) - local lFMRadioFreq = list_indication(4) - lFMRadioFreq = lFMRadioFreq:gsub("-----------------------------------------", "") - lFMRadioFreq = lFMRadioFreq:gsub("Base", "") - lFMRadioFreq = lFMRadioFreq:gsub("total_field_of_view", "") - lFMRadioFreq = lFMRadioFreq:gsub("FM_Freq", "") - lFMRadioFreq = lFMRadioFreq:gsub("%c", "") + local lFMRadioFreq = ExportScript.Tools.getListIndicatorValue(4) - ExportScript.Tools.SendDataDAC("2002", lFMRadioFreq) - --ExportScript.Tools.WriteToLog('FM_Freq: '..ExportScript.Tools.dump(lFMRadioFreq)) + if lFMRadioFreq ~= nil and lFMRadioFreq.FM_Freq ~= nil then + ExportScript.Tools.SendDataDAC("2002", string.format("%s", lFMRadioFreq.FM_Freq)) + end else ExportScript.Tools.SendDataDAC("2002", "-") end @@ -572,22 +553,15 @@ function ExportScript.ProcessDACConfigLowImportance(mainPanelDevice) -- Weapon Panel --------------------------------------------------- if mainPanelDevice:get_argument_value(354) >= 0.0 then -- Weapon panel is On - local lWeaponPanelDisplays = list_indication(8) - lWeaponPanelDisplays = lWeaponPanelDisplays:gsub("-----------------------------------------", "") - lWeaponPanelDisplays = lWeaponPanelDisplays:gsub("Base", "") - lWeaponPanelDisplays = lWeaponPanelDisplays:gsub("total_field_of_view", "") - lWeaponPanelDisplays = lWeaponPanelDisplays:gsub("LEFT_screen", "LEFT_screen:") - lWeaponPanelDisplays = lWeaponPanelDisplays:gsub("RIGHT_screen", "RIGHT_screen:") - lWeaponPanelDisplays = lWeaponPanelDisplays:gsub("%c", "") + local lWeaponPanelDisplays = ExportScript.Tools.getListIndicatorValue(8) - local lLeftDisplay = string.match(lWeaponPanelDisplays, '%d+', 0) - local lRightDisplay = string.match(lWeaponPanelDisplays, '%d+', string.find(lWeaponPanelDisplays, "RIGHT_screen")) - - if lLeftDisplay ~= nil then - ExportScript.Tools.SendDataDAC("2004", lLeftDisplay) - end - if lRightDisplay ~= nil then - ExportScript.Tools.SendDataDAC("2005", lRightDisplay) + if lWeaponPanelDisplays ~= nil then + if lWeaponPanelDisplays.LEFT_screen ~= nil then + ExportScript.Tools.SendDataDAC("2004", string.format("%s", lWeaponPanelDisplays.LEFT_screen)) + end + if lWeaponPanelDisplays.RIGHT_screen ~= nil then + ExportScript.Tools.SendDataDAC("2005", string.format("%s", lWeaponPanelDisplays.RIGHT_screen)) + end end else ExportScript.Tools.SendDataDAC("2004", "-") @@ -708,27 +682,26 @@ function ExportScript.ProcessDACConfigLowImportance(mainPanelDevice) ExportScript.genericRadio(nil, nil) --===================================================================================== - - --ExportScript.Tools.WriteToLog('Value of ID...: '..ExportScript.Tools.dump(mainPanelDevice:get_argument_value(272))) - --ExportScript.Tools.WriteToLog('list_cockpit_params(): '..ExportScript.Tools.dump(list_cockpit_params())) - --ExportScript.Tools.WriteToLog('FM_Freq: '..ExportScript.Tools.dump(list_indication(4))) - --ExportScript.Tools.WriteToLog('UHF_Freq: '..ExportScript.Tools.dump(list_indication(5))) ---[[ + --[[ + ExportScript.Tools.WriteToLog('list_cockpit_params(): '..ExportScript.Tools.dump(list_cockpit_params())) + ExportScript.Tools.WriteToLog('CMSP: '..ExportScript.Tools.dump(list_indication(7))) + + -- list_indication get tehe value of cockpit displays local ltmp1 = 0 - for ltmp2 = 0, 10, 1 do + for ltmp2 = 0, 20, 1 do ltmp1 = list_indication(ltmp2) ExportScript.Tools.WriteToLog(ltmp2..': '..ExportScript.Tools.dump(ltmp1)) - --ExportScript.Tools.WriteToLog(ltmp2..' (metatable): '..ExportScript.Tools.dump(getmetatable(ltmp1))) end - + ]] +--[[ + -- getmetatable get function name from devices local ltmp1 = 0 - for ltmp2 = 1, 35, 1 do + for ltmp2 = 1, 70, 1 do ltmp1 = GetDevice(ltmp2) ExportScript.Tools.WriteToLog(ltmp2..': '..ExportScript.Tools.dump(ltmp1)) ExportScript.Tools.WriteToLog(ltmp2..' (metatable): '..ExportScript.Tools.dump(getmetatable(ltmp1))) end ]] - --ExportScript.Tools.WriteToLog('NADIR: '..ExportScript.Tools.dump(list_indication(3))) end ----------------------------- diff --git a/Scripts/DCS-ExportScript/ExportsModules/SA342M.lua b/Scripts/DCS-ExportScript/ExportsModules/SA342M.lua index adefa2d..6e4a9ea 100644 --- a/Scripts/DCS-ExportScript/ExportsModules/SA342M.lua +++ b/Scripts/DCS-ExportScript/ExportsModules/SA342M.lua @@ -1,5 +1,5 @@ -- SA342M --- Version 1.0.1 +-- Version 1.0.2 ExportScript.FoundDCSModule = true @@ -412,7 +412,8 @@ function ExportScript.ProcessIkarusDCSConfigHighImportance(mainPanelDevice) get data from device local lUHFRadio = GetDevice(54) ExportScript.Tools.SendData("ExportID", "Format") - ExportScript.Tools.SendData(2000, string.format("%7.3f", lUHFRadio:get_frequency()/1000000)) <- special function for get frequency data + ExportScript.Tools.SendData(2000, string.format("%7.3f", lUHFRadio:get_frequency()/1000000)) -- <- special function for get frequency data + ExportScript.Tools.SendData(2000, ExportScript.Tools.RoundFreqeuncy((UHF_RADIO:get_frequency()/1000000))) -- ExportScript.Tools.RoundFreqeuncy(frequency (MHz|KHz), format ("7.3"), PrefixZeros (false), LeastValue (0.025)) ]] end @@ -426,7 +427,7 @@ function ExportScript.ProcessDACConfigHighImportance(mainPanelDevice) ExportScript.Tools.SendDataDAC("ExportID", "Format") ExportScript.Tools.SendDataDAC("ExportID", "Format", HardwareConfigID) ExportScript.Tools.SendDataDAC("2000", string.format("%7.3f", UHF_RADIO:get_frequency()/1000000)) - ExportScript.Tools.SendDataDAC("2000", string.format("%7.3f", UHF_RADIO:get_frequency()/1000000), 2) -- export to Hardware '2' Config + ExportScript.Tools.SendDataDAC("2000", ExportScript.Tools.RoundFreqeuncy((UHF_RADIO:get_frequency()/1000000))) -- ExportScript.Tools.RoundFreqeuncy(frequency (MHz|KHz), format ("7.3"), PrefixZeros (false), LeastValue (0.025)) ]] end @@ -444,7 +445,8 @@ function ExportScript.ProcessIkarusDCSConfigLowImportance(mainPanelDevice) get data from device local lUHFRadio = GetDevice(54) ExportScript.Tools.SendData("ExportID", "Format") - ExportScript.Tools.SendData(2000, string.format("%7.3f", lUHFRadio:get_frequency()/1000000)) <- special function for get frequency data + ExportScript.Tools.SendData(2000, string.format("%7.3f", lUHFRadio:get_frequency()/1000000)) -- <- special function for get frequency data + ExportScript.Tools.SendData(2000, ExportScript.Tools.RoundFreqeuncy((UHF_RADIO:get_frequency()/1000000))) -- ExportScript.Tools.RoundFreqeuncy(frequency (MHz|KHz), format ("7.3"), PrefixZeros (false), LeastValue (0.025)) ]] -- UHF Radio @@ -454,22 +456,21 @@ function ExportScript.ProcessIkarusDCSConfigLowImportance(mainPanelDevice) --ExportScript.Tools.SendData(2000, string.format("%.3f", lUHFRadio:get_frequency()/1000000)) --ExportScript.Tools.WriteToLog('UHF_Freq: '..ExportScript.Tools.dump(list_indication(5))) - local lUHFRadioFreq = list_indication(5) - lUHFRadioFreq = lUHFRadioFreq:gsub("-----------------------------------------", "") - lUHFRadioFreq = lUHFRadioFreq:gsub("Base", "") - lUHFRadioFreq = lUHFRadioFreq:gsub("total_field_of_view", "") - lUHFRadioFreq = lUHFRadioFreq:gsub("UHF_Freq", "") - lUHFRadioFreq = lUHFRadioFreq:gsub("%c", "") + local lUHFRadioFreq = ExportScript.Tools.getListIndicatorValue(5) - ExportScript.Tools.SendData(2000, lUHFRadioFreq) - --ExportScript.Tools.WriteToLog('UHF_Freq: '..ExportScript.Tools.dump(lUHFRadioFreq)) + if lUHFRadioFreq ~= nil and lUHFRadioFreq.UHF_Freq ~= nil then + ExportScript.Tools.SendData(2000, string.format("%s", lUHFRadioFreq.UHF_Freq)) + end + else + ExportScript.Tools.SendData(2000, " ") end -- AM Radio --------------------------------------------------- local lAMRadio = GetDevice(5) if lAMRadio:is_on() then - ExportScript.Tools.SendData(2001, string.format("%.3f", lAMRadio:get_frequency()/1000000)) + --ExportScript.Tools.SendData(2001, string.format("%.3f", lAMRadio:get_frequency()/1000000)) + ExportScript.Tools.SendData(2001, ExportScript.Tools.RoundFreqeuncy(lAMRadio:get_frequency()/1000000)) end -- FM Radio PR4G @@ -479,15 +480,13 @@ function ExportScript.ProcessIkarusDCSConfigLowImportance(mainPanelDevice) --ExportScript.Tools.SendData(2002, string.format("%.3f", lFMRadio:get_frequency()/1000000)) --ExportScript.Tools.WriteToLog('FM_Freq: '..ExportScript.Tools.dump(list_indication(4))) - local lFMRadioFreq = list_indication(4) - lFMRadioFreq = lFMRadioFreq:gsub("-----------------------------------------", "") - lFMRadioFreq = lFMRadioFreq:gsub("Base", "") - lFMRadioFreq = lFMRadioFreq:gsub("total_field_of_view", "") - lFMRadioFreq = lFMRadioFreq:gsub("FM_Freq", "") - lFMRadioFreq = lFMRadioFreq:gsub("%c", "") + local lFMRadioFreq = ExportScript.Tools.getListIndicatorValue(4) - ExportScript.Tools.SendData(2002, lFMRadioFreq) - --ExportScript.Tools.WriteToLog('FM_Freq: '..ExportScript.Tools.dump(lFMRadioFreq)) + if lFMRadioFreq ~= nil and lFMRadioFreq.FM_Freq ~= nil then + ExportScript.Tools.SendData(2002, string.format("%s", lFMRadioFreq.FM_Freq)) + end + else + ExportScript.Tools.SendData(2002, " ") end -- [273] = "%.3f", -- FM RADIO - Chanel Selector {0.0,0.143,0.286,0.429,0.572,0.715,0.858,1.0} -- laut clickabledata.lua @@ -498,22 +497,15 @@ function ExportScript.ProcessIkarusDCSConfigLowImportance(mainPanelDevice) -- Weapon Panel --------------------------------------------------- if mainPanelDevice:get_argument_value(354) >= 0.0 then -- Weapon panel is On - local lWeaponPanelDisplays = list_indication(8) - lWeaponPanelDisplays = lWeaponPanelDisplays:gsub("-----------------------------------------", "") - lWeaponPanelDisplays = lWeaponPanelDisplays:gsub("Base", "") - lWeaponPanelDisplays = lWeaponPanelDisplays:gsub("total_field_of_view", "") - lWeaponPanelDisplays = lWeaponPanelDisplays:gsub("LEFT_screen", "LEFT_screen:") - lWeaponPanelDisplays = lWeaponPanelDisplays:gsub("RIGHT_screen", "RIGHT_screen:") - lWeaponPanelDisplays = lWeaponPanelDisplays:gsub("%c", "") + local lWeaponPanelDisplays = ExportScript.Tools.getListIndicatorValue(8) - local lLeftDisplay = string.match(lWeaponPanelDisplays, '%d+', 0) - local lRightDisplay = string.match(lWeaponPanelDisplays, '%d+', string.find(lWeaponPanelDisplays, "RIGHT_screen")) - - if lLeftDisplay ~= nil then - ExportScript.Tools.SendData(2004, lLeftDisplay) - end - if lRightDisplay ~= nil then - ExportScript.Tools.SendData(2005, lRightDisplay) + if lWeaponPanelDisplays ~= nil then + if lWeaponPanelDisplays.LEFT_screen ~= nil then + ExportScript.Tools.SendData(2004, string.format("%s", lWeaponPanelDisplays.LEFT_screen)) + end + if lWeaponPanelDisplays.RIGHT_screen ~= nil then + ExportScript.Tools.SendData(2005, string.format("%s", lWeaponPanelDisplays.RIGHT_screen)) + end end else ExportScript.Tools.SendData(2004, "-") @@ -531,7 +523,7 @@ function ExportScript.ProcessDACConfigLowImportance(mainPanelDevice) ExportScript.Tools.SendDataDAC("ExportID", "Format") ExportScript.Tools.SendDataDAC("ExportID", "Format", HardwareConfigID) ExportScript.Tools.SendDataDAC("2000", string.format("%7.3f", UHF_RADIO:get_frequency()/1000000)) - ExportScript.Tools.SendDataDAC("2000", string.format("%7.3f", UHF_RADIO:get_frequency()/1000000), 2) -- export to Hardware '2' Config + ExportScript.Tools.SendDataDAC("2000", ExportScript.Tools.RoundFreqeuncy((UHF_RADIO:get_frequency()/1000000))) -- ExportScript.Tools.RoundFreqeuncy(frequency (MHz|KHz), format ("7.3"), PrefixZeros (false), LeastValue (0.025)) ]] -- UHF Radio @@ -541,22 +533,21 @@ function ExportScript.ProcessDACConfigLowImportance(mainPanelDevice) --ExportScript.Tools.SendDataDAC("2000", string.format("%.3f", lUHFRadio:get_frequency()/1000000)) --ExportScript.Tools.WriteToLog('UHF_Freq: '..ExportScript.Tools.dump(list_indication(5))) - local lUHFRadioFreq = list_indication(5) - lUHFRadioFreq = lUHFRadioFreq:gsub("-----------------------------------------", "") - lUHFRadioFreq = lUHFRadioFreq:gsub("Base", "") - lUHFRadioFreq = lUHFRadioFreq:gsub("total_field_of_view", "") - lUHFRadioFreq = lUHFRadioFreq:gsub("UHF_Freq", "") - lUHFRadioFreq = lUHFRadioFreq:gsub("%c", "") + local lUHFRadioFreq = ExportScript.Tools.getListIndicatorValue(5) - ExportScript.Tools.SendDataDAC("2000", lUHFRadioFreq) - --ExportScript.Tools.WriteToLog('UHF_Freq: '..ExportScript.Tools.dump(lUHFRadioFreq)) + if lUHFRadioFreq ~= nil and lUHFRadioFreq.UHF_Freq ~= nil then + ExportScript.Tools.SendDataDAC("2000", string.format("%s", lUHFRadioFreq.UHF_Freq)) + end + else + ExportScript.Tools.SendDataDAC("2000", "-") end -- AM Radio --------------------------------------------------- local lAMRadio = GetDevice(5) if lAMRadio:is_on() then - ExportScript.Tools.SendDataDAC("2001", string.format("%.3f", lAMRadio:get_frequency()/1000000)) + --ExportScript.Tools.SendDataDAC("2001", string.format("%.3f", lAMRadio:get_frequency()/1000000)) + ExportScript.Tools.SendDataDAC("2001", ExportScript.Tools.RoundFreqeuncy(lAMRadio:get_frequency()/1000000)) end -- FM Radio PR4G @@ -566,15 +557,13 @@ function ExportScript.ProcessDACConfigLowImportance(mainPanelDevice) --ExportScript.Tools.SendDataDAC(2002, string.format("%.3f", lFMRadio:get_frequency()/1000000)) --ExportScript.Tools.WriteToLog('FM_Freq: '..ExportScript.Tools.dump(list_indication(4))) - local lFMRadioFreq = list_indication(4) - lFMRadioFreq = lFMRadioFreq:gsub("-----------------------------------------", "") - lFMRadioFreq = lFMRadioFreq:gsub("Base", "") - lFMRadioFreq = lFMRadioFreq:gsub("total_field_of_view", "") - lFMRadioFreq = lFMRadioFreq:gsub("FM_Freq", "") - lFMRadioFreq = lFMRadioFreq:gsub("%c", "") + local lFMRadioFreq = ExportScript.Tools.getListIndicatorValue(4) - ExportScript.Tools.SendDataDAC("2002", lFMRadioFreq) - --ExportScript.Tools.WriteToLog('FM_Freq: '..ExportScript.Tools.dump(lFMRadioFreq)) + if lFMRadioFreq ~= nil and lFMRadioFreq.FM_Freq ~= nil then + ExportScript.Tools.SendDataDAC("2002", string.format("%s", lFMRadioFreq.FM_Freq)) + end + else + ExportScript.Tools.SendDataDAC("2002", "-") end -- [273] = "%.3f", -- FM RADIO - Chanel Selector {0.0,0.143,0.286,0.429,0.572,0.715,0.858,1.0} -- laut clickabledata.lua @@ -585,22 +574,15 @@ function ExportScript.ProcessDACConfigLowImportance(mainPanelDevice) -- Weapon Panel --------------------------------------------------- if mainPanelDevice:get_argument_value(354) >= 0.0 then -- Weapon panel is On - local lWeaponPanelDisplays = list_indication(8) - lWeaponPanelDisplays = lWeaponPanelDisplays:gsub("-----------------------------------------", "") - lWeaponPanelDisplays = lWeaponPanelDisplays:gsub("Base", "") - lWeaponPanelDisplays = lWeaponPanelDisplays:gsub("total_field_of_view", "") - lWeaponPanelDisplays = lWeaponPanelDisplays:gsub("LEFT_screen", "LEFT_screen:") - lWeaponPanelDisplays = lWeaponPanelDisplays:gsub("RIGHT_screen", "RIGHT_screen:") - lWeaponPanelDisplays = lWeaponPanelDisplays:gsub("%c", "") + local lWeaponPanelDisplays = ExportScript.Tools.getListIndicatorValue(8) - local lLeftDisplay = string.match(lWeaponPanelDisplays, '%d+', 0) - local lRightDisplay = string.match(lWeaponPanelDisplays, '%d+', string.find(lWeaponPanelDisplays, "RIGHT_screen")) - - if lLeftDisplay ~= nil then - ExportScript.Tools.SendDataDAC("2004", lLeftDisplay) - end - if lRightDisplay ~= nil then - ExportScript.Tools.SendDataDAC("2005", lRightDisplay) + if lWeaponPanelDisplays ~= nil then + if lWeaponPanelDisplays.LEFT_screen ~= nil then + ExportScript.Tools.SendDataDAC("2004", string.format("%s", lWeaponPanelDisplays.LEFT_screen)) + end + if lWeaponPanelDisplays.RIGHT_screen ~= nil then + ExportScript.Tools.SendDataDAC("2005", string.format("%s", lWeaponPanelDisplays.RIGHT_screen)) + end end else ExportScript.Tools.SendDataDAC("2004", "-") @@ -721,20 +703,21 @@ function ExportScript.ProcessDACConfigLowImportance(mainPanelDevice) ExportScript.genericRadio(nil, nil) --===================================================================================== - - --ExportScript.Tools.WriteToLog('list_cockpit_params(): '..ExportScript.Tools.dump(list_cockpit_params())) - --ExportScript.Tools.WriteToLog('FM_Freq: '..ExportScript.Tools.dump(list_indication(4))) - --ExportScript.Tools.WriteToLog('UHF_Freq: '..ExportScript.Tools.dump(list_indication(5))) --[[ + ExportScript.Tools.WriteToLog('list_cockpit_params(): '..ExportScript.Tools.dump(list_cockpit_params())) + ExportScript.Tools.WriteToLog('CMSP: '..ExportScript.Tools.dump(list_indication(7))) + + -- list_indication get tehe value of cockpit displays local ltmp1 = 0 - for ltmp2 = 0, 10, 1 do + for ltmp2 = 0, 20, 1 do ltmp1 = list_indication(ltmp2) ExportScript.Tools.WriteToLog(ltmp2..': '..ExportScript.Tools.dump(ltmp1)) - --ExportScript.Tools.WriteToLog(ltmp2..' (metatable): '..ExportScript.Tools.dump(getmetatable(ltmp1))) end - + ]] +--[[ + -- getmetatable get function name from devices local ltmp1 = 0 - for ltmp2 = 1, 35, 1 do + for ltmp2 = 1, 70, 1 do ltmp1 = GetDevice(ltmp2) ExportScript.Tools.WriteToLog(ltmp2..': '..ExportScript.Tools.dump(ltmp1)) ExportScript.Tools.WriteToLog(ltmp2..' (metatable): '..ExportScript.Tools.dump(getmetatable(ltmp1))) diff --git a/Scripts/DCS-ExportScript/ExportsModules/SA342Mistral.lua b/Scripts/DCS-ExportScript/ExportsModules/SA342Mistral.lua index 3dd348e..e5a2eaf 100644 --- a/Scripts/DCS-ExportScript/ExportsModules/SA342Mistral.lua +++ b/Scripts/DCS-ExportScript/ExportsModules/SA342Mistral.lua @@ -1,5 +1,5 @@ -- SA342Mistral --- Version 1.0.1 +-- Version 1.0.2 ExportScript.FoundDCSModule = true @@ -400,7 +400,8 @@ function ExportScript.ProcessIkarusDCSConfigHighImportance(mainPanelDevice) get data from device local lUHFRadio = GetDevice(54) ExportScript.Tools.SendData("ExportID", "Format") - ExportScript.Tools.SendData(2000, string.format("%7.3f", lUHFRadio:get_frequency()/1000000)) <- special function for get frequency data + ExportScript.Tools.SendData(2000, string.format("%7.3f", lUHFRadio:get_frequency()/1000000)) -- <- special function for get frequency data + ExportScript.Tools.SendData(2000, ExportScript.Tools.RoundFreqeuncy((UHF_RADIO:get_frequency()/1000000))) -- ExportScript.Tools.RoundFreqeuncy(frequency (MHz|KHz), format ("7.3"), PrefixZeros (false), LeastValue (0.025)) ]] end @@ -414,7 +415,7 @@ function ExportScript.ProcessDACConfigHighImportance(mainPanelDevice) ExportScript.Tools.SendDataDAC("ExportID", "Format") ExportScript.Tools.SendDataDAC("ExportID", "Format", HardwareConfigID) ExportScript.Tools.SendDataDAC("2000", string.format("%7.3f", UHF_RADIO:get_frequency()/1000000)) - ExportScript.Tools.SendDataDAC("2000", string.format("%7.3f", UHF_RADIO:get_frequency()/1000000), 2) -- export to Hardware '2' Config + ExportScript.Tools.SendDataDAC("2000", ExportScript.Tools.RoundFreqeuncy((UHF_RADIO:get_frequency()/1000000))) -- ExportScript.Tools.RoundFreqeuncy(frequency (MHz|KHz), format ("7.3"), PrefixZeros (false), LeastValue (0.025)) ]] end @@ -432,7 +433,8 @@ function ExportScript.ProcessIkarusDCSConfigLowImportance(mainPanelDevice) get data from device local lUHFRadio = GetDevice(54) ExportScript.Tools.SendData("ExportID", "Format") - ExportScript.Tools.SendData(2000, string.format("%7.3f", lUHFRadio:get_frequency()/1000000)) <- special function for get frequency data + ExportScript.Tools.SendData(2000, string.format("%7.3f", lUHFRadio:get_frequency()/1000000)) -- <- special function for get frequency data + ExportScript.Tools.SendData(2000, ExportScript.Tools.RoundFreqeuncy((UHF_RADIO:get_frequency()/1000000))) -- ExportScript.Tools.RoundFreqeuncy(frequency (MHz|KHz), format ("7.3"), PrefixZeros (false), LeastValue (0.025)) ]] -- UHF Radio @@ -442,22 +444,21 @@ function ExportScript.ProcessIkarusDCSConfigLowImportance(mainPanelDevice) --ExportScript.Tools.SendData(2000, string.format("%.3f", lUHFRadio:get_frequency()/1000000)) --ExportScript.Tools.WriteToLog('UHF_Freq: '..ExportScript.Tools.dump(list_indication(5))) - local lUHFRadioFreq = list_indication(5) - lUHFRadioFreq = lUHFRadioFreq:gsub("-----------------------------------------", "") - lUHFRadioFreq = lUHFRadioFreq:gsub("Base", "") - lUHFRadioFreq = lUHFRadioFreq:gsub("total_field_of_view", "") - lUHFRadioFreq = lUHFRadioFreq:gsub("UHF_Freq", "") - lUHFRadioFreq = lUHFRadioFreq:gsub("%c", "") + local lUHFRadioFreq = ExportScript.Tools.getListIndicatorValue(5) - ExportScript.Tools.SendData(2000, lUHFRadioFreq) - --ExportScript.Tools.WriteToLog('UHF_Freq: '..ExportScript.Tools.dump(lUHFRadioFreq)) + if lUHFRadioFreq ~= nil and lUHFRadioFreq.UHF_Freq ~= nil then + ExportScript.Tools.SendData(2000, string.format("%s", lUHFRadioFreq.UHF_Freq)) + end + else + ExportScript.Tools.SendData(2000, " ") end -- AM Radio --------------------------------------------------- local lAMRadio = GetDevice(5) if lAMRadio:is_on() then - ExportScript.Tools.SendData(2001, string.format("%.3f", lAMRadio:get_frequency()/1000000)) + --ExportScript.Tools.SendData(2001, string.format("%.3f", lAMRadio:get_frequency()/1000000)) + ExportScript.Tools.SendData(2001, ExportScript.Tools.RoundFreqeuncy(lAMRadio:get_frequency()/1000000)) end -- FM Radio PR4G @@ -467,15 +468,13 @@ function ExportScript.ProcessIkarusDCSConfigLowImportance(mainPanelDevice) --ExportScript.Tools.SendData(2002, string.format("%.3f", lFMRadio:get_frequency()/1000000)) --ExportScript.Tools.WriteToLog('FM_Freq: '..ExportScript.Tools.dump(list_indication(4))) - local lFMRadioFreq = list_indication(4) - lFMRadioFreq = lFMRadioFreq:gsub("-----------------------------------------", "") - lFMRadioFreq = lFMRadioFreq:gsub("Base", "") - lFMRadioFreq = lFMRadioFreq:gsub("total_field_of_view", "") - lFMRadioFreq = lFMRadioFreq:gsub("FM_Freq", "") - lFMRadioFreq = lFMRadioFreq:gsub("%c", "") + local lFMRadioFreq = ExportScript.Tools.getListIndicatorValue(4) - ExportScript.Tools.SendData(2002, lFMRadioFreq) - --ExportScript.Tools.WriteToLog('FM_Freq: '..ExportScript.Tools.dump(lFMRadioFreq)) + if lFMRadioFreq ~= nil and lFMRadioFreq.FM_Freq ~= nil then + ExportScript.Tools.SendData(2002, string.format("%s", lFMRadioFreq.FM_Freq)) + end + else + ExportScript.Tools.SendData(2002, " ") end -- [273] = "%.3f", -- FM RADIO - Chanel Selector {0.0,0.143,0.286,0.429,0.572,0.715,0.858,1.0} -- laut clickabledata.lua @@ -486,22 +485,15 @@ function ExportScript.ProcessIkarusDCSConfigLowImportance(mainPanelDevice) -- Weapon Panel --------------------------------------------------- if mainPanelDevice:get_argument_value(354) >= 0.0 then -- Weapon panel is On - local lWeaponPanelDisplays = list_indication(8) - lWeaponPanelDisplays = lWeaponPanelDisplays:gsub("-----------------------------------------", "") - lWeaponPanelDisplays = lWeaponPanelDisplays:gsub("Base", "") - lWeaponPanelDisplays = lWeaponPanelDisplays:gsub("total_field_of_view", "") - lWeaponPanelDisplays = lWeaponPanelDisplays:gsub("LEFT_screen", "LEFT_screen:") - lWeaponPanelDisplays = lWeaponPanelDisplays:gsub("RIGHT_screen", "RIGHT_screen:") - lWeaponPanelDisplays = lWeaponPanelDisplays:gsub("%c", "") + local lWeaponPanelDisplays = ExportScript.Tools.getListIndicatorValue(8) - local lLeftDisplay = string.match(lWeaponPanelDisplays, '%d+', 0) - local lRightDisplay = string.match(lWeaponPanelDisplays, '%d+', string.find(lWeaponPanelDisplays, "RIGHT_screen")) - - if lLeftDisplay ~= nil then - ExportScript.Tools.SendData(2004, lLeftDisplay) - end - if lRightDisplay ~= nil then - ExportScript.Tools.SendData(2005, lRightDisplay) + if lWeaponPanelDisplays ~= nil then + if lWeaponPanelDisplays.LEFT_screen ~= nil then + ExportScript.Tools.SendData(2004, string.format("%s", lWeaponPanelDisplays.LEFT_screen)) + end + if lWeaponPanelDisplays.RIGHT_screen ~= nil then + ExportScript.Tools.SendData(2005, string.format("%s", lWeaponPanelDisplays.RIGHT_screen)) + end end else ExportScript.Tools.SendData(2004, "-") @@ -519,7 +511,7 @@ function ExportScript.ProcessDACConfigLowImportance(mainPanelDevice) ExportScript.Tools.SendDataDAC("ExportID", "Format") ExportScript.Tools.SendDataDAC("ExportID", "Format", HardwareConfigID) ExportScript.Tools.SendDataDAC("2000", string.format("%7.3f", UHF_RADIO:get_frequency()/1000000)) - ExportScript.Tools.SendDataDAC("2000", string.format("%7.3f", UHF_RADIO:get_frequency()/1000000), 2) -- export to Hardware '2' Config + ExportScript.Tools.SendDataDAC("2000", ExportScript.Tools.RoundFreqeuncy((UHF_RADIO:get_frequency()/1000000))) -- ExportScript.Tools.RoundFreqeuncy(frequency (MHz|KHz), format ("7.3"), PrefixZeros (false), LeastValue (0.025)) ]] -- UHF Radio @@ -529,22 +521,21 @@ function ExportScript.ProcessDACConfigLowImportance(mainPanelDevice) --ExportScript.Tools.SendDataDAC("2000", string.format("%.3f", lUHFRadio:get_frequency()/1000000)) --ExportScript.Tools.WriteToLog('UHF_Freq: '..ExportScript.Tools.dump(list_indication(5))) - local lUHFRadioFreq = list_indication(5) - lUHFRadioFreq = lUHFRadioFreq:gsub("-----------------------------------------", "") - lUHFRadioFreq = lUHFRadioFreq:gsub("Base", "") - lUHFRadioFreq = lUHFRadioFreq:gsub("total_field_of_view", "") - lUHFRadioFreq = lUHFRadioFreq:gsub("UHF_Freq", "") - lUHFRadioFreq = lUHFRadioFreq:gsub("%c", "") + local lUHFRadioFreq = ExportScript.Tools.getListIndicatorValue(5) - ExportScript.Tools.SendDataDAC("2000", lUHFRadioFreq) - --ExportScript.Tools.WriteToLog('UHF_Freq: '..ExportScript.Tools.dump(lUHFRadioFreq)) + if lUHFRadioFreq ~= nil and lUHFRadioFreq.UHF_Freq ~= nil then + ExportScript.Tools.SendDataDAC("2000", string.format("%s", lUHFRadioFreq.UHF_Freq)) + end + else + ExportScript.Tools.SendDataDAC("2000", "-") end -- AM Radio --------------------------------------------------- local lAMRadio = GetDevice(5) if lAMRadio:is_on() then - ExportScript.Tools.SendDataDAC("2001", string.format("%.3f", lAMRadio:get_frequency()/1000000)) + --ExportScript.Tools.SendDataDAC("2001", string.format("%.3f", lAMRadio:get_frequency()/1000000)) + ExportScript.Tools.SendDataDAC("2001", ExportScript.Tools.RoundFreqeuncy(lAMRadio:get_frequency()/1000000)) end -- FM Radio PR4G @@ -554,15 +545,13 @@ function ExportScript.ProcessDACConfigLowImportance(mainPanelDevice) --ExportScript.Tools.SendDataDAC(2002, string.format("%.3f", lFMRadio:get_frequency()/1000000)) --ExportScript.Tools.WriteToLog('FM_Freq: '..ExportScript.Tools.dump(list_indication(4))) - local lFMRadioFreq = list_indication(4) - lFMRadioFreq = lFMRadioFreq:gsub("-----------------------------------------", "") - lFMRadioFreq = lFMRadioFreq:gsub("Base", "") - lFMRadioFreq = lFMRadioFreq:gsub("total_field_of_view", "") - lFMRadioFreq = lFMRadioFreq:gsub("FM_Freq", "") - lFMRadioFreq = lFMRadioFreq:gsub("%c", "") + local lFMRadioFreq = ExportScript.Tools.getListIndicatorValue(4) - ExportScript.Tools.SendDataDAC("2002", lFMRadioFreq) - --ExportScript.Tools.WriteToLog('FM_Freq: '..ExportScript.Tools.dump(lFMRadioFreq)) + if lFMRadioFreq ~= nil and lFMRadioFreq.FM_Freq ~= nil then + ExportScript.Tools.SendDataDAC("2002", string.format("%s", lFMRadioFreq.FM_Freq)) + end + else + ExportScript.Tools.SendDataDAC("2002", "-") end -- [273] = "%.3f", -- FM RADIO - Chanel Selector {0.0,0.143,0.286,0.429,0.572,0.715,0.858,1.0} -- laut clickabledata.lua @@ -573,22 +562,15 @@ function ExportScript.ProcessDACConfigLowImportance(mainPanelDevice) -- Weapon Panel --------------------------------------------------- if mainPanelDevice:get_argument_value(354) >= 0.0 then -- Weapon panel is On - local lWeaponPanelDisplays = list_indication(8) - lWeaponPanelDisplays = lWeaponPanelDisplays:gsub("-----------------------------------------", "") - lWeaponPanelDisplays = lWeaponPanelDisplays:gsub("Base", "") - lWeaponPanelDisplays = lWeaponPanelDisplays:gsub("total_field_of_view", "") - lWeaponPanelDisplays = lWeaponPanelDisplays:gsub("LEFT_screen", "LEFT_screen:") - lWeaponPanelDisplays = lWeaponPanelDisplays:gsub("RIGHT_screen", "RIGHT_screen:") - lWeaponPanelDisplays = lWeaponPanelDisplays:gsub("%c", "") + local lWeaponPanelDisplays = ExportScript.Tools.getListIndicatorValue(8) - local lLeftDisplay = string.match(lWeaponPanelDisplays, '%d+', 0) - local lRightDisplay = string.match(lWeaponPanelDisplays, '%d+', string.find(lWeaponPanelDisplays, "RIGHT_screen")) - - if lLeftDisplay ~= nil then - ExportScript.Tools.SendDataDAC("2004", lLeftDisplay) - end - if lRightDisplay ~= nil then - ExportScript.Tools.SendDataDAC("2005", lRightDisplay) + if lWeaponPanelDisplays ~= nil then + if lWeaponPanelDisplays.LEFT_screen ~= nil then + ExportScript.Tools.SendDataDAC("2004", string.format("%s", lWeaponPanelDisplays.LEFT_screen)) + end + if lWeaponPanelDisplays.RIGHT_screen ~= nil then + ExportScript.Tools.SendDataDAC("2005", string.format("%s", lWeaponPanelDisplays.RIGHT_screen)) + end end else ExportScript.Tools.SendDataDAC("2004", "-") @@ -709,20 +691,21 @@ function ExportScript.ProcessDACConfigLowImportance(mainPanelDevice) ExportScript.genericRadio(nil, nil) --===================================================================================== - - --ExportScript.Tools.WriteToLog('list_cockpit_params(): '..ExportScript.Tools.dump(list_cockpit_params())) - --ExportScript.Tools.WriteToLog('FM_Freq: '..ExportScript.Tools.dump(list_indication(4))) - --ExportScript.Tools.WriteToLog('UHF_Freq: '..ExportScript.Tools.dump(list_indication(5))) --[[ + ExportScript.Tools.WriteToLog('list_cockpit_params(): '..ExportScript.Tools.dump(list_cockpit_params())) + ExportScript.Tools.WriteToLog('CMSP: '..ExportScript.Tools.dump(list_indication(7))) + + -- list_indication get tehe value of cockpit displays local ltmp1 = 0 - for ltmp2 = 0, 10, 1 do + for ltmp2 = 0, 20, 1 do ltmp1 = list_indication(ltmp2) ExportScript.Tools.WriteToLog(ltmp2..': '..ExportScript.Tools.dump(ltmp1)) - --ExportScript.Tools.WriteToLog(ltmp2..' (metatable): '..ExportScript.Tools.dump(getmetatable(ltmp1))) end - + ]] +--[[ + -- getmetatable get function name from devices local ltmp1 = 0 - for ltmp2 = 1, 35, 1 do + for ltmp2 = 1, 70, 1 do ltmp1 = GetDevice(ltmp2) ExportScript.Tools.WriteToLog(ltmp2..': '..ExportScript.Tools.dump(ltmp1)) ExportScript.Tools.WriteToLog(ltmp2..' (metatable): '..ExportScript.Tools.dump(getmetatable(ltmp1))) diff --git a/Scripts/DCS-ExportScript/ExportsModules/SpitfireLFMkIX.lua b/Scripts/DCS-ExportScript/ExportsModules/SpitfireLFMkIX.lua index cb7f718..412f1a8 100644 --- a/Scripts/DCS-ExportScript/ExportsModules/SpitfireLFMkIX.lua +++ b/Scripts/DCS-ExportScript/ExportsModules/SpitfireLFMkIX.lua @@ -1,5 +1,5 @@ -- Spitfire LFMk IX --- Version 1.0.1 +-- Version 1.0.2 ExportScript.FoundDCSModule = true @@ -157,7 +157,8 @@ function ExportScript.ProcessIkarusDCSConfigHighImportance(mainPanelDevice) get data from device local lUHFRadio = GetDevice(54) ExportScript.Tools.SendData("ExportID", "Format") - ExportScript.Tools.SendData(2000, string.format("%7.3f", lUHFRadio:get_frequency()/1000000)) <- special function for get frequency data + ExportScript.Tools.SendData(2000, string.format("%7.3f", lUHFRadio:get_frequency()/1000000)) -- <- special function for get frequency data + ExportScript.Tools.SendData(2000, ExportScript.Tools.RoundFreqeuncy((UHF_RADIO:get_frequency()/1000000))) -- ExportScript.Tools.RoundFreqeuncy(frequency (MHz|KHz), format ("7.3"), PrefixZeros (false), LeastValue (0.025)) ]] end @@ -171,7 +172,7 @@ function ExportScript.ProcessDACConfigHighImportance(mainPanelDevice) ExportScript.Tools.SendDataDAC("ExportID", "Format") ExportScript.Tools.SendDataDAC("ExportID", "Format", HardwareConfigID) ExportScript.Tools.SendDataDAC("2000", string.format("%7.3f", UHF_RADIO:get_frequency()/1000000)) - ExportScript.Tools.SendDataDAC("2000", string.format("%7.3f", UHF_RADIO:get_frequency()/1000000), 2) -- export to Hardware '2' Config + ExportScript.Tools.SendDataDAC("2000", ExportScript.Tools.RoundFreqeuncy((UHF_RADIO:get_frequency()/1000000))) -- ExportScript.Tools.RoundFreqeuncy(frequency (MHz|KHz), format ("7.3"), PrefixZeros (false), LeastValue (0.025)) ]] end @@ -189,17 +190,12 @@ function ExportScript.ProcessIkarusDCSConfigLowImportance(mainPanelDevice) get data from device local lUHFRadio = GetDevice(54) ExportScript.Tools.SendData("ExportID", "Format") - ExportScript.Tools.SendData(2000, string.format("%7.3f", lUHFRadio:get_frequency()/1000000)) <- special function for get frequency data + ExportScript.Tools.SendData(2000, string.format("%7.3f", lUHFRadio:get_frequency()/1000000)) -- <- special function for get frequency data + ExportScript.Tools.SendData(2000, ExportScript.Tools.RoundFreqeuncy((UHF_RADIO:get_frequency()/1000000))) -- ExportScript.Tools.RoundFreqeuncy(frequency (MHz|KHz), format ("7.3"), PrefixZeros (false), LeastValue (0.025)) ]] -- Cockpit Light ExportScript.Tools.IkarusCockpitLights(mainPanelDevice, {163, 62, 63}) -- Gauges light, left panel light, right panel light - - --ExportScript.Tools.WriteToLog('DI : '..ExportScript.Tools.dump(mainPanelDevice:get_argument_value(31))) - --ExportScript.Tools.WriteToLog('AIS : '..ExportScript.Tools.dump(mainPanelDevice:get_argument_value(21))) - --ExportScript.Tools.WriteToLog('RPM : '..ExportScript.Tools.dump(mainPanelDevice:get_argument_value(37))) - --ExportScript.Tools.WriteToLog('Bank : '..ExportScript.Tools.dump(mainPanelDevice:get_argument_value(23))) - --ExportScript.Tools.WriteToLog('Pitch: '..ExportScript.Tools.dump(mainPanelDevice:get_argument_value(24))) end function ExportScript.ProcessDACConfigLowImportance(mainPanelDevice) @@ -212,34 +208,36 @@ function ExportScript.ProcessDACConfigLowImportance(mainPanelDevice) ExportScript.Tools.SendDataDAC("ExportID", "Format") ExportScript.Tools.SendDataDAC("ExportID", "Format", HardwareConfigID) ExportScript.Tools.SendDataDAC("2000", string.format("%7.3f", UHF_RADIO:get_frequency()/1000000)) - ExportScript.Tools.SendDataDAC("2000", string.format("%7.3f", UHF_RADIO:get_frequency()/1000000), 2) -- export to Hardware '2' Config + ExportScript.Tools.SendDataDAC("2000", ExportScript.Tools.RoundFreqeuncy((UHF_RADIO:get_frequency()/1000000))) -- ExportScript.Tools.RoundFreqeuncy(frequency (MHz|KHz), format ("7.3"), PrefixZeros (false), LeastValue (0.025)) ]] --===================================================================================== - - --ExportScript.Tools.WriteToLog('list_cockpit_params(): '..ExportScript.Tools.dump(list_cockpit_params())) - --ExportScript.Tools.WriteToLog('CMSP: '..ExportScript.Tools.dump(list_indication(7))) - --[[ + ExportScript.Tools.WriteToLog('list_cockpit_params(): '..ExportScript.Tools.dump(list_cockpit_params())) + ExportScript.Tools.WriteToLog('CMSP: '..ExportScript.Tools.dump(list_indication(7))) + + -- list_indication get tehe value of cockpit displays local ltmp1 = 0 for ltmp2 = 0, 20, 1 do ltmp1 = list_indication(ltmp2) ExportScript.Tools.WriteToLog(ltmp2..': '..ExportScript.Tools.dump(ltmp1)) - --ExportScript.Tools.WriteToLog(ltmp2..' (metatable): '..ExportScript.Tools.dump(getmetatable(ltmp1))) end - + ]] +--[[ + -- getmetatable get function name from devices local ltmp1 = 0 - for ltmp2 = 1, 16, 1 do + for ltmp2 = 1, 70, 1 do ltmp1 = GetDevice(ltmp2) ExportScript.Tools.WriteToLog(ltmp2..': '..ExportScript.Tools.dump(ltmp1)) ExportScript.Tools.WriteToLog(ltmp2..' (metatable): '..ExportScript.Tools.dump(getmetatable(ltmp1))) end - ]] +]] -- VHF_Radio local lVHF_Radio = GetDevice(15) if lVHF_Radio:is_on() then ExportScript.Tools.SendDataDAC("2000", string.format("%7.3f", lVHF_Radio:get_frequency()/1000000)) + ExportScript.Tools.SendDataDAC("2000", ExportScript.Tools.RoundFreqeuncy(lVHF_Radio:get_frequency()/1000000)) else ExportScript.Tools.SendDataDAC("2000", " ") end diff --git a/Scripts/DCS-ExportScript/ExportsModules/Su-25.lua b/Scripts/DCS-ExportScript/ExportsModules/Su-25.lua index b2a189a..3b07338 100644 --- a/Scripts/DCS-ExportScript/ExportsModules/Su-25.lua +++ b/Scripts/DCS-ExportScript/ExportsModules/Su-25.lua @@ -1,5 +1,5 @@ -- Su-25A Export --- Version 1.0.1 +-- Version 1.0.2 ExportScript.FoundFCModule = true diff --git a/Scripts/DCS-ExportScript/ExportsModules/Su-25T.lua b/Scripts/DCS-ExportScript/ExportsModules/Su-25T.lua index bb4663f..f41bdf7 100644 --- a/Scripts/DCS-ExportScript/ExportsModules/Su-25T.lua +++ b/Scripts/DCS-ExportScript/ExportsModules/Su-25T.lua @@ -1,5 +1,5 @@ -- Su-25T Export --- Version 1.0.1 +-- Version 1.0.2 ExportScript.FoundFCModule = true diff --git a/Scripts/DCS-ExportScript/ExportsModules/Su-27.lua b/Scripts/DCS-ExportScript/ExportsModules/Su-27.lua index 56780b4..a6abfb6 100644 --- a/Scripts/DCS-ExportScript/ExportsModules/Su-27.lua +++ b/Scripts/DCS-ExportScript/ExportsModules/Su-27.lua @@ -1,5 +1,5 @@ -- Su-27 Export --- Version 1.0.1 +-- Version 1.0.2 ExportScript.FoundFCModule = true @@ -409,10 +409,10 @@ function ExportScript.AF.FuelQuantityIndicator(FunctionTyp) --ExportScript.Tools.SendDataDAC("301", string.format("%d", lEngineInfo.fuel_internal)) -- total fuel in kg --ExportScript.Tools.SendDataDAC("302", string.format("%d", lEngineInfo.fuel_external)) -- external fuel in kg - ExportScript.Tools.SendDataDAC("304", (lEngineInfo.fuel_internal < 5000.0 and 1 or 0) ) -- Tank warning 1 - ExportScript.Tools.SendDataDAC("305", (lEngineInfo.fuel_internal < 4000.0 and 1 or 0) ) -- Tank warning 2 + ExportScript.Tools.SendDataDAC("304", (lEngineInfo.fuel_internal < 5600.0 and 1 or 0) ) -- Tank warning 1 + ExportScript.Tools.SendDataDAC("305", (lEngineInfo.fuel_internal < 4500.0 and 1 or 0) ) -- Tank warning 2 ExportScript.Tools.SendDataDAC("306", (lEngineInfo.fuel_internal < 1500.0 and 1 or 0) ) -- Tank warning 3 - ExportScript.Tools.SendDataDAC("307", (lEngineInfo.fuel_internal < 1000.0 and 1 or 0) ) -- Tank warning 4 + ExportScript.Tools.SendDataDAC("307", (lEngineInfo.fuel_internal < 800.0 and 1 or 0) ) -- Tank warning 4 ExportScript.Tools.SendDataDAC("308", (lEngineInfo.fuel_internal < 600.0 and 1 or 0) ) -- Bingo Fuel end @@ -459,10 +459,10 @@ function ExportScript.AF.FuelQuantityIndicator(FunctionTyp) -- BingoLight ExportScript.Tools.SendData(300, lTotalFuel_5_0) ExportScript.Tools.SendData(301, lTotalFuel_9_3) - ExportScript.Tools.SendData(302, (lEngineInfo.fuel_internal < 5000.0 and 1 or 0)) -- Tank warning 1 - ExportScript.Tools.SendData(303, (lEngineInfo.fuel_internal < 4000.0 and 1 or 0)) -- Tank warning 2 + ExportScript.Tools.SendData(302, (lEngineInfo.fuel_internal < 5600.0 and 1 or 0)) -- Tank warning 1 + ExportScript.Tools.SendData(303, (lEngineInfo.fuel_internal < 4500.0 and 1 or 0)) -- Tank warning 2 ExportScript.Tools.SendData(304, (lEngineInfo.fuel_internal < 1500.0 and 1 or 0)) -- Tank warning 3 - ExportScript.Tools.SendData(305, (lEngineInfo.fuel_internal < 1000.0 and 1 or 0)) -- Tank warning 4 + ExportScript.Tools.SendData(305, (lEngineInfo.fuel_internal < 800.0 and 1 or 0)) -- Tank warning 4 ExportScript.Tools.SendData(306, (lEngineInfo.fuel_internal < 600.0 and 1 or 0)) -- Bingo Fuel end end diff --git a/Scripts/DCS-ExportScript/ExportsModules/Su-33.lua b/Scripts/DCS-ExportScript/ExportsModules/Su-33.lua index 1e6decb..6e9a521 100644 --- a/Scripts/DCS-ExportScript/ExportsModules/Su-33.lua +++ b/Scripts/DCS-ExportScript/ExportsModules/Su-33.lua @@ -1,5 +1,5 @@ -- Su-33 Export --- Version 1.0.1 +-- Version 1.0.2 ExportScript.FoundFCModule = true diff --git a/Scripts/DCS-ExportScript/ExportsModules/TF-51D.lua b/Scripts/DCS-ExportScript/ExportsModules/TF-51D.lua index b1cc785..0863fd1 100644 --- a/Scripts/DCS-ExportScript/ExportsModules/TF-51D.lua +++ b/Scripts/DCS-ExportScript/ExportsModules/TF-51D.lua @@ -1,5 +1,5 @@ -- TF-51D Export --- Version 1.0.1 +-- Version 1.0.2 ExportScript.FoundDCSModule = true @@ -232,7 +232,8 @@ function ExportScript.ProcessIkarusDCSConfigHighImportance(mainPanelDevice) get data from device local lUHFRadio = GetDevice(54) ExportScript.Tools.SendData("ExportID", "Format") - ExportScript.Tools.SendData(2000, string.format("%7.3f", lUHFRadio:get_frequency()/1000000)) <- special function for get frequency data + ExportScript.Tools.SendData(2000, string.format("%7.3f", lUHFRadio:get_frequency()/1000000)) -- <- special function for get frequency data + ExportScript.Tools.SendData(2000, ExportScript.Tools.RoundFreqeuncy((UHF_RADIO:get_frequency()/1000000))) -- ExportScript.Tools.RoundFreqeuncy(frequency (MHz|KHz), format ("7.3"), PrefixZeros (false), LeastValue (0.025)) ]] end @@ -246,7 +247,7 @@ function ExportScript.ProcessDACConfigHighImportance(mainPanelDevice) ExportScript.Tools.SendDataDAC("ExportID", "Format") ExportScript.Tools.SendDataDAC("ExportID", "Format", HardwareConfigID) ExportScript.Tools.SendDataDAC("2000", string.format("%7.3f", UHF_RADIO:get_frequency()/1000000)) - ExportScript.Tools.SendDataDAC("2000", string.format("%7.3f", UHF_RADIO:get_frequency()/1000000), 2) -- export to Hardware '2' Config + ExportScript.Tools.SendDataDAC("2000", ExportScript.Tools.RoundFreqeuncy((UHF_RADIO:get_frequency()/1000000))) -- ExportScript.Tools.RoundFreqeuncy(frequency (MHz|KHz), format ("7.3"), PrefixZeros (false), LeastValue (0.025)) ]] end ----------------------------------------------------- @@ -263,7 +264,8 @@ function ExportScript.ProcessIkarusDCSConfigLowImportance(mainPanelDevice) get data from device local lUHFRadio = GetDevice(54) ExportScript.Tools.SendData("ExportID", "Format") - ExportScript.Tools.SendData(2000, string.format("%7.3f", lUHFRadio:get_frequency()/1000000)) <- special function for get frequency data + ExportScript.Tools.SendData(2000, string.format("%7.3f", lUHFRadio:get_frequency()/1000000)) -- <- special function for get frequency data + ExportScript.Tools.SendData(2000, ExportScript.Tools.RoundFreqeuncy((UHF_RADIO:get_frequency()/1000000))) -- ExportScript.Tools.RoundFreqeuncy(frequency (MHz|KHz), format ("7.3"), PrefixZeros (false), LeastValue (0.025)) ]] end @@ -277,7 +279,7 @@ function ExportScript.ProcessDACConfigLowImportance(mainPanelDevice) ExportScript.Tools.SendDataDAC("ExportID", "Format") ExportScript.Tools.SendDataDAC("ExportID", "Format", HardwareConfigID) ExportScript.Tools.SendDataDAC("2000", string.format("%7.3f", UHF_RADIO:get_frequency()/1000000)) - ExportScript.Tools.SendDataDAC("2000", string.format("%7.3f", UHF_RADIO:get_frequency()/1000000), 2) -- export to Hardware '2' Config + ExportScript.Tools.SendDataDAC("2000", ExportScript.Tools.RoundFreqeuncy((UHF_RADIO:get_frequency()/1000000))) -- ExportScript.Tools.RoundFreqeuncy(frequency (MHz|KHz), format ("7.3"), PrefixZeros (false), LeastValue (0.025)) ]] --===================================================================================== @@ -285,16 +287,17 @@ function ExportScript.ProcessDACConfigLowImportance(mainPanelDevice) ExportScript.Tools.WriteToLog('list_cockpit_params(): '..ExportScript.Tools.dump(list_cockpit_params())) ExportScript.Tools.WriteToLog('CMSP: '..ExportScript.Tools.dump(list_indication(7))) + -- list_indication get tehe value of cockpit displays local ltmp1 = 0 - for ltmp2 = 0, 13, 1 do + for ltmp2 = 0, 20, 1 do ltmp1 = list_indication(ltmp2) ExportScript.Tools.WriteToLog(ltmp2..': '..ExportScript.Tools.dump(ltmp1)) - --ExportScript.Tools.WriteToLog(ltmp2..' (metatable): '..ExportScript.Tools.dump(getmetatable(ltmp1))) end ]] --[[ + -- getmetatable get function name from devices local ltmp1 = 0 - for ltmp2 = 1, 73, 1 do + for ltmp2 = 1, 70, 1 do ltmp1 = GetDevice(ltmp2) ExportScript.Tools.WriteToLog(ltmp2..': '..ExportScript.Tools.dump(ltmp1)) ExportScript.Tools.WriteToLog(ltmp2..' (metatable): '..ExportScript.Tools.dump(getmetatable(ltmp1))) @@ -305,6 +308,3 @@ end ----------------------------- -- Custom functions -- ----------------------------- - -function ExportScript.genericRadio(key, value, hardware) -end diff --git a/Scripts/DCS-ExportScript/ExportsModules/UH-1H.lua b/Scripts/DCS-ExportScript/ExportsModules/UH-1H.lua index 5cd6885..317e81f 100644 --- a/Scripts/DCS-ExportScript/ExportsModules/UH-1H.lua +++ b/Scripts/DCS-ExportScript/ExportsModules/UH-1H.lua @@ -1,5 +1,5 @@ -- Uh-1H Export --- Version 1.0.1 +-- Version 1.0.2 ExportScript.FoundDCSModule = true @@ -520,7 +520,8 @@ function ExportScript.ProcessIkarusDCSConfigHighImportance(mainPanelDevice) get data from device local lUHFRadio = GetDevice(54) ExportScript.Tools.SendData("ExportID", "Format") - ExportScript.Tools.SendData(2000, string.format("%7.3f", lUHFRadio:get_frequency()/1000000)) <- special function for get frequency data + ExportScript.Tools.SendData(2000, string.format("%7.3f", lUHFRadio:get_frequency()/1000000)) -- <- special function for get frequency data + ExportScript.Tools.SendData(2000, ExportScript.Tools.RoundFreqeuncy((UHF_RADIO:get_frequency()/1000000))) -- ExportScript.Tools.RoundFreqeuncy(frequency (MHz|KHz), format ("7.3"), PrefixZeros (false), LeastValue (0.025)) ]] -- Magnetic Compass --[272] = "%.4f", -- Heading @@ -537,7 +538,7 @@ function ExportScript.ProcessDACConfigHighImportance(mainPanelDevice) ExportScript.Tools.SendDataDAC("ExportID", "Format") ExportScript.Tools.SendDataDAC("ExportID", "Format", HardwareConfigID) ExportScript.Tools.SendDataDAC("2000", string.format("%7.3f", UHF_RADIO:get_frequency()/1000000)) - ExportScript.Tools.SendDataDAC("2000", string.format("%7.3f", UHF_RADIO:get_frequency()/1000000), 2) -- export to Hardware '2' Config + ExportScript.Tools.SendDataDAC("2000", ExportScript.Tools.RoundFreqeuncy((UHF_RADIO:get_frequency()/1000000))) -- ExportScript.Tools.RoundFreqeuncy(frequency (MHz|KHz), format ("7.3"), PrefixZeros (false), LeastValue (0.025)) ]] -- ADI Pilot --[142] = "%.4f", -- Attitude_Roll {1.0, -1.0} @@ -561,7 +562,8 @@ function ExportScript.ProcessIkarusDCSConfigLowImportance(mainPanelDevice) get data from device local lUHFRadio = GetDevice(54) ExportScript.Tools.SendData("ExportID", "Format") - ExportScript.Tools.SendData(2000, string.format("%7.3f", lUHFRadio:get_frequency()/1000000)) <- special function for get frequency data + ExportScript.Tools.SendData(2000, string.format("%7.3f", lUHFRadio:get_frequency()/1000000)) -- <- special function for get frequency data + ExportScript.Tools.SendData(2000, ExportScript.Tools.RoundFreqeuncy((UHF_RADIO:get_frequency()/1000000))) -- ExportScript.Tools.RoundFreqeuncy(frequency (MHz|KHz), format ("7.3"), PrefixZeros (false), LeastValue (0.025)) ]] -- Cockpit Light @@ -579,13 +581,16 @@ function ExportScript.ProcessIkarusDCSConfigLowImportance(mainPanelDevice) -- Radio local lVHF_ARC_134 = GetDevice(20) - ExportScript.Tools.SendData(2003, string.format("%7.3f", lVHF_ARC_134:get_frequency()/1000000)) + --ExportScript.Tools.SendData(2003, string.format("%7.3f", lVHF_ARC_134:get_frequency()/1000000)) + ExportScript.Tools.SendData(2003, ExportScript.Tools.RoundFreqeuncy(lVHF_ARC_134:get_frequency()/1000000)) local lUHF_ARC_51 = GetDevice(22) - ExportScript.Tools.SendData(2000, string.format("%6.2f", lUHF_ARC_51:get_frequency()/1000000)) + --ExportScript.Tools.SendData(2000, string.format("%6.2f", lUHF_ARC_51:get_frequency()/1000000)) + ExportScript.Tools.SendData(2000, ExportScript.Tools.RoundFreqeuncy(lUHF_ARC_51:get_frequency()/1000000, "6.2", false, 0.050)) local lVHF_ARC_131 = GetDevice(23) - ExportScript.Tools.SendData(2002, string.format("%5.2f", lVHF_ARC_131:get_frequency()/1000000)) + --ExportScript.Tools.SendData(2002, string.format("%5.2f", lVHF_ARC_131:get_frequency()/1000000)) + ExportScript.Tools.SendData(2002, ExportScript.Tools.RoundFreqeuncy(lVHF_ARC_131:get_frequency()/1000000, "5.2")) ExportScript.Tools.SendData(2005, string.format("%02d", ExportScript.Tools.round(mainPanelDevice:get_argument_value(460) * 10, 0)..ExportScript.Tools.round(mainPanelDevice:get_argument_value(461) * 10, 0))) -- FLARE_Digit_1 -- FLARE_Digit_2 ExportScript.Tools.SendData(2006, string.format("%02d", ExportScript.Tools.round(mainPanelDevice:get_argument_value(462) * 10, 0)..ExportScript.Tools.round(mainPanelDevice:get_argument_value(463) * 10, 0))) -- CHAFF_Digit_1 -- CHAFF_Digit_2 @@ -621,31 +626,36 @@ function ExportScript.ProcessIkarusDCSConfigLowImportance(mainPanelDevice) end function ExportScript.ProcessDACConfigLowImportance(mainPanelDevice) ---[[ - export in low tick interval to hardware + --[[ + every frame export to hardware Example from A-10C - Landing Gear - mainPanelDevice, basis panel - ExportScript.Tools.SendDataDAC("2004", mainPanelDevice:get_argument_value(659)) -- GEAR_N_SAFE - ExportScript.Tools.SendDataDAC("2005", mainPanelDevice:get_argument_value(660)) -- GEAR_L_SAFE - ExportScript.Tools.SendDataDAC("2006", mainPanelDevice:get_argument_value(661)) -- GEAR_R_SAFE + Get Radio Frequencies + get data from device + local UHF_RADIO = GetDevice(54) + ExportScript.Tools.SendDataDAC("ExportID", "Format") + ExportScript.Tools.SendDataDAC("ExportID", "Format", HardwareConfigID) + ExportScript.Tools.SendDataDAC("2000", string.format("%7.3f", UHF_RADIO:get_frequency()/1000000)) + ExportScript.Tools.SendDataDAC("2000", ExportScript.Tools.RoundFreqeuncy((UHF_RADIO:get_frequency()/1000000))) -- ExportScript.Tools.RoundFreqeuncy(frequency (MHz|KHz), format ("7.3"), PrefixZeros (false), LeastValue (0.025)) ]] -- Radio comunication -- UHF_ARC_51 local lUHF_ARC_51 = GetDevice(22) - ExportScript.Tools.SendDataDAC("2000", string.format("%7.3f", lUHF_ARC_51:get_frequency()/1000000)) + --ExportScript.Tools.SendDataDAC("2000", string.format("%7.3f", lUHF_ARC_51:get_frequency()/1000000)) + ExportScript.Tools.SendDataDAC("2000", ExportScript.Tools.RoundFreqeuncy(lUHF_ARC_51:get_frequency()/1000000, "7.3", false, 0.050)) local lUHF_ARC_51_PRESET = {[0.00]="1",[0.05]="2",[0.10]="3",[0.15]="4",[0.20]="5",[0.25]="6",[0.30]="7",[0.35]="8",[0.40]="9",[0.45]="10",[0.50]="11",[0.55]="12",[0.60]="13",[0.65]="14",[0.70]="15",[0.75]="16",[0.80]="17",[0.85]="18",[0.90]="19",[0.95]="20"} ExportScript.Tools.SendDataDAC("2001", lUHF_ARC_51_PRESET[ExportScript.Tools.round(mainPanelDevice:get_argument_value(16), 2)]) -- VHF_ARC_131 local lVHF_ARC_131 = GetDevice(23) - ExportScript.Tools.SendDataDAC("2002", string.format("%7.3f", lVHF_ARC_131:get_frequency()/1000000)) + --ExportScript.Tools.SendDataDAC("2002", string.format("%7.3f", lVHF_ARC_131:get_frequency()/1000000)) + ExportScript.Tools.SendDataDAC("2002", ExportScript.Tools.RoundFreqeuncy(lVHF_ARC_131:get_frequency()/1000000)) -- VHF_ARC_134 local lVHF_ARC_134 = GetDevice(20) - ExportScript.Tools.SendDataDAC("2003", string.format("%7.3f", lVHF_ARC_134:get_frequency()/1000000)) + --ExportScript.Tools.SendDataDAC("2003", string.format("%7.3f", lVHF_ARC_134:get_frequency()/1000000)) + ExportScript.Tools.SendDataDAC("2003", ExportScript.Tools.RoundFreqeuncy(lVHF_ARC_134:get_frequency()/1000000)) -- ARN_82 VHF Navigation Set NOT FUNCTIONAL --local lARN_82 = GetDevice(26) @@ -875,23 +885,23 @@ function ExportScript.ProcessDACConfigLowImportance(mainPanelDevice) ExportScript.Tools.WriteToLog('Function Dial '..ExportScript.Tools.dump(mainPanelDevice:get_argument_value(17))) ]] --[[ - Device test, Device 2 to 32 - is value "userdata", is only DLL intern functions + ExportScript.Tools.WriteToLog('list_cockpit_params(): '..ExportScript.Tools.dump(list_cockpit_params())) + ExportScript.Tools.WriteToLog('CMSP: '..ExportScript.Tools.dump(list_indication(7))) + + -- list_indication get tehe value of cockpit displays local ltmp1 = 0 - for ltmp2 = 1, 49, 1 do + for ltmp2 = 0, 20, 1 do + ltmp1 = list_indication(ltmp2) + ExportScript.Tools.WriteToLog(ltmp2..': '..ExportScript.Tools.dump(ltmp1)) + end + ]] +--[[ + -- getmetatable get function name from devices + local ltmp1 = 0 + for ltmp2 = 1, 70, 1 do ltmp1 = GetDevice(ltmp2) ExportScript.Tools.WriteToLog(ltmp2..': '..ExportScript.Tools.dump(ltmp1)) ExportScript.Tools.WriteToLog(ltmp2..' (metatable): '..ExportScript.Tools.dump(getmetatable(ltmp1))) end - ]] - --[[ - ExportScript.Tools.WriteToLog('list_cockpit_params(): '..ExportScript.Tools.dump(list_cockpit_params())) - - local ltmp1 = 0 - for ltmp2 = 1, 8, 1 do - ltmp1 = list_indication(ltmp2) - ExportScript.Tools.WriteToLog(ltmp2..': '..ExportScript.Tools.dump(ltmp1)) - --ExportScript.Tools.WriteToLog(ltmp2..' (metatable): '..ExportScript.Tools.dump(getmetatable(ltmp1))) - end - ]] +]] end \ No newline at end of file diff --git a/Scripts/DCS-ExportScript/lib/Maps.lua b/Scripts/DCS-ExportScript/lib/Maps.lua index d7b57c4..fe079f8 100644 --- a/Scripts/DCS-ExportScript/lib/Maps.lua +++ b/Scripts/DCS-ExportScript/lib/Maps.lua @@ -33,4 +33,10 @@ ExportScript.Maps.Normandy = {} -- Normandy Map ExportScript.Maps.Normandy.Lat1 = 53.85556 -- high left Latitude 53° 51' 20" N ExportScript.Maps.Normandy.Long1 = -15.02667 -- high left Longitude 15° 01' 36" W ExportScript.Maps.Normandy.Lat2 = 45.07167 -- low right Latitude 45° 04' 18" N -ExportScript.Maps.Normandy.Long2 = 8.437222 -- low right Longitude 08° 26' 14" E \ No newline at end of file +ExportScript.Maps.Normandy.Long2 = 8.437222 -- low right Longitude 08° 26' 14" E +-- Persian Gulf Map +ExportScript.Maps.PersianGulf = {} +ExportScript.Maps.PersianGulf.Lat1 = 30.50833 -- high left Latitude 30° 20.630 N +ExportScript.Maps.PersianGulf.Long1 = 45.15167 -- high left Longitude 44° 54.906 E +ExportScript.Maps.PersianGulf.Lat2 = 22.43528 -- low right Latitude 22° 24.127 N +ExportScript.Maps.PersianGulf.Long2 = 61.67306 -- low right Longitude 61° 36.263 E diff --git a/Scripts/DCS-ExportScript/lib/Tools.lua b/Scripts/DCS-ExportScript/lib/Tools.lua index 6e00cfe..8949f33 100644 --- a/Scripts/DCS-ExportScript/lib/Tools.lua +++ b/Scripts/DCS-ExportScript/lib/Tools.lua @@ -1,5 +1,5 @@ -- Ikarus and D.A.C. Export Script --- Version 1.0.1 +-- Version 1.0.2 -- -- Tools -- @@ -667,8 +667,8 @@ function ExportScript.Tools.split(stringvalue, delimiter) return result; end --- the function evaluation of the handover parameters and makes accordingly to the light on or off --- handover parameters, singel id or a table with id's +-- the function checks whether the cockpit light should be activated in ikarus on the basis of the parameters +-- functional parameters, a single ID, or a table with IDs function ExportScript.Tools.IkarusCockpitLights(mainPanelDevice, ExportIDs) local TmpExportIDs = ExportIDs or 0 local TmpLight = false @@ -698,6 +698,66 @@ function ExportScript.Tools.IkarusCockpitLights(mainPanelDevice, ExportIDs) end end +-- The function returns a correctly formatted string with the given radio frequency. +-- Frequency: MHz/KHz, format: e.g. "7.3" or "5.2", fill with leading zeros (default false), least value of frequency (default 0.025 (MHz)) +function ExportScript.Tools.RoundFreqeuncy(Freqeuncy, Format, PrefixZeros, LeastValue) + local freqeuncy = Freqeuncy or 0.0 + local format = Format or "7.3" + local prefixzeros = PrefixZeros or false + local leastvalue = LeastValue or 0.025 + local tmpstring = "" + local tmp1, tmp2, tmp3, tmp4 = 0, 0, 0, 0 + + local from ,to = string.find(format, "%.") + tmp1 = string.sub(format, 0, to) + tmp2 = string.sub(format, to) + tmp1 = tonumber(string.sub(tmp1, string.find(tmp1, "%d+"))) + tmp2 = tonumber(string.sub(tmp2, string.find(tmp2, "%d+"))) + + local tmp3, tmp4 = math.modf(freqeuncy) + local bla3, bla4 = math.modf(tmp4 / leastvalue) + + tmpstring = (tmp3 + (bla3 * leastvalue )) + + tmpstring = string.format("%."..tmp2.."f", tmpstring) + + while string.len(tmpstring) < tmp1 do + tmpstring = " "..tmpstring + end + + if prefixzeros then + tmpstring = string.gsub(tmpstring, " ", "0") + end + + return tmpstring +end + +-- The function return a table with values of given indicator +-- The value is retrievable via a named index. e.g. TmpReturn.txt_digits +function ExportScript.Tools.getListIndicatorValue(IndicatorID) + local ListIindicator = list_indication(IndicatorID) + local TmpReturn = {} + + if ExportScript.Config.Debug then + ExportScript.Tools.WriteToLog('list_indication('..IndicatorID..'): '..ExportScript.Tools.dump(ListIindicator)) + end + + if ListIindicator == "" then + return nil + end + + local ListindicatorMatch = ListIindicator:gmatch("-----------------------------------------\n([^\n]+)\n([^\n]*)\n") + while true do + local Key, Value = ListindicatorMatch() + if not Key then + break + end + TmpReturn[Key] = Value + end + + return TmpReturn +end + -- Pointed to by ExportScript.ProcessIkarusDCSHighImportance, if the player aircraft is something else function ExportScript.ProcessIkarusDCSHighImportanceNoConfig(mainPanelDevice) end diff --git a/Scripts/DCS-ExportScript/lib/genericRadio.lua b/Scripts/DCS-ExportScript/lib/genericRadio.lua index abea2b6..c043a54 100644 --- a/Scripts/DCS-ExportScript/lib/genericRadio.lua +++ b/Scripts/DCS-ExportScript/lib/genericRadio.lua @@ -1,5 +1,5 @@ -- Ikarus and D.A.C. Export Script --- Version 1.0.1 +-- Version 1.0.2 -- -- generic Radio File -- diff --git a/docu/Documentation-in-English.pdf b/docu/Documentation-in-English.pdf index c7ba9a5..771facf 100644 Binary files a/docu/Documentation-in-English.pdf and b/docu/Documentation-in-English.pdf differ diff --git a/docu/Dokumentation-in-Deutsch.pdf b/docu/Dokumentation-in-Deutsch.pdf index 85bc5cd..8971ba6 100644 Binary files a/docu/Dokumentation-in-Deutsch.pdf and b/docu/Dokumentation-in-Deutsch.pdf differ