diff --git a/mist.lua b/mist.lua index 19ee3b4..ffb822a 100644 --- a/mist.lua +++ b/mist.lua @@ -35,7 +35,7 @@ mist = {} -- don't change these mist.majorVersion = 4 mist.minorVersion = 3 -mist.build = 73 +mist.build = 74 -- forward declaration of log shorthand local log @@ -289,7 +289,7 @@ do -- the main scope ['Focus'] = 4, ['Darkstar'] = 5, }, - ['TANKER'] = { + ['TANKER'] = { ['Texaco'] = 1, ['Arco'] = 2, ['Shell'] = 3, @@ -2629,8 +2629,8 @@ function mist.getUnitsInMovingZones(unit_names, zone_unit_names, radius, zone_ty end function mist.getUnitsLOS(unitset1, altoffset1, unitset2, altoffset2, radius) + log:info("$1, $2, $3, $4, $5", unitset1, altoffset1, unitset2, altoffset2, radius) radius = radius or math.huge - local unit_info1 = {} local unit_info2 = {} @@ -2955,19 +2955,26 @@ do -- group functions scope local newUnits = newGroup:getUnits() for unitNum, unitData in pairs(newGroup:getUnits()) do newData.units[unitNum] = {} - newData.units[unitNum].unitId = tonumber(unitData:getID()) - newData.units[unitNum].point = unitData.point + local uName = unitData:getName() + + if mist.DBs.unitsByName[uName] and unitData:getTypeName() == mist.DBs.unitsByName[uName].type and mist.DBs.unitsByName[uName].unitId == tonumber(unitData:getID()) then -- If old data matches most of new data + newData.units[unitNum] = mist.utils.deepCopy(mist.DBs.unitsByName[uName]) + else + newData.units[unitNum].unitId = tonumber(unitData:getID()) + newData.units[unitNum].type = unitData:getTypeName() + newData.units[unitNum].skill = mist.getUnitSkill(uName) + newData.country = string.lower(country.name[unitData:getCountry()]) + newData.units[unitNum].callsign = unitData:getCallsign() + newData.units[unitNum].unitName = uName + end + newData.units[unitNum].x = unitData:getPosition().p.x newData.units[unitNum].y = unitData:getPosition().p.z - newData.units[unitNum].type = unitData:getTypeName() - newData.units[unitNum].skill = mist.getUnitSkill(unitData:getName()) - - -- get velocity needed - newData.units[unitNum].unitName = unitData:getName() - newData.units[unitNum].heading = mist.getHeading(unitData, true) -- added to DBs + newData.units[unitNum].point = {x = newData.units[unitNum].x, y = newData.units[unitNum].y} + newData.units[unitNum].heading = mist.getHeading(unitData, true) -- added to DBs newData.units[unitNum].alt = unitData:getPosition().p.y - newData.country = string.lower(country.name[unitData:getCountry()]) - newData.units[unitNum].callsign = unitData:getCallsign() + newData.units[unitNum].speed = mist.vec.mag(unitData:getVelocity()) + end return newData @@ -6027,6 +6034,7 @@ do -- group tasks scope -- function mist.ground.buildPath() end -- ???? function mist.ground.patrolRoute(vars) + log:info('patrol') local tempRoute = {} local useRoute = {} local gpData = vars.gpData @@ -6117,9 +6125,9 @@ do -- group tasks scope }, }, } - - + useRoute[#useRoute].task = tempTask + log:info(useRoute) mist.goRoute(gpData, useRoute) return diff --git a/mist_4_3_73.lua b/mist_4_3_74.lua similarity index 99% rename from mist_4_3_73.lua rename to mist_4_3_74.lua index 19ee3b4..ffb822a 100644 --- a/mist_4_3_73.lua +++ b/mist_4_3_74.lua @@ -35,7 +35,7 @@ mist = {} -- don't change these mist.majorVersion = 4 mist.minorVersion = 3 -mist.build = 73 +mist.build = 74 -- forward declaration of log shorthand local log @@ -289,7 +289,7 @@ do -- the main scope ['Focus'] = 4, ['Darkstar'] = 5, }, - ['TANKER'] = { + ['TANKER'] = { ['Texaco'] = 1, ['Arco'] = 2, ['Shell'] = 3, @@ -2629,8 +2629,8 @@ function mist.getUnitsInMovingZones(unit_names, zone_unit_names, radius, zone_ty end function mist.getUnitsLOS(unitset1, altoffset1, unitset2, altoffset2, radius) + log:info("$1, $2, $3, $4, $5", unitset1, altoffset1, unitset2, altoffset2, radius) radius = radius or math.huge - local unit_info1 = {} local unit_info2 = {} @@ -2955,19 +2955,26 @@ do -- group functions scope local newUnits = newGroup:getUnits() for unitNum, unitData in pairs(newGroup:getUnits()) do newData.units[unitNum] = {} - newData.units[unitNum].unitId = tonumber(unitData:getID()) - newData.units[unitNum].point = unitData.point + local uName = unitData:getName() + + if mist.DBs.unitsByName[uName] and unitData:getTypeName() == mist.DBs.unitsByName[uName].type and mist.DBs.unitsByName[uName].unitId == tonumber(unitData:getID()) then -- If old data matches most of new data + newData.units[unitNum] = mist.utils.deepCopy(mist.DBs.unitsByName[uName]) + else + newData.units[unitNum].unitId = tonumber(unitData:getID()) + newData.units[unitNum].type = unitData:getTypeName() + newData.units[unitNum].skill = mist.getUnitSkill(uName) + newData.country = string.lower(country.name[unitData:getCountry()]) + newData.units[unitNum].callsign = unitData:getCallsign() + newData.units[unitNum].unitName = uName + end + newData.units[unitNum].x = unitData:getPosition().p.x newData.units[unitNum].y = unitData:getPosition().p.z - newData.units[unitNum].type = unitData:getTypeName() - newData.units[unitNum].skill = mist.getUnitSkill(unitData:getName()) - - -- get velocity needed - newData.units[unitNum].unitName = unitData:getName() - newData.units[unitNum].heading = mist.getHeading(unitData, true) -- added to DBs + newData.units[unitNum].point = {x = newData.units[unitNum].x, y = newData.units[unitNum].y} + newData.units[unitNum].heading = mist.getHeading(unitData, true) -- added to DBs newData.units[unitNum].alt = unitData:getPosition().p.y - newData.country = string.lower(country.name[unitData:getCountry()]) - newData.units[unitNum].callsign = unitData:getCallsign() + newData.units[unitNum].speed = mist.vec.mag(unitData:getVelocity()) + end return newData @@ -6027,6 +6034,7 @@ do -- group tasks scope -- function mist.ground.buildPath() end -- ???? function mist.ground.patrolRoute(vars) + log:info('patrol') local tempRoute = {} local useRoute = {} local gpData = vars.gpData @@ -6117,9 +6125,9 @@ do -- group tasks scope }, }, } - - + useRoute[#useRoute].task = tempTask + log:info(useRoute) mist.goRoute(gpData, useRoute) return diff --git a/rev changelog.txt b/rev changelog.txt index 2669868..7667a2f 100644 --- a/rev changelog.txt +++ b/rev changelog.txt @@ -1,3 +1,6 @@ +v74 +-fixed mist.getCurrentGroupData to return more data + v73 -fixed mist.time.getDate to account for changes made to the mission file format related to how the mission start time and date are saved. Also added in code to correctly account for leap years. - fixed issue in DB updating checking the incorrect value