diff --git a/mods/ra/rules/defaults.yaml b/mods/ra/rules/defaults.yaml index 90d6612437..71e8ecabbb 100644 --- a/mods/ra/rules/defaults.yaml +++ b/mods/ra/rules/defaults.yaml @@ -519,6 +519,7 @@ Inherits@1: ^ExistsInWorld Inherits@2: ^IronCurtainable Inherits@3: ^SpriteActor + Inherits@shape: ^1x1Shape SelectionDecorations: WithSpriteControlGroupDecoration: Selectable: diff --git a/mods/ra/rules/fakes.yaml b/mods/ra/rules/fakes.yaml index 1d5b0a3fbe..e644aa006f 100644 --- a/mods/ra/rules/fakes.yaml +++ b/mods/ra/rules/fakes.yaml @@ -1,6 +1,10 @@ FPWR: Inherits: ^FakeBuilding Inherits@infiltrate: ^InfiltratableFake + Inherits@shape: ^2x2Shape + HitShape: + UseOccupiedCellsOffsets: false + TargetableOffsets: 0,0,0, 640,-384,0, 640,512,0, -710,-512,0, -710,512,0 Buildable: BuildPaletteOrder: 870 Queue: Defense @@ -56,6 +60,18 @@ SYRF: Type: Light EditorTilesetFilter: ExcludeTilesets: INTERIOR + HitShape: + UseOccupiedCellsOffsets: false + TargetableOffsets: 0,0,0, 0,-1024,0, 0,1024,0, 768,0,0, 768,-1024,0, 768,1024,0 + Type: Rectangle + TopLeft: -1536, -1152 + BottomRight: 1536, 598 + HitShape@BOTTOM: + UseOccupiedCellsOffsets: false + TargetableOffsets: -768,0,0 + Type: Rectangle + TopLeft: -512, 598 + BottomRight: 512, 1110 SPEF: Inherits: ^FakeBuilding @@ -88,10 +104,23 @@ SPEF: Type: Light EditorTilesetFilter: ExcludeTilesets: INTERIOR + HitShape: + UseOccupiedCellsOffsets: false + TargetableOffsets: 0,0,0, 0,-1024,0, 0,1024,0 + Type: Rectangle + TopLeft: -1536, -598 + BottomRight: 1536, 598 + HitShape@TOPANDBOTTOM: + UseOccupiedCellsOffsets: false + TargetableOffsets: 811,0,0, -811,0,0 + Type: Rectangle + TopLeft: -555, -1110 + BottomRight: 555, 1110 WEAF: Inherits: ^FakeBuilding Inherits@infiltrate: ^InfiltratableFake + Inherits@shape: ^3x2Shape Buildable: BuildPaletteOrder: 920 Prerequisites: ~structures.france, ~techlevel.medium @@ -122,6 +151,10 @@ DOMF: Inherits: ^FakeBuilding Inherits@IDISABLE: ^DisabledOverlay Inherits@infiltrate: ^InfiltratableFake + Inherits@shape: ^2x2Shape + HitShape: + UseOccupiedCellsOffsets: false + TargetableOffsets: 0,0,0, 630,-384,0, 630,384,0, -700,-512,0, -700,512,0 Tooltip: Name: Fake Radar Dome GenericName: Radar Dome @@ -173,10 +206,26 @@ FIXF: Image: FIX Valued: Cost: 120 + HitShape: + UseOccupiedCellsOffsets: false + TargetableOffsets: 0,0,0, 0,-1024,0, 0,1024,0 + Type: Rectangle + TopLeft: -1536, -683 + BottomRight: 1536, 853 + HitShape@TOPANDBOTTOM: + UseOccupiedCellsOffsets: false + TargetableOffsets: 840,0,0, -1060,0,0 + Type: Rectangle + TopLeft: -640, -768 + BottomRight: 640, 1024 FAPW: Inherits: ^FakeBuilding Inherits@infiltrate: ^InfiltratableFake + Inherits@shape: ^3x2Shape + HitShape: + UseOccupiedCellsOffsets: false + TargetableOffsets: 0,0,0, 840,0,0, 840,-1024,0, 840,1024,0, -840,0,0, -355,-1024,0, -840,1024,0 Buildable: BuildPaletteOrder: 950 Queue: Defense @@ -208,6 +257,7 @@ FAPW: ATEF: Inherits: ^FakeBuilding Inherits@IDISABLE: ^DisabledOverlay + Inherits@shape: ^2x2Shape Tooltip: Name: Fake Allied Tech Center GenericName: Allied Tech Center @@ -236,6 +286,7 @@ ATEF: PDOF: Inherits: ^FakeBuilding Inherits@IDISABLE: ^DisabledOverlay + Inherits@shape: ^2x2Shape Tooltip: Name: Fake Chronosphere GenericName: Chronosphere @@ -268,6 +319,7 @@ PDOF: MSLF: Inherits: ^FakeBuilding Inherits@IDISABLE: ^DisabledOverlay + Inherits@shape: ^2x1Shape Tooltip: Name: Fake Missile Silo GenericName: Missile Silo @@ -320,3 +372,9 @@ FACF: HP: 1500 Armor: Type: Wood + HitShape: + UseOccupiedCellsOffsets: false + TargetableOffsets: 0,0,0, 0,-1024,0, 0,1024,0, 1483,0,0, 1483,-1024,0, 1273,939,0, -1483,0,0, -980,-640,0, -980,640,0 + Type: Rectangle + TopLeft: -1536, -1536 + BottomRight: 1536, 1536 diff --git a/mods/ra/rules/structures.yaml b/mods/ra/rules/structures.yaml index cbe2ae5d67..fc47062edb 100644 --- a/mods/ra/rules/structures.yaml +++ b/mods/ra/rules/structures.yaml @@ -1,6 +1,7 @@ MSLO: Inherits: ^ScienceBuilding Inherits@IDISABLE: ^DisabledOverlay + Inherits@shape: ^2x1Shape Valued: Cost: 2500 Tooltip: @@ -96,6 +97,10 @@ GAP: Explodes: Weapon: SmallBuildingExplode EmptyWeapon: SmallBuildingExplode + HitShape: + Type: Rectangle + TopLeft: -512, -512 + BottomRight: 512, 512 SPEN: Inherits: ^Building @@ -186,6 +191,18 @@ SPEN: ReferencePoint: Top ZOffset: 256 RequiresCondition: primary + HitShape: + UseOccupiedCellsOffsets: false + TargetableOffsets: 0,0,0, 0,-1024,0, 0,1024,0 + Type: Rectangle + TopLeft: -1536, -598 + BottomRight: 1536, 598 + HitShape@TOPANDBOTTOM: + UseOccupiedCellsOffsets: false + TargetableOffsets: 811,0,0, -811,0,0 + Type: Rectangle + TopLeft: -555, -1110 + BottomRight: 555, 1110 SYRD: Inherits: ^Building @@ -282,10 +299,23 @@ SYRD: ReferencePoint: Top ZOffset: 256 RequiresCondition: primary + HitShape: + UseOccupiedCellsOffsets: false + TargetableOffsets: 0,0,0, 0,-1024,0, 0,1024,0, 768,0,0, 768,-1024,0, 768,1024,0 + Type: Rectangle + TopLeft: -1536, -1152 + BottomRight: 1536, 598 + HitShape@BOTTOM: + UseOccupiedCellsOffsets: false + TargetableOffsets: -768,0,0 + Type: Rectangle + TopLeft: -512, 598 + BottomRight: 512, 1110 IRON: Inherits: ^ScienceBuilding Inherits@IDISABLE: ^DisabledOverlay + Inherits@shape: ^2x1Shape Buildable: Queue: Defense BuildPaletteOrder: 130 @@ -341,6 +371,7 @@ IRON: PDOX: Inherits: ^ScienceBuilding Inherits@IDISABLE: ^DisabledOverlay + Inherits@shape: ^2x2Shape Buildable: Queue: Defense BuildPaletteOrder: 120 @@ -513,6 +544,10 @@ AGUN: DOME: Inherits: ^Building Inherits@IDISABLE: ^DisabledOverlay + Inherits@shape: ^2x2Shape + HitShape: + UseOccupiedCellsOffsets: false + TargetableOffsets: 0,0,0, 630,-384,0, 630,384,0, -700,-512,0, -700,512,0 Buildable: Queue: Building BuildPaletteOrder: 90 @@ -744,6 +779,7 @@ FTUR: SAM: Inherits: ^Defense Inherits@IDISABLE: ^DisabledOverlay + Inherits@shape: ^2x1Shape Buildable: Queue: Defense BuildPaletteOrder: 100 @@ -790,6 +826,7 @@ SAM: ATEK: Inherits: ^ScienceBuilding Inherits@IDISABLE: ^DisabledOverlay + Inherits@shape: ^2x2Shape Buildable: Queue: Building BuildPaletteOrder: 140 @@ -832,6 +869,7 @@ ATEK: WEAP: Inherits: ^Building + Inherits@shape: ^3x2Shape Buildable: Queue: Building BuildPaletteOrder: 80 @@ -1007,6 +1045,12 @@ FACT: DeathSequence: dead UseDeathTypeSuffix: false ProvidesPrerequisite@buildingname: + HitShape: + UseOccupiedCellsOffsets: false + TargetableOffsets: 0,0,0, 0,-1024,0, 0,1024,0, 1483,0,0, 1483,-1024,0, 1273,939,0, -1483,0,0, -980,-640,0, -980,640,0 + Type: Rectangle + TopLeft: -1536, -1536 + BottomRight: 1536, 1536 PROC: Inherits: ^Building @@ -1062,6 +1106,24 @@ PROC: DeathSequence: dead UseDeathTypeSuffix: false ProvidesPrerequisite@buildingname: + HitShape: + UseOccupiedCellsOffsets: false + TargetableOffsets: 0,0,0, 0,-1024,0, 0,1024,0 + Type: Rectangle + TopLeft: -1536, -512 + BottomRight: 1536, 598 + HitShape@TOP: + UseOccupiedCellsOffsets: false + TargetableOffsets: 1680,0,0 + Type: Rectangle + TopLeft: -512, -1536 + BottomRight: 512, -512 + HitShape@BOTTOMLEFT: + UseOccupiedCellsOffsets: false + TargetableOffsets: -1260,-1024,0 + Type: Rectangle + TopLeft: -1536, 598 + BottomRight: -512, 1280 SILO: Inherits: ^Building @@ -1097,6 +1159,10 @@ SILO: HPAD: Inherits: ^Building + Inherits@shape: ^2x2Shape + HitShape: + UseOccupiedCellsOffsets: false + TargetableOffsets: 0,0,0, 768,-512,0, 768,512,0, -281,-512,0, -630,512,0 Buildable: Queue: Building BuildPaletteOrder: 120 @@ -1179,6 +1245,10 @@ HPAD: AFLD: Inherits: ^Building + Inherits@shape: ^3x2Shape + HitShape: + UseOccupiedCellsOffsets: false + TargetableOffsets: 0,0,0, 420,0,0, 420,-1024,0, 420,1024,0, -777,0,0, -777,-1024,0, -777,1024,0 Buildable: Queue: Building BuildPaletteOrder: 130 @@ -1310,6 +1380,10 @@ POWR: Inherits: ^Building Inherits@IDISABLE: ^DisabledOverlay Inherits@POWER_OUTAGE: ^DisabledByPowerOutage + Inherits@shape: ^2x2Shape + HitShape: + UseOccupiedCellsOffsets: false + TargetableOffsets: 0,0,0, 640,-384,0, 640,512,0, -710,-512,0, -710,512,0 Buildable: Queue: Building BuildPaletteOrder: 10 @@ -1344,6 +1418,10 @@ APWR: Inherits: ^Building Inherits@IDISABLE: ^DisabledOverlay Inherits@POWER_OUTAGE: ^DisabledByPowerOutage + Inherits@shape: ^3x2Shape + HitShape: + UseOccupiedCellsOffsets: false + TargetableOffsets: 0,0,0, 840,0,0, 840,-1024,0, 840,1024,0, -840,0,0, -355,-1024,0, -840,1024,0 Buildable: Queue: Building BuildPaletteOrder: 110 @@ -1380,6 +1458,10 @@ APWR: STEK: Inherits: ^ScienceBuilding + Inherits@shape: ^3x2Shape + HitShape: + UseOccupiedCellsOffsets: false + TargetableOffsets: 0,0,0, 840,0,0, -840,0,0, 420,-768,0, 420,768,0, -770,-768,0, -770,768,0 Buildable: Queue: Building BuildPaletteOrder: 150 @@ -1407,6 +1489,10 @@ STEK: BARR: Inherits: ^Building + Inherits@shape: ^2x2Shape + HitShape: + UseOccupiedCellsOffsets: false + TargetableOffsets: 0,0,0, 490,-470,0, 355,512,0, -355,-512,0, -630,512,0 Buildable: Queue: Building BuildPaletteOrder: 30 @@ -1530,6 +1616,10 @@ KENN: TENT: Inherits: ^Building + Inherits@shape: ^2x2Shape + HitShape: + UseOccupiedCellsOffsets: false + TargetableOffsets: 0,0,0, 630,-512,0, 355,512,0, -281,-512,0, -630,512,0 Buildable: Queue: Building BuildPaletteOrder: 20 @@ -1651,6 +1741,18 @@ FIX: Power: Amount: -30 ProvidesPrerequisite@buildingname: + HitShape: + UseOccupiedCellsOffsets: false + TargetableOffsets: 0,0,0, 0,-1024,0, 0,1024,0 + Type: Rectangle + TopLeft: -1536, -683 + BottomRight: 1536, 853 + HitShape@TOPANDBOTTOM: + UseOccupiedCellsOffsets: false + TargetableOffsets: 840,0,0, -1060,0,0 + Type: Rectangle + TopLeft: -640, -768 + BottomRight: 640, 1024 SBAG: Inherits: ^Wall @@ -1735,6 +1837,11 @@ BRIK: VGATE: Inherits: ^Gate + HitShape: + UseOccupiedCellsOffsets: true + Type: Rectangle + TopLeft: -512, -1536 + BottomRight: 512, 1536 Gate: Footprint: x x x Dimensions: 1,3 @@ -1747,6 +1854,11 @@ VGATE: HGATE: Inherits: ^Gate + HitShape: + UseOccupiedCellsOffsets: true + Type: Rectangle + TopLeft: -1536, -512 + BottomRight: 1536, 512 Gate: Footprint: xxx Dimensions: 3,1 diff --git a/mods/ra/sequences/structures.yaml b/mods/ra/sequences/structures.yaml index 5facfe2b47..44e7889cce 100644 --- a/mods/ra/sequences/structures.yaml +++ b/mods/ra/sequences/structures.yaml @@ -197,10 +197,13 @@ kenn: dome: idle: + Offset: 0,-4 damaged-idle: Start: 1 + Offset: 0,-4 make: domemake Length: * + Offset: 0,-4 bib: bib3 Length: * UseTilesetExtension: true @@ -311,10 +314,13 @@ afld: spen: idle: + Offset: 0,2 damaged-idle: Start: 1 + Offset: 0,2 make: spenmake Length: * + Offset: 0,2 icon: spenicon fake-icon: speficon