Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- local log_file = nil
- ImportedMIG21Data = {
- [0]=50, -- Engine RPM Left
- [1]=670, -- Engine RPM Right
- [2]=9, -- Gear Nose Up Light
- [3]=12, -- Gear Nose Down Light
- [4]=10, -- Gear Left Up Light
- [5]=13, -- Gear Left Down Light
- [6]=11, -- Gear Right Up Light
- [7]=14, -- Gear Right Down Light
- [8]=417, -- RSBN Distance
- [9]=548, -- RSBN Azimut Korekcija Light
- [10]=549, -- RSBN Dalnos Korekcija Light
- [11]=176, -- RSBN Switch
- [12]=355, --RSBN Distance Hundreds
- [13]=356, --RSBN Distance Tens
- [14]=357, --RSBN Distance Singles
- [15]=nil, --Altitude above sea level
- [16]=nil, --Altitude above ground level
- [17]=541, --Canopy Warning Light
- [18]=542, --SORC
- [19]=407, --Warning lights check state
- [20]=516, --Marker Light
- [21]=518, --Stablisator_light
- [22]=520, --Check Gear Light
- [23]=521, --Flaps Light
- [24]=522, --Airbrake Light
- [25]=523, --Central Pylon Light
- [26]=524, --RATO L Light
- [27]=525, --RATO R Light
- [28]=526, --PYLON 1 ON Light
- [29]=527, --PYLON 2 ON Light
- [30]=528, --PYLON 3 ON Light
- [31]=529, --PYLON 4 ON Light
- [32]=530, --PYLON 1 OFF Light
- [33]=531, --PYLON 2 OFF Light
- [34]=532, --PYLON 3 OFF Light
- [35]=533, --PYLON 4 OFF Light
- [36]=100, --IAS Indicator
- [37]=52, --Fuel Meter
- [38]=110, --Accelerometer
- [39]=113, --Max_G
- [40]=114 --Min G
- }
- function LuaExportStart()
- MainPanel = GetDevice(0) --Get local player aircraft
- log_file = io.open("C:/Users/Ryan/Saved Games/DCS/Logs/Export.log", "w")
- -- 2) Socket
- local lfs = require("lfs")
- programPath = lfs.realpath(lfs.currentdir())
- package.path = programPath .. "LuaSocket\\?.lua;" .. package.path
- socket = require("socket")
- host = "127.0.0.1"
- port = 1625
- c=socket.udp()
- c:setsockname("*", 0)
- c = socket.try(socket.connect(host, port)) -- connect to the listener socket
- c:settimeout(.001)
- local version = LoGetVersionInfo() --request current version info (as it showed by Windows Explorer for DCS.exe properties)
- --local myInfo = LoGetSelfData()
- --gCurrentAircraft = myInfo.Name
- --socket.try(c:send(string.format("Flying the %", gCurrentAircraft)))
- if version and log_file then
- log_file:write("ProductName: "..version.ProductName..'\n')
- log_file:write(string.format("FileVersion: %d.%d.%d.%d\n", version.FileVersion[1],version.FileVersion[2], version.FileVersion[3],version.FileVersion[4]))
- log_file:write(string.format("ProductVersion: %d.%d.%d.%d\n", version.ProductVersion[1],version.ProductVersion[2],version.ProductVersion[3], version.ProductVersion[4]))
- end
- end
- function LuaExportBeforeNextFrame()
- end
- function LuaExportAfterNextFrame()
- end
- function LuaExportStop()
- -- 1) File
- if log_file then
- log_file:write("Closing log file.")
- log_file:close()
- log_file = nil
- end
- end
- function LuaExportActivityNextEvent(t)
- local tNext = t
- local para = nil
- local tick = 0.2
- para = update_aircraft_paremeters()
- local data_to_send = string.format("%s %.2f %.2f %.2f %d %d %d %d %d %d %.2f %d %d %d %.2f %.2f %.2f %.2f %.2f %.2f",
- "DCS-Client",
- tick,
- para["engine_rpm_left"],
- para["engine_rpm_right"],
- para["gear_nose_up_light"],
- para["gear_nose_down_light"],
- para["gear_left_up_light"],
- para["gear_left_down_light"],
- para["gear_right_up_light"],
- para["gear_right_down_light"],
- para["RSBN_distance_meter"]*1000,
- para["RSBN_azimut_korekcija_LIGHT"],
- para["RSBN_dalnost_korekcija_LIGHT"],
- para["RSBN_switch"],
- para["altitude_above_sea"],
- para["altitude_above_ground"],
- para["IAS_indicator"]*555.55 * 3.6,
- para["FUEL_meter"] * 6000,
- para["Accelerometer"] * 10,
- para["MAX_G"] * 10)
- socket.try(c:send(data_to_send))
- tNext = tNext + tick -- data collected once every second / change this according to preference
- return tNext
- end
- function update_aircraft_paremeters()
- aircraft_parts = {
- ["engine_rpm_left"] = MainPanel:get_argument_value(ImportedMIG21Data[0]) * 110,
- ["engine_rpm_right"] = MainPanel:get_argument_value(ImportedMIG21Data[1]) * 110,
- ["gear_nose_up_light"] = MainPanel:get_argument_value(ImportedMIG21Data[2]),
- ["gear_nose_down_light"] = MainPanel:get_argument_value(ImportedMIG21Data[3]),
- ["gear_left_up_light"] = MainPanel:get_argument_value(ImportedMIG21Data[4]),
- ["gear_left_down_light"] = MainPanel:get_argument_value(ImportedMIG21Data[5]),
- ["gear_right_up_light"] = MainPanel:get_argument_value(ImportedMIG21Data[6]),
- ["gear_right_down_light"] = MainPanel:get_argument_value(ImportedMIG21Data[7]),
- ["RSBN_distance_meter"] = MainPanel:get_argument_value(ImportedMIG21Data[12]) + MainPanel:get_argument_value(ImportedMIG21Data[13])/10 + MainPanel:get_argument_value(ImportedMIG21Data[14])/100,
- ["RSBN_azimut_korekcija_LIGHT"] = MainPanel:get_argument_value(ImportedMIG21Data[9]),
- ["RSBN_dalnost_korekcija_LIGHT"] = MainPanel:get_argument_value(ImportedMIG21Data[10]),
- ["RSBN_switch"] = MainPanel:get_argument_value(ImportedMIG21Data[11]),
- ["altitude_above_sea"] = LoGetAltitudeAboveSeaLevel(),
- ["altitude_above_ground"] = LoGetAltitudeAboveGroundLevel(),
- ["IAS_indicator"] = MainPanel:get_argument_value(ImportedMIG21Data[36]),
- ["FUEL_meter"] = MainPanel:get_argument_value(ImportedMIG21Data[37]),
- ["Accelerometer"] = MainPanel:get_argument_value(ImportedMIG21Data[38]),
- ["MAX_G"] = MainPanel:get_argument_value(ImportedMIG21Data[39])
- }
- return aircraft_parts
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement