Remove AttackFrontal's FacingTolerance and define it explicitly in rules

This commit is contained in:
abcdefg30
2022-01-07 02:36:27 +01:00
committed by abcdefg30
parent 9049ae6f20
commit 889425ab0f
21 changed files with 65 additions and 3 deletions

View File

@@ -18,9 +18,6 @@ namespace OpenRA.Mods.Common.Traits
[Desc("Unit got to face the target")] [Desc("Unit got to face the target")]
public class AttackFrontalInfo : AttackBaseInfo, Requires<IFacingInfo> public class AttackFrontalInfo : AttackBaseInfo, Requires<IFacingInfo>
{ {
[Desc("Tolerance for attack angle. Range [0, 512], 512 covers 360 degrees.")]
public new readonly WAngle FacingTolerance = WAngle.Zero;
public override object Create(ActorInitializer init) { return new AttackFrontal(init.Self, this); } public override object Create(ActorInitializer init) { return new AttackFrontal(init.Self, this); }
} }

View File

@@ -456,6 +456,7 @@
IdleSequences: idle1, idle2 IdleSequences: idle1, idle2
StandSequences: stand, stand2 StandSequences: stand, stand2
AttackFrontal: AttackFrontal:
FacingTolerance: 0
^CivInfantry: ^CivInfantry:
Inherits: ^Infantry Inherits: ^Infantry
@@ -491,6 +492,7 @@
Armament: Armament:
Weapon: Pistol Weapon: Pistol
AttackFrontal: AttackFrontal:
FacingTolerance: 0
WithInfantryBody: WithInfantryBody:
DefaultAttackSequence: shoot DefaultAttackSequence: shoot
@@ -540,6 +542,7 @@
Voice: Attack Voice: Attack
AttackFrontal: AttackFrontal:
Voice: Attack Voice: Attack
FacingTolerance: 0
DeathSounds: DeathSounds:
Voiced: Voiced:
VoiceSet: DinoVoice VoiceSet: DinoVoice
@@ -587,6 +590,7 @@
MuzzleSequence: muzzle MuzzleSequence: muzzle
AttackFrontal: AttackFrontal:
Voice: Attack Voice: Attack
FacingTolerance: 0
BodyOrientation: BodyOrientation:
QuantizedFacings: 8 QuantizedFacings: 8
WithSpriteBody: WithSpriteBody:

View File

@@ -24,6 +24,7 @@ E1:
Weapon: M16 Weapon: M16
AttackFrontal: AttackFrontal:
Voice: Attack Voice: Attack
FacingTolerance: 0
AttackMove: AttackMove:
Voice: Attack Voice: Attack
WithInfantryBody: WithInfantryBody:
@@ -58,6 +59,7 @@ E2:
FireDelay: 15 FireDelay: 15
AttackFrontal: AttackFrontal:
Voice: Attack Voice: Attack
FacingTolerance: 0
AttackMove: AttackMove:
Voice: Attack Voice: Attack
TakeCover: TakeCover:
@@ -97,6 +99,7 @@ E3:
FireDelay: 5 FireDelay: 5
AttackFrontal: AttackFrontal:
Voice: Attack Voice: Attack
FacingTolerance: 0
AttackMove: AttackMove:
Voice: Attack Voice: Attack
TakeCover: TakeCover:
@@ -133,6 +136,7 @@ E4:
MuzzleSequence: muzzle MuzzleSequence: muzzle
AttackFrontal: AttackFrontal:
Voice: Attack Voice: Attack
FacingTolerance: 0
AttackMove: AttackMove:
Voice: Attack Voice: Attack
TakeCover: TakeCover:
@@ -171,6 +175,7 @@ E5:
MuzzleSequence: muzzle MuzzleSequence: muzzle
AttackFrontal: AttackFrontal:
Voice: Attack Voice: Attack
FacingTolerance: 0
AttackMove: AttackMove:
Voice: Attack Voice: Attack
TakeCover: TakeCover:

View File

@@ -211,6 +211,7 @@ ARTY:
TargetFrozenActors: True TargetFrozenActors: True
ForceFireIgnoresActors: True ForceFireIgnoresActors: True
Voice: Attack Voice: Attack
FacingTolerance: 0
AttackMove: AttackMove:
Voice: Attack Voice: Attack
WithMuzzleOverlay: WithMuzzleOverlay:
@@ -257,6 +258,7 @@ FTNK:
MuzzleSequence: muzzle MuzzleSequence: muzzle
AttackFrontal: AttackFrontal:
Voice: Attack Voice: Attack
FacingTolerance: 0
AttackMove: AttackMove:
Voice: Attack Voice: Attack
WithMuzzleOverlay: WithMuzzleOverlay:
@@ -347,6 +349,7 @@ BIKE:
LocalYaw: 100, -100 LocalYaw: 100, -100
AttackFrontal: AttackFrontal:
Voice: Attack Voice: Attack
FacingTolerance: 0
AttackMove: AttackMove:
Voice: Attack Voice: Attack
SpawnActorOnDeath: SpawnActorOnDeath:
@@ -600,6 +603,7 @@ MSAM:
TargetFrozenActors: True TargetFrozenActors: True
ForceFireIgnoresActors: True ForceFireIgnoresActors: True
Voice: Attack Voice: Attack
FacingTolerance: 0
AttackMove: AttackMove:
Voice: Attack Voice: Attack
WithSpriteTurret: WithSpriteTurret:
@@ -717,6 +721,7 @@ STNK:
LocalOffset: 213,43,128, 213,-43,128 LocalOffset: 213,43,128, 213,-43,128
AttackFrontal: AttackFrontal:
Voice: Attack Voice: Attack
FacingTolerance: 0
AttackMove: AttackMove:
Voice: Attack Voice: Attack
AutoTarget: AutoTarget:

View File

@@ -376,6 +376,7 @@
MapEditorData: MapEditorData:
Categories: Infantry Categories: Infantry
AttackFrontal: AttackFrontal:
FacingTolerance: 0
^Plane: ^Plane:
Inherits@1: ^ExistsInWorld Inherits@1: ^ExistsInWorld

View File

@@ -142,6 +142,7 @@ trike:
LocalOffset: -544,0,0 LocalOffset: -544,0,0
MuzzleSequence: muzzle MuzzleSequence: muzzle
AttackFrontal: AttackFrontal:
FacingTolerance: 0
Explodes: Explodes:
Weapon: UnitExplodeSmall Weapon: UnitExplodeSmall
EmptyWeapon: UnitExplodeSmall EmptyWeapon: UnitExplodeSmall
@@ -178,6 +179,7 @@ quad:
Weapon: Rocket Weapon: Rocket
LocalOffset: 128,64,64, 128,-64,64 LocalOffset: 128,64,64, 128,-64,64
AttackFrontal: AttackFrontal:
FacingTolerance: 0
Explodes: Explodes:
Weapon: UnitExplodeSmall Weapon: UnitExplodeSmall
EmptyWeapon: UnitExplodeSmall EmptyWeapon: UnitExplodeSmall
@@ -222,6 +224,7 @@ siege_tank:
LocalOffset: 512,0,320 LocalOffset: 512,0,320
MuzzleSequence: muzzle MuzzleSequence: muzzle
AttackFrontal: AttackFrontal:
FacingTolerance: 0
WithMuzzleOverlay: WithMuzzleOverlay:
WithSpriteTurret: WithSpriteTurret:
Explodes: Explodes:
@@ -268,6 +271,7 @@ missile_tank:
Weapon: mtank_pri Weapon: mtank_pri
LocalOffset: -128,128,171, -128,-128,171 LocalOffset: -128,128,171, -128,-128,171
AttackFrontal: AttackFrontal:
FacingTolerance: 0
AutoTarget: AutoTarget:
InitialStanceAI: Defend InitialStanceAI: Defend
Explodes: Explodes:
@@ -312,6 +316,7 @@ sonic_tank:
Weapon: Sound Weapon: Sound
LocalOffset: 600,0,427 LocalOffset: 600,0,427
AttackFrontal: AttackFrontal:
FacingTolerance: 0
Explodes: Explodes:
Weapon: UnitExplodeLarge Weapon: UnitExplodeLarge
EmptyWeapon: UnitExplodeLarge EmptyWeapon: UnitExplodeLarge
@@ -358,6 +363,7 @@ devastator:
LocalOffset: 640,0,32 LocalOffset: 640,0,32
MuzzleSequence: muzzle MuzzleSequence: muzzle
AttackFrontal: AttackFrontal:
FacingTolerance: 0
WithMuzzleOverlay: WithMuzzleOverlay:
IgnoreOffset: true IgnoreOffset: true
Explodes: Explodes:
@@ -429,6 +435,7 @@ raider:
LocalOffset: 170,0,0 LocalOffset: 170,0,0
MuzzleSequence: muzzle MuzzleSequence: muzzle
AttackFrontal: AttackFrontal:
FacingTolerance: 0
Explodes: Explodes:
Weapon: UnitExplodeSmall Weapon: UnitExplodeSmall
EmptyWeapon: UnitExplodeSmall EmptyWeapon: UnitExplodeSmall
@@ -493,6 +500,7 @@ deviator:
Weapon: DeviatorMissile Weapon: DeviatorMissile
LocalOffset: -299,0,85 LocalOffset: -299,0,85
AttackFrontal: AttackFrontal:
FacingTolerance: 0
AutoTarget: AutoTarget:
InitialStanceAI: Defend InitialStanceAI: Defend
Explodes: Explodes:

View File

@@ -52,6 +52,7 @@ LST:
Name: secondary Name: secondary
Weapon: M60mg Weapon: M60mg
AttackFrontal: AttackFrontal:
FacingTolerance: 0
WithMuzzleOverlay: WithMuzzleOverlay:
MustBeDestroyed: MustBeDestroyed:
RequiredForShortGame: true RequiredForShortGame: true

View File

@@ -28,6 +28,7 @@ VOLK:
Voice: Action Voice: Action
AttackFrontal: AttackFrontal:
Voice: Action Voice: Action
FacingTolerance: 0
AttackMove: AttackMove:
Voice: Action Voice: Action
Passenger: Passenger:

View File

@@ -142,6 +142,7 @@ VOLK:
Voice: Action Voice: Action
AttackFrontal: AttackFrontal:
Voice: Action Voice: Action
FacingTolerance: 0
AttackMove: AttackMove:
Voice: Action Voice: Action
Passenger: Passenger:

View File

@@ -450,6 +450,7 @@
IdleSequences: idle1,idle2 IdleSequences: idle1,idle2
StandSequences: stand,stand2 StandSequences: stand,stand2
AttackFrontal: AttackFrontal:
FacingTolerance: 0
^CivInfantry: ^CivInfantry:
Inherits: ^Infantry Inherits: ^Infantry
@@ -480,6 +481,7 @@
Armament: Armament:
Weapon: Pistol Weapon: Pistol
AttackFrontal: AttackFrontal:
FacingTolerance: 0
WithInfantryBody: WithInfantryBody:
DefaultAttackSequence: shoot DefaultAttackSequence: shoot

View File

@@ -511,6 +511,7 @@ MECH:
ForceTargetRelationships: None ForceTargetRelationships: None
AttackFrontal: AttackFrontal:
Voice: Action Voice: Action
FacingTolerance: 0
CaptureManager: CaptureManager:
Captures: Captures:
CaptureTypes: husk CaptureTypes: husk
@@ -574,6 +575,7 @@ GNRL:
Voice: Move Voice: Move
AttackFrontal: AttackFrontal:
Voice: Attack Voice: Attack
FacingTolerance: 0
AttackMove: AttackMove:
Voice: Move Voice: Move
Passenger: Passenger:
@@ -682,6 +684,7 @@ SHOK:
ProneOffset: 227,0,-245 ProneOffset: 227,0,-245
AttackFrontal: AttackFrontal:
Voice: Attack Voice: Attack
FacingTolerance: 0
AttackMove: AttackMove:
Voice: Move Voice: Move
Passenger: Passenger:
@@ -818,6 +821,7 @@ Ant:
AutoTarget: AutoTarget:
ScanRadius: 5 ScanRadius: 5
AttackFrontal: AttackFrontal:
FacingTolerance: 0
WithInfantryBody: WithInfantryBody:
DefaultAttackSequence: bite DefaultAttackSequence: bite
Armament: Armament:

View File

@@ -49,6 +49,7 @@ SS:
LocalOffset: 0,-171,0, 0,171,0 LocalOffset: 0,-171,0, 0,171,0
FireDelay: 2 FireDelay: 2
AttackFrontal: AttackFrontal:
FacingTolerance: 0
AutoTargetPriority@DEFAULT: AutoTargetPriority@DEFAULT:
ValidTargets: WaterActor, Underwater ValidTargets: WaterActor, Underwater
InvalidTargets: NoAutoTarget, Structure InvalidTargets: NoAutoTarget, Structure
@@ -122,6 +123,7 @@ MSUB:
AttackFrontal: AttackFrontal:
TargetFrozenActors: True TargetFrozenActors: True
ForceFireIgnoresActors: True ForceFireIgnoresActors: True
FacingTolerance: 0
AutoTarget: AutoTarget:
InitialStance: HoldFire InitialStance: HoldFire
InitialStanceAI: ReturnFire InitialStanceAI: ReturnFire

View File

@@ -33,6 +33,7 @@ V2RL:
AttackFrontal: AttackFrontal:
TargetFrozenActors: True TargetFrozenActors: True
ForceFireIgnoresActors: True ForceFireIgnoresActors: True
FacingTolerance: 0
WithFacingSpriteBody: WithFacingSpriteBody:
RequiresCondition: !reloading RequiresCondition: !reloading
Name: loaded Name: loaded
@@ -276,6 +277,7 @@ ARTY:
AttackFrontal: AttackFrontal:
TargetFrozenActors: True TargetFrozenActors: True
ForceFireIgnoresActors: True ForceFireIgnoresActors: True
FacingTolerance: 0
WithMuzzleOverlay: WithMuzzleOverlay:
Explodes: Explodes:
Weapon: ArtilleryExplode Weapon: ArtilleryExplode
@@ -464,6 +466,7 @@ APC:
LocalOffset: 85,0,171 LocalOffset: 85,0,171
MuzzleSequence: muzzle MuzzleSequence: muzzle
AttackFrontal: AttackFrontal:
FacingTolerance: 0
WithMuzzleOverlay: WithMuzzleOverlay:
Cargo: Cargo:
Types: Infantry Types: Infantry
@@ -786,6 +789,7 @@ CTNK:
LocalOffset: -160,276,232 LocalOffset: -160,276,232
LocalYaw: -60 LocalYaw: -60
AttackFrontal: AttackFrontal:
FacingTolerance: 0
PortableChrono: PortableChrono:
ChargeDelay: 250 ChargeDelay: 250
ProducibleWithLevel: ProducibleWithLevel:

View File

@@ -50,6 +50,7 @@ SLAV:
Description: Religious loyalist\narmed with sniper rifle. Description: Religious loyalist\narmed with sniper rifle.
AttackFrontal: AttackFrontal:
Voice: Attack Voice: Attack
FacingTolerance: 0
Armament: Armament:
Weapon: Sniper Weapon: Sniper

View File

@@ -19,6 +19,7 @@ WEEDGUY:
ProneOffset: 128,0,-320 ProneOffset: 128,0,-320
AttackFrontal: AttackFrontal:
Voice: Attack Voice: Attack
FacingTolerance: 0
-SpawnActorOnDeath@FLAMEGUY: -SpawnActorOnDeath@FLAMEGUY:
WithDeathAnimation@fire: WithDeathAnimation@fire:
DeathSequence: die- DeathSequence: die-
@@ -48,6 +49,7 @@ UMAGON:
Weapon: Sniper Weapon: Sniper
AttackFrontal: AttackFrontal:
Voice: Attack Voice: Attack
FacingTolerance: 0
WithSplitAttackPaletteInfantryBody: WithSplitAttackPaletteInfantryBody:
DefaultAttackSequence: attack DefaultAttackSequence: attack
ProducibleWithLevel: ProducibleWithLevel:
@@ -106,6 +108,7 @@ MUTANT:
Weapon: Vulcan Weapon: Vulcan
AttackFrontal: AttackFrontal:
Voice: Attack Voice: Attack
FacingTolerance: 0
WithSplitAttackPaletteInfantryBody: WithSplitAttackPaletteInfantryBody:
DefaultAttackSequence: attack DefaultAttackSequence: attack
ProducibleWithLevel: ProducibleWithLevel:
@@ -133,6 +136,7 @@ MWMN:
Weapon: Vulcan Weapon: Vulcan
AttackFrontal: AttackFrontal:
Voice: Attack Voice: Attack
FacingTolerance: 0
WithSplitAttackPaletteInfantryBody: WithSplitAttackPaletteInfantryBody:
DefaultAttackSequence: attack DefaultAttackSequence: attack
ProducibleWithLevel: ProducibleWithLevel:
@@ -160,6 +164,7 @@ MUTANT3:
Weapon: Vulcan Weapon: Vulcan
AttackFrontal: AttackFrontal:
Voice: Attack Voice: Attack
FacingTolerance: 0
WithSplitAttackPaletteInfantryBody: WithSplitAttackPaletteInfantryBody:
DefaultAttackSequence: attack DefaultAttackSequence: attack
Palette: player-nobright Palette: player-nobright
@@ -230,6 +235,7 @@ CIV1:
Weapon: Pistola Weapon: Pistola
AttackFrontal: AttackFrontal:
Voice: Attack Voice: Attack
FacingTolerance: 0
Voiced: Voiced:
VoiceSet: Civilian1 VoiceSet: Civilian1
@@ -257,5 +263,6 @@ CTECH:
Weapon: Pistola Weapon: Pistola
AttackFrontal: AttackFrontal:
Voice: Attack Voice: Attack
FacingTolerance: 0
Voiced: Voiced:
VoiceSet: CivilianTechnician VoiceSet: CivilianTechnician

View File

@@ -27,6 +27,7 @@ DOGGIE:
Weapon: FiendShard Weapon: FiendShard
AttackFrontal: AttackFrontal:
Voice: Attack Voice: Attack
FacingTolerance: 0
AttackWander: AttackWander:
WanderMoveRadius: 2 WanderMoveRadius: 2
MinMoveDelay: 200 MinMoveDelay: 200
@@ -97,6 +98,7 @@ VISC_LRG:
ScanRadius: 5 ScanRadius: 5
AttackFrontal: AttackFrontal:
Voice: Attack Voice: Attack
FacingTolerance: 0
AttackWander: AttackWander:
WanderMoveRadius: 2 WanderMoveRadius: 2
MinMoveDelay: 25 MinMoveDelay: 25
@@ -125,6 +127,7 @@ JFISH:
AutoTarget: AutoTarget:
ScanRadius: 5 ScanRadius: 5
AttackFrontal: AttackFrontal:
FacingTolerance: 0
AttackWander: AttackWander:
WanderMoveRadius: 6 WanderMoveRadius: 6
MinMoveDelay: 250 MinMoveDelay: 250

View File

@@ -26,6 +26,7 @@ E2:
ProneOffset: 160,128,-555 ProneOffset: 160,128,-555
AttackFrontal: AttackFrontal:
Voice: Attack Voice: Attack
FacingTolerance: 0
WithSplitAttackPaletteInfantryBody: WithSplitAttackPaletteInfantryBody:
DefaultAttackSequence: attack DefaultAttackSequence: attack
RevealsShroud: RevealsShroud:
@@ -77,6 +78,7 @@ MEDIC:
AutoTargetPriority@DEFAULT: AutoTargetPriority@DEFAULT:
ValidTargets: Infantry ValidTargets: Infantry
AttackFrontal: AttackFrontal:
FacingTolerance: 0
WithSplitAttackPaletteInfantryBody: WithSplitAttackPaletteInfantryBody:
DefaultAttackSequence: heal DefaultAttackSequence: heal
ChangesHealth: ChangesHealth:
@@ -119,6 +121,7 @@ JUMPJET:
-Crushable: -Crushable:
AttackFrontal: AttackFrontal:
Voice: Attack Voice: Attack
FacingTolerance: 0
WithSplitAttackPaletteInfantryBody: WithSplitAttackPaletteInfantryBody:
RequiresCondition: !airborne RequiresCondition: !airborne
DefaultAttackSequence: attack DefaultAttackSequence: attack
@@ -248,6 +251,7 @@ GHOST:
CrushSound: squishy2.aud CrushSound: squishy2.aud
AttackFrontal: AttackFrontal:
Voice: Attack Voice: Attack
FacingTolerance: 0
Demolition: Demolition:
DetonationDelay: 45 DetonationDelay: 45
Voice: Attack Voice: Attack

View File

@@ -136,6 +136,7 @@ SMECH:
AttackFrontal: AttackFrontal:
Voice: Attack Voice: Attack
PauseOnCondition: empdisable PauseOnCondition: empdisable
FacingTolerance: 0
Armament: Armament:
Weapon: AssaultCannon Weapon: AssaultCannon
Voiced: Voiced:
@@ -254,6 +255,7 @@ HMEC:
AttackFrontal: AttackFrontal:
Voice: Attack Voice: Attack
PauseOnCondition: empdisable PauseOnCondition: empdisable
FacingTolerance: 0
Armament@MISSILES: Armament@MISSILES:
Weapon: MammothTusk Weapon: MammothTusk
LocalOffset: -243,-368,1208, -243,368,1208 LocalOffset: -243,-368,1208, -243,368,1208

View File

@@ -27,6 +27,7 @@ E3:
ProneOffset: 52,64,-652 ProneOffset: 52,64,-652
AttackFrontal: AttackFrontal:
Voice: Attack Voice: Attack
FacingTolerance: 0
WithSplitAttackPaletteInfantryBody: WithSplitAttackPaletteInfantryBody:
DefaultAttackSequence: attack DefaultAttackSequence: attack
RevealsShroud: RevealsShroud:
@@ -68,6 +69,7 @@ CYBORG:
Weapon: Vulcan3 Weapon: Vulcan3
AttackFrontal: AttackFrontal:
Voice: Attack Voice: Attack
FacingTolerance: 0
ProducibleWithLevel: ProducibleWithLevel:
Prerequisites: barracks.upgraded Prerequisites: barracks.upgraded
@@ -107,6 +109,7 @@ CYC2:
LocalOffset: 240,120,966 LocalOffset: 240,120,966
AttackFrontal: AttackFrontal:
Voice: Attack Voice: Attack
FacingTolerance: 0
ProducibleWithLevel: ProducibleWithLevel:
Prerequisites: barracks.upgraded Prerequisites: barracks.upgraded

View File

@@ -32,6 +32,7 @@ BGGY:
AttackFrontal: AttackFrontal:
Voice: Attack Voice: Attack
PauseOnCondition: empdisable PauseOnCondition: empdisable
FacingTolerance: 0
WithMuzzleOverlay: WithMuzzleOverlay:
-DamagedByTerrain@VEINS: -DamagedByTerrain@VEINS:
-LeavesTrails@VEINS: -LeavesTrails@VEINS:
@@ -74,6 +75,7 @@ BIKE:
AttackFrontal: AttackFrontal:
Voice: Attack Voice: Attack
PauseOnCondition: empdisable PauseOnCondition: empdisable
FacingTolerance: 0
DamagedByTerrain@VEINS: DamagedByTerrain@VEINS:
RequiresCondition: !inside-tunnel && !rank-elite RequiresCondition: !inside-tunnel && !rank-elite
LeavesTrails@VEINS: LeavesTrails@VEINS:
@@ -154,6 +156,7 @@ TTNK:
Voice: Attack Voice: Attack
RequiresCondition: undeployed RequiresCondition: undeployed
PauseOnCondition: empdisable PauseOnCondition: empdisable
FacingTolerance: 0
Turreted: Turreted:
TurnSpeed: 24 TurnSpeed: 24
Turret: deployed Turret: deployed
@@ -327,6 +330,7 @@ REPAIR:
AttackFrontal: AttackFrontal:
Voice: Attack Voice: Attack
PauseOnCondition: empdisable PauseOnCondition: empdisable
FacingTolerance: 0
AutoTarget: AutoTarget:
ScanRadius: 8 ScanRadius: 8
InitialStance: AttackAnything InitialStance: AttackAnything
@@ -468,6 +472,7 @@ SUBTANK:
AttackFrontal: AttackFrontal:
Voice: Attack Voice: Attack
PauseOnCondition: empdisable PauseOnCondition: empdisable
FacingTolerance: 0
WithVoxelBody: WithVoxelBody:
RequiresCondition: !submerged RequiresCondition: !submerged
Targetable: Targetable:
@@ -530,6 +535,7 @@ STNK:
AttackFrontal: AttackFrontal:
Voice: Attack Voice: Attack
PauseOnCondition: empdisable PauseOnCondition: empdisable
FacingTolerance: 0
AutoTarget: AutoTarget:
InitialStance: HoldFire InitialStance: HoldFire
InitialStanceAI: ReturnFire InitialStanceAI: ReturnFire

View File

@@ -26,6 +26,7 @@ E1:
RequiresCondition: rank-elite RequiresCondition: rank-elite
AttackFrontal: AttackFrontal:
Voice: Attack Voice: Attack
FacingTolerance: 0
WithSplitAttackPaletteInfantryBody: WithSplitAttackPaletteInfantryBody:
DefaultAttackSequence: attack DefaultAttackSequence: attack
ProducibleWithLevel: ProducibleWithLevel: