diff --git a/gamedata/alldefs_post.lua b/gamedata/alldefs_post.lua index 0ce55abd210..23cf1e820a3 100644 --- a/gamedata/alldefs_post.lua +++ b/gamedata/alldefs_post.lua @@ -812,6 +812,7 @@ function UnitDef_Post(name, uDef) categories["MINE"] = function(uDef) return uDef.weapondefs and uDef.weapondefs.minerange end categories["COMMANDER"] = function(uDef) return commanderList[uDef.movementclass] end categories["EMPABLE"] = function(uDef) return categories.SURFACE(uDef) and uDef.customparams and uDef.customparams.paralyzemultiplier ~= 0 end + categories["SURFACERAIDER"] = function(uDef) return not uDef.workertime and uDef.speed and uDef.speed > 70 and not (categories.UNDERWATER(uDef) and categories.MOBILE(uDef)) and not categories.VTOL(uDef) end --78 is the speed of rezbots, the fastest intentional exclusion. uDef.category = uDef.category or "" if not string.find(uDef.category, "OBJECT") then -- objects should not be targetable and therefore are not assigned any other category diff --git a/units/ArmBuildings/LandDefenceOffence/armamb.lua b/units/ArmBuildings/LandDefenceOffence/armamb.lua index e772e415303..76727453bab 100644 --- a/units/ArmBuildings/LandDefenceOffence/armamb.lua +++ b/units/ArmBuildings/LandDefenceOffence/armamb.lua @@ -210,19 +210,17 @@ return { }, weapons = { [1] = { - badtargetcategory = "VTOL GROUNDSCOUT", def = "ARMAMB_GUN", maindir = "0 1 0", maxangledif = 230, onlytargetcategory = "SURFACE", }, [2] = { - badtargetcategory = "VTOL GROUNDSCOUT", + badtargetcategory = "SURFACERAIDER", def = "ARMAMB_GUN_HIGH", onlytargetcategory = "SURFACE", }, [3] = { - badtargetcategory = "VTOL GROUNDSCOUT", def = "smart_trajectory_dummy", maindir = "0 1 0", maxangledif = 230, diff --git a/units/ArmBuildings/LandDefenceOffence/armguard.lua b/units/ArmBuildings/LandDefenceOffence/armguard.lua index 6ab26ac9e8f..ee1e2d7e7ba 100644 --- a/units/ArmBuildings/LandDefenceOffence/armguard.lua +++ b/units/ArmBuildings/LandDefenceOffence/armguard.lua @@ -202,18 +202,17 @@ return { }, weapons = { [1] = { - badtargetcategory = "VTOL", def = "PLASMA", maindir = "0 1 0", maxangledif = 230, onlytargetcategory = "SURFACE", }, [2] = { + badtargetcategory = "SURFACERAIDER", def = "PLASMA_HIGH", onlytargetcategory = "SURFACE", }, [3] = { - badtargetcategory = "VTOL", def = "smart_trajectory_dummy", maindir = "0 1 0", maxangledif = 230, diff --git a/units/ArmGantry/armvang.lua b/units/ArmGantry/armvang.lua index 63bcc1330b4..9f26dc72990 100644 --- a/units/ArmGantry/armvang.lua +++ b/units/ArmGantry/armvang.lua @@ -222,17 +222,15 @@ return { }, weapons = { [1] = { - badtargetcategory = "VTOL GROUNDSCOUT", def = "SHOCKER_LOW", onlytargetcategory = "SURFACE", }, [2] = { - badtargetcategory = "VTOL GROUNDSCOUT", + badtargetcategory = "SURFACERAIDER", def = "SHOCKER_HIGH", onlytargetcategory = "SURFACE", }, [3] = { - badtargetcategory = "VTOL GROUNDSCOUT", def = "smart_trajectory_dummy", onlytargetcategory = "SURFACE", }, diff --git a/units/CorBuildings/LandDefenceOffence/corpun.lua b/units/CorBuildings/LandDefenceOffence/corpun.lua index 6d8f31fcc42..19afda50287 100644 --- a/units/CorBuildings/LandDefenceOffence/corpun.lua +++ b/units/CorBuildings/LandDefenceOffence/corpun.lua @@ -204,18 +204,17 @@ return { }, weapons = { [1] = { - badtargetcategory = "VTOL", def = "PLASMA", maindir = "0 1 0", maxangledif = 230, onlytargetcategory = "SURFACE", }, [2] = { + badtargetcategory = "SURFACERAIDER", def = "PLASMA_HIGH", onlytargetcategory = "SURFACE", }, [3] = { - badtargetcategory = "VTOL", def = "smart_trajectory_dummy", maindir = "0 1 0", maxangledif = 230, diff --git a/units/CorBuildings/LandDefenceOffence/cortoast.lua b/units/CorBuildings/LandDefenceOffence/cortoast.lua index 62171c8c561..3d0535eefc1 100644 --- a/units/CorBuildings/LandDefenceOffence/cortoast.lua +++ b/units/CorBuildings/LandDefenceOffence/cortoast.lua @@ -211,19 +211,17 @@ return { }, weapons = { [1] = { - badtargetcategory = "VTOL GROUNDSCOUT", def = "CORTOAST_GUN", maindir = "0 1 0", maxangledif = 230, onlytargetcategory = "SURFACE", }, [2] = { - badtargetcategory = "VTOL GROUNDSCOUT", + badtargetcategory = "SURFACERAIDER", def = "CORTOAST_GUN_HIGH", onlytargetcategory = "SURFACE", }, [3] = { - badtargetcategory = "VTOL GROUNDSCOUT", def = "smart_trajectory_dummy", maindir = "0 1 0", maxangledif = 230, diff --git a/units/Legion/Defenses/legacluster.lua b/units/Legion/Defenses/legacluster.lua index 205755b3715..ce121046506 100644 --- a/units/Legion/Defenses/legacluster.lua +++ b/units/Legion/Defenses/legacluster.lua @@ -249,18 +249,17 @@ return { }, weapons = { [1] = { - badtargetcategory = "VTOL", def = "PLASMA", maindir = "0 1 0", maxangledif = 230, onlytargetcategory = "SURFACE", }, [2] = { + badtargetcategory = "SURFACERAIDER", def = "PLASMA_HIGH", onlytargetcategory = "SURFACE", }, [3] = { - badtargetcategory = "VTOL", def = "smart_trajectory_dummy", maindir = "0 1 0", maxangledif = 230, diff --git a/units/Legion/Defenses/legcluster.lua b/units/Legion/Defenses/legcluster.lua index 907c2082c22..dc10aaea7e3 100644 --- a/units/Legion/Defenses/legcluster.lua +++ b/units/Legion/Defenses/legcluster.lua @@ -236,18 +236,17 @@ return { }, weapons = { [1] = { - badtargetcategory = "VTOL", def = "PLASMA", maindir = "0 1 0", maxangledif = 230, onlytargetcategory = "SURFACE", }, [2] = { + badtargetcategory = "SURFACERAIDER", def = "PLASMA_HIGH", onlytargetcategory = "SURFACE", }, [3] = { - badtargetcategory = "VTOL", def = "smart_trajectory_dummy", maindir = "0 1 0", maxangledif = 230,