diff --git a/mods/d2k/bits/assaultmove.shp b/mods/d2k/bits/assaultmove.shp new file mode 100644 index 0000000000..19c5da5991 Binary files /dev/null and b/mods/d2k/bits/assaultmove.shp differ diff --git a/mods/d2k/bits/attackmove.shp b/mods/d2k/bits/attackmove.shp new file mode 100644 index 0000000000..2b60c8c604 Binary files /dev/null and b/mods/d2k/bits/attackmove.shp differ diff --git a/mods/d2k/chrome/ingame-player.yaml b/mods/d2k/chrome/ingame-player.yaml index ccdacd48b2..a5cbb959a2 100644 --- a/mods/d2k/chrome/ingame-player.yaml +++ b/mods/d2k/chrome/ingame-player.yaml @@ -39,8 +39,9 @@ Container@PLAYER_WIDGETS: Key: AttackMove DisableKeySound: true TooltipText: Attack Move - TooltipDesc: Selected units will move to the desired location\nand attack any enemies they encounter en route.\n\nLeft-click icon then right-click on target location. + TooltipDesc: Selected units will move to the desired location\nand attack any enemies they encounter en route.\n\nHold {(Ctrl)} while targeting to order an Assault Move\nthat attacks any units or structures encountered en route.\n\nLeft-click icon then right-click on target location. TooltipContainer: TOOLTIP_CONTAINER + TooltipTemplate: BUTTON_WITH_DESC_HIGHLIGHT_TOOLTIP Children: Image@ICON: X: 4 diff --git a/mods/d2k/cursors.yaml b/mods/d2k/cursors.yaml index eda5cde70c..d3c031f5e6 100644 --- a/mods/d2k/cursors.yaml +++ b/mods/d2k/cursors.yaml @@ -128,26 +128,6 @@ Cursors: Length: 8 X: 24 Y: 24 - attackmove: - Start: 16 - Length: 8 - X: 24 - Y: 24 - attackmove-minimap: - Start: 16 - Length: 8 - X: 24 - Y: 24 - assaultmove: - Start: 16 - Length: 8 - X: 24 - Y: 24 - assaultmove-minimap: - Start: 16 - Length: 8 - X: 24 - Y: 24 harvest: Start: 16 Length: 8 @@ -315,3 +295,25 @@ Cursors: Length: 3 X: 12 Y: 12 + attackmove.shp: mouse + attackmove: + Start: 0 + Length: 8 + X: -2 + Y: -2 + attackmove-minimap: + Start: 0 + Length: 8 + X: -2 + Y: -2 + assaultmove.shp: mouse + assaultmove: + Start: 0 + Length: 8 + X: -2 + Y: -2 + assaultmove-minimap: + Start: 0 + Length: 8 + X: -2 + Y: -2 \ No newline at end of file diff --git a/mods/d2k/rules/defaults.yaml b/mods/d2k/rules/defaults.yaml index de50abb5e2..a49620f1d9 100644 --- a/mods/d2k/rules/defaults.yaml +++ b/mods/d2k/rules/defaults.yaml @@ -132,6 +132,15 @@ ValidTargets: Infantry, Vehicle, Creep, Water, Structure, Defense InvalidTargets: NoAutoTarget +^AutoTargetGroundAssaultMove: + Inherits: ^AutoTargetGround + AutoTargetPriority@DEFAULT: + RequiresCondition: !stance-attackanything && !assault-move + AutoTargetPriority@ATTACKANYTHING: + RequiresCondition: stance-attackanything || assault-move + AttackMove: + AssaultMoveScanCondition: assault-move + ^AutoTargetAll: AutoTarget: AttackAnythingCondition: stance-attackanything @@ -144,6 +153,15 @@ ValidTargets: Infantry, Vehicle, Creep, Water, Air, Structure, Defense InvalidTargets: NoAutoTarget +^AutoTargetAllAssaultMove: + Inherits: ^AutoTargetAll + AutoTargetPriority@DEFAULT: + RequiresCondition: !stance-attackanything && !assault-move + AutoTargetPriority@ATTACKANYTHING: + RequiresCondition: stance-attackanything || assault-move + AttackMove: + AssaultMoveScanCondition: assault-move + ^Vehicle: Inherits@1: ^ExistsInWorld Inherits@2: ^GainsExperience diff --git a/mods/d2k/rules/infantry.yaml b/mods/d2k/rules/infantry.yaml index 54429e29e0..b83312be0b 100644 --- a/mods/d2k/rules/infantry.yaml +++ b/mods/d2k/rules/infantry.yaml @@ -1,6 +1,6 @@ light_inf: Inherits: ^Infantry - Inherits@AUTOTARGET: ^AutoTargetGround + Inherits@AUTOTARGET: ^AutoTargetGroundAssaultMove Buildable: Queue: Infantry BuildPaletteOrder: 10 @@ -50,7 +50,7 @@ engineer: trooper: Inherits: ^Infantry - Inherits@AUTOTARGET: ^AutoTargetGround + Inherits@AUTOTARGET: ^AutoTargetGroundAssaultMove Buildable: Queue: Infantry BuildPaletteOrder: 20 @@ -124,7 +124,7 @@ thumper: fremen: Inherits: ^Infantry - Inherits@AUTOTARGET: ^AutoTargetGround + Inherits@AUTOTARGET: ^AutoTargetGroundAssaultMove Tooltip: Name: Fremen Buildable: @@ -166,7 +166,7 @@ fremen: grenadier: Inherits: ^Infantry - Inherits@AUTOTARGET: ^AutoTargetGround + Inherits@AUTOTARGET: ^AutoTargetGroundAssaultMove Buildable: Queue: Infantry BuildPaletteOrder: 80 @@ -197,7 +197,7 @@ grenadier: sardaukar: Inherits: ^Infantry - Inherits@AUTOTARGET: ^AutoTargetGround + Inherits@AUTOTARGET: ^AutoTargetGroundAssaultMove Buildable: Queue: Infantry BuildPaletteOrder: 80 diff --git a/mods/d2k/rules/vehicles.yaml b/mods/d2k/rules/vehicles.yaml index 0fe8810f15..863cf45404 100644 --- a/mods/d2k/rules/vehicles.yaml +++ b/mods/d2k/rules/vehicles.yaml @@ -100,7 +100,7 @@ harvester: trike: Inherits: ^Vehicle - Inherits@AUTOTARGET: ^AutoTargetGround + Inherits@AUTOTARGET: ^AutoTargetGroundAssaultMove Buildable: Queue: Vehicle BuildPaletteOrder: 10 @@ -140,7 +140,7 @@ trike: quad: Inherits: ^Vehicle - Inherits@AUTOTARGET: ^AutoTargetGround + Inherits@AUTOTARGET: ^AutoTargetGroundAssaultMove Buildable: Queue: Vehicle Prerequisites: upgrade.light, ~techlevel.medium @@ -175,7 +175,7 @@ quad: siege_tank: Inherits: ^Tank - Inherits@AUTOTARGET: ^AutoTargetGround + Inherits@AUTOTARGET: ^AutoTargetGroundAssaultMove Buildable: Queue: Armor Prerequisites: upgrade.heavy, ~techlevel.medium @@ -222,7 +222,7 @@ siege_tank: missile_tank: Inherits: ^Tank - Inherits@AUTOTARGET: ^AutoTargetAll + Inherits@AUTOTARGET: ^AutoTargetAllAssaultMove Tooltip: Name: Missile Tank Buildable: @@ -261,7 +261,7 @@ missile_tank: sonic_tank: Inherits: ^Vehicle - Inherits@AUTOTARGET: ^AutoTargetGround + Inherits@AUTOTARGET: ^AutoTargetGroundAssaultMove Buildable: Queue: Armor BuildPaletteOrder: 100 @@ -296,7 +296,7 @@ sonic_tank: devastator: Inherits: ^Tank - Inherits@AUTOTARGET: ^AutoTargetGround + Inherits@AUTOTARGET: ^AutoTargetGroundAssaultMove Buildable: Queue: Armor BuildPaletteOrder: 100 @@ -341,7 +341,7 @@ devastator: raider: Inherits: ^Vehicle - Inherits@AUTOTARGET: ^AutoTargetGround + Inherits@AUTOTARGET: ^AutoTargetGroundAssaultMove Buildable: Queue: Vehicle BuildPaletteOrder: 10 @@ -405,7 +405,7 @@ stealth_raider: deviator: Inherits: ^Tank - Inherits@AUTOTARGET: ^AutoTargetGround + Inherits@AUTOTARGET: ^AutoTargetGroundAssaultMove Valued: Cost: 1000 Tooltip: @@ -442,7 +442,7 @@ deviator: ^combat_tank: Inherits: ^Tank - Inherits@AUTOTARGET: ^AutoTargetGround + Inherits@AUTOTARGET: ^AutoTargetGroundAssaultMove Buildable: Queue: Armor BuildPaletteOrder: 40