fixrotations - Modified Targetted Entities (#34638)

This commit is contained in:
Southbridge
2025-01-27 02:48:16 -05:00
committed by GitHub
parent f9c74f3622
commit bbad147973
22 changed files with 283 additions and 218 deletions

View File

@@ -89,6 +89,8 @@ public sealed class FixRotationsCommand : IConsoleCommand
valid |= tagSystem.HasTag(child, "ForceFixRotations");
// override
valid &= !tagSystem.HasTag(child, "ForceNoFixRotations");
// remove diagonal entities as well
valid &= !tagSystem.HasTag(child, "Diagonal");
if (!valid)
continue;

View File

@@ -86,7 +86,7 @@
- type: entity
name: Atmos Fix Freezer Marker
id: AtmosFixFreezerMarker
description: "Change air temp to 235K, for freezer with a big of wiggle room to get set up."
description: "Change air temp to 235K, for freezer with a bit of wiggle room to get set up."
parent: MarkerBase
components:
- type: Sprite

View File

@@ -9,6 +9,9 @@
- type: Marker
- type: Clickable
- type: InteractionOutline
- type: Tag
tags:
- ForceFixRotations
- type: Sprite
drawdepth: Overdoors
sprite: Markers/cross.rsi

View File

@@ -23,6 +23,9 @@
cost: 4
delay: 6
fx: EffectRCDDeconstruct6
- type: Tag
tags:
- ForceFixRotations # Allow fixrotations to target these
- type: Destructible
thresholds:
- trigger:
@@ -187,6 +190,9 @@
- GlassAirlockLayer
- type: Occluder
enabled: false
- type: Tag
tags:
- ForceNoFixRotations # Prevent fixrotations from targeting these, since the base Firelock is targeted
- type: Door
occludes: false
- type: Physics

View File

@@ -65,6 +65,7 @@
tags:
- Structure
- Wall
- ForceNoFixRotations # Don't want the fixrotations command to target these
- type: ContainerContainer
containers:
battery-container: !type:Container

View File

@@ -34,6 +34,9 @@
containers:
board: !type:Container
- type: NavMapDoor
- type: Tag
tags:
- ForceNoFixRotations # Don't want the fixrotations command to target these
- type: Door
openDrawDepth: BlastDoors
closedDrawDepth: BlastDoors

View File

@@ -36,6 +36,9 @@
- type: FootstepModifier
footstepSoundCollection:
collection: FootstepHull
- type: Tag
tags:
- ForceFixRotations
- type: entity
id: CounterBase

View File

@@ -14,7 +14,9 @@
key: full
base: carpet_
- type: Tag
tags: [ Carpet ]
tags:
- Carpet
- ForceFixRotations
- type: Physics
canCollide: false
- type: Fixtures
@@ -22,12 +24,12 @@
damageContainer: Inorganic
- type: Destructible
thresholds:
- trigger:
!type:DamageTrigger
damage: 10
- trigger:
!type:DamageTrigger
damage: 10
behaviors:
- !type:DoActsBehavior
acts: [ "Destruction" ]
- !type:DoActsBehavior
acts: [ "Destruction" ]
- type: Butcherable
butcheringType: Knife
butcherDelay: 2

View File

@@ -2,32 +2,33 @@
id: AirSensorBase
abstract: true
components:
- type: DeviceNetwork
deviceNetId: AtmosDevices
receiveFrequencyId: AtmosMonitor
transmitFrequencyId: AtmosMonitor
prefix: device-address-prefix-sensor
sendBroadcastAttemptEvent: true
examinableAddress: true
- type: WiredNetworkConnection
- type: DeviceNetworkRequiresPower
- type: AtmosDevice
- type: AtmosMonitor
temperatureThresholdId: stationTemperature
pressureThresholdId: stationPressure
gasThresholdPrototypes:
Oxygen: stationOxygen
Nitrogen: stationNitrogen
CarbonDioxide: stationCO2
Plasma: stationPlasma
Tritium: stationTritium
WaterVapor: stationWaterVapor
Ammonia: stationAmmonia
NitrousOxide: stationNO
Frezon: danger
- type: Tag
tags:
- AirSensor
- type: DeviceNetwork
deviceNetId: AtmosDevices
receiveFrequencyId: AtmosMonitor
transmitFrequencyId: AtmosMonitor
prefix: device-address-prefix-sensor
sendBroadcastAttemptEvent: true
examinableAddress: true
- type: WiredNetworkConnection
- type: DeviceNetworkRequiresPower
- type: AtmosDevice
- type: AtmosMonitor
temperatureThresholdId: stationTemperature
pressureThresholdId: stationPressure
gasThresholdPrototypes:
Oxygen: stationOxygen
Nitrogen: stationNitrogen
CarbonDioxide: stationCO2
Plasma: stationPlasma
Tritium: stationTritium
WaterVapor: stationWaterVapor
Ammonia: stationAmmonia
NitrousOxide: stationNO
Frezon: danger
- type: Tag
tags:
- AirSensor
- ForceFixRotations
- type: entity
id: AirSensor
@@ -37,54 +38,54 @@
placement:
mode: SnapgridCenter
components:
- type: Transform
anchored: true
- type: Damageable
damageContainer: Inorganic
damageModifierSet: Metallic
- type: Destructible
thresholds:
- trigger:
!type:DamageTrigger
damage: 100
behaviors:
- !type:DoActsBehavior
acts: ["Destruction"]
- type: Physics
canCollide: false
- type: Fixtures
fixtures:
fix1:
shape:
!type:PhysShapeAabb
bounds: "-0.25,-0.25,0.25,0.25"
density: 20
mask:
- ItemMask
restitution: 0.3
friction: 0.2
- type: Clickable
- type: InteractionOutline
- type: ApcPowerReceiver
- type: ExtensionCableReceiver
- type: AccessReader
access: [ [ "Atmospherics" ] ]
- type: Construction
graph: AirSensor
node: sensor
- type: Appearance
- type: Sprite
drawdepth: FloorObjects
sprite: Structures/Specific/Atmospherics/sensor.rsi
layers:
- state: gsensor1
map: [ "enum.PowerDeviceVisualLayers.Powered" ]
- type: GenericVisualizer
visuals:
enum.PowerDeviceVisuals.Powered:
enum.PowerDeviceVisualLayers.Powered:
True: { state: gsensor1 }
False: { state: gsensor0 }
- type: Transform
anchored: true
- type: Damageable
damageContainer: Inorganic
damageModifierSet: Metallic
- type: Destructible
thresholds:
- trigger:
!type:DamageTrigger
damage: 100
behaviors:
- !type:DoActsBehavior
acts: ["Destruction"]
- type: Physics
canCollide: false
- type: Fixtures
fixtures:
fix1:
shape:
!type:PhysShapeAabb
bounds: "-0.25,-0.25,0.25,0.25"
density: 20
mask:
- ItemMask
restitution: 0.3
friction: 0.2
- type: Clickable
- type: InteractionOutline
- type: ApcPowerReceiver
- type: ExtensionCableReceiver
- type: AccessReader
access: [ [ "Atmospherics" ] ]
- type: Construction
graph: AirSensor
node: sensor
- type: Appearance
- type: Sprite
drawdepth: FloorObjects
sprite: Structures/Specific/Atmospherics/sensor.rsi
layers:
- state: gsensor1
map: [ "enum.PowerDeviceVisualLayers.Powered" ]
- type: GenericVisualizer
visuals:
enum.PowerDeviceVisuals.Powered:
enum.PowerDeviceVisualLayers.Powered:
True: { state: gsensor1 }
False: { state: gsensor0 }
- type: entity
parent: BaseItem
@@ -92,14 +93,14 @@
name: air sensor assembly
description: Air sensor assembly. An assembly of air sensors?
components:
- type: Item
size: Small
- type: Anchorable
- type: Construction
graph: AirSensor
node: assembly
- type: Sprite
drawdepth: FloorObjects
sprite: Structures/Specific/Atmospherics/sensor.rsi
layers:
- state: gsensor0
- type: Item
size: Small
- type: Anchorable
- type: Construction
graph: AirSensor
node: assembly
- type: Sprite
drawdepth: FloorObjects
sprite: Structures/Specific/Atmospherics/sensor.rsi
layers:
- state: gsensor0

View File

@@ -94,19 +94,19 @@
name: clockwork grille
description: A flimsy framework of iron rods assembled in traditional Ratvarian fashion.
components:
- type: Sprite
drawdepth: Walls
sprite: Structures/Walls/clockwork_grille.rsi
state: ratvargrille
layers:
- state: ratvargrille
- type: Icon
sprite: Structures/Walls/clockwork_grille.rsi
state: ratvargrille
- type: Construction
graph: ClockGrille
node: clockGrille
deconstructionTarget: start
- type: Sprite
drawdepth: Walls
sprite: Structures/Walls/clockwork_grille.rsi
state: ratvargrille
layers:
- state: ratvargrille
- type: Icon
sprite: Structures/Walls/clockwork_grille.rsi
state: ratvargrille
- type: Construction
graph: ClockGrille
node: clockGrille
deconstructionTarget: start
- type: entity
id: GrilleBroken
@@ -114,38 +114,41 @@
name: grille
description: A flimsy framework of iron rods. It has seen better days.
components:
- type: Sprite
drawdepth: Walls
sprite: Structures/Walls/grille.rsi
state: grille_broken
- type: Icon
sprite: Structures/Walls/grille.rsi
state: grille_broken
- type: RCDDeconstructable
cost: 6
delay: 4
fx: EffectRCDDeconstruct4
- type: Construction
graph: Grille
node: grilleBroken
deconstructionTarget: start
- type: Fixtures # overwrite BaseStructure parent.
- type: Physics
bodyType: Static
canCollide: false
- type: Damageable
damageContainer: StructuralInorganic
damageModifierSet: FlimsyMetallic
- type: Destructible
thresholds:
- trigger:
!type:DamageTrigger
damage: 10
behaviors:
- !type:ChangeConstructionNodeBehavior
node: start
- !type:DoActsBehavior
acts: ["Destruction"]
- type: Sprite
drawdepth: Walls
sprite: Structures/Walls/grille.rsi
state: grille_broken
- type: Icon
sprite: Structures/Walls/grille.rsi
state: grille_broken
- type: RCDDeconstructable
cost: 6
delay: 4
fx: EffectRCDDeconstruct4
- type: Construction
graph: Grille
node: grilleBroken
deconstructionTarget: start
- type: Fixtures # overwrite BaseStructure parent.
- type: Physics
bodyType: Static
canCollide: false
- type: Tag
tags:
- ForceNoFixRotations
- type: Damageable
damageContainer: StructuralInorganic
damageModifierSet: FlimsyMetallic
- type: Destructible
thresholds:
- trigger:
!type:DamageTrigger
damage: 10
behaviors:
- !type:ChangeConstructionNodeBehavior
node: start
- !type:DoActsBehavior
acts: ["Destruction"]
- type: entity
id: ClockworkGrilleBroken
@@ -153,84 +156,90 @@
name: clockwork grille
description: A flimsy framework of iron rods assembled in traditional Ratvarian fashion. It has seen better days.
components:
- type: Sprite
drawdepth: Walls
sprite: Structures/Walls/clockwork_grille.rsi
state: brokenratvargrille
- type: Icon
sprite: Structures/Walls/clockwork_grille.rsi
state: brokenratvargrille
- type: Construction
graph: ClockGrille
node: clockGrilleBroken
- type: Sprite
drawdepth: Walls
sprite: Structures/Walls/clockwork_grille.rsi
state: brokenratvargrille
- type: Icon
sprite: Structures/Walls/clockwork_grille.rsi
state: brokenratvargrille
- type: Construction
graph: ClockGrille
node: clockGrilleBroken
- type: entity
id: GrilleDiagonal
parent: Grille
name: diagonal grille
components:
- type: Sprite
drawdepth: Walls
sprite: Structures/Walls/grille.rsi
layers:
- state: grille_diagonal
- state: electrified_diagonal
sprite: Effects/electricity.rsi
map: ["enum.ElectrifiedLayers.Sparks"]
shader: unshaded
visible: false
- type: Icon
sprite: Structures/Walls/grille.rsi
state: grille_diagonal
- type: Fixtures
fixtures:
fix1:
shape:
!type:PolygonShape
vertices:
- "-0.5,-0.5"
- "0.5,0.5"
- "0.5,-0.5"
mask:
- FullTileMask
layer:
- WallLayer
- type: Construction
graph: GrilleDiagonal
node: grilleDiagonal
- type: Sprite
drawdepth: Walls
sprite: Structures/Walls/grille.rsi
layers:
- state: grille_diagonal
- state: electrified_diagonal
sprite: Effects/electricity.rsi
map: ["enum.ElectrifiedLayers.Sparks"]
shader: unshaded
visible: false
- type: Icon
sprite: Structures/Walls/grille.rsi
state: grille_diagonal
- type: Tag
tags:
- Diagonal
- type: Fixtures
fixtures:
fix1:
shape:
!type:PolygonShape
vertices:
- "-0.5,-0.5"
- "0.5,0.5"
- "0.5,-0.5"
mask:
- FullTileMask
layer:
- WallLayer
- type: Construction
graph: GrilleDiagonal
node: grilleDiagonal
- type: entity
id: ClockworkGrilleDiagonal
parent: ClockworkGrille
name: diagonal clockwork grille
components:
- type: Sprite
drawdepth: Walls
sprite: Structures/Walls/clockwork_grille.rsi
layers:
- state: ratvargrille_diagonal
- state: electrified_diagonal
sprite: Effects/electricity.rsi
map: ["enum.ElectrifiedLayers.Sparks"]
shader: unshaded
visible: false
- type: Icon
sprite: Structures/Walls/clockwork_grille.rsi
state: ratvargrille_diagonal
- type: Fixtures
fixtures:
fix1:
shape:
!type:PolygonShape
vertices:
- "-0.5,-0.5"
- "0.5,0.5"
- "0.5,-0.5"
mask:
- FullTileMask
layer:
- WallLayer
- type: Construction
graph: GrilleDiagonal
node: clockworkGrilleDiagonal
- type: Sprite
drawdepth: Walls
sprite: Structures/Walls/clockwork_grille.rsi
layers:
- state: ratvargrille_diagonal
- state: electrified_diagonal
sprite: Effects/electricity.rsi
map: ["enum.ElectrifiedLayers.Sparks"]
shader: unshaded
visible: false
- type: Icon
sprite: Structures/Walls/clockwork_grille.rsi
state: ratvargrille_diagonal
- type: Tag
tags:
- Diagonal
- type: Fixtures
fixtures:
fix1:
shape:
!type:PolygonShape
vertices:
- "-0.5,-0.5"
- "0.5,0.5"
- "0.5,-0.5"
mask:
- FullTileMask
layer:
- WallLayer
- type: Construction
graph: GrilleDiagonal
node: clockworkGrilleDiagonal

View File

@@ -56,9 +56,6 @@
id: WallBrick
name: brick wall
components:
- type: Tag
tags:
- Wall
- type: Sprite
sprite: Structures/Walls/brick.rsi
- type: Icon
@@ -546,6 +543,7 @@
- type: Tag
tags:
- Wall
- Diagonal
- type: Sprite
drawdepth: Walls
sprite: Structures/Walls/plastitanium_diagonal.rsi
@@ -687,6 +685,9 @@
snap:
- Wall
components:
- type: Tag
tags:
- Diagonal
- type: Sprite
drawdepth: Walls
sprite: Structures/Walls/reinforced_diagonal.rsi
@@ -829,6 +830,7 @@
- type: Tag
tags:
- Wall
- Diagonal
- type: Sprite
drawdepth: Walls
sprite: Structures/Walls/shuttle_diagonal.rsi

View File

@@ -122,6 +122,9 @@
drawdepth: WallTops
sprite: Structures/Windows/clockwork_diagonal.rsi
state: state0
- type: Tag
tags:
- Diagonal
- type: IconSmooth
mode: Diagonal
key: windows
@@ -152,4 +155,4 @@
sprite: Structures/Windows/cracks_diagonal.rsi
- type: Construction
graph: WindowDiagonal
node: clockworkWindowDiagonal
node: clockworkWindowDiagonal

View File

@@ -64,6 +64,9 @@
drawdepth: WallTops
sprite: Structures/Windows/mining_diagonal.rsi
state: state0
- type: Tag
tags:
- Diagonal
- type: IconSmooth
mode: Diagonal
key: windows
@@ -91,4 +94,4 @@
- East
- type: DamageVisuals
damageOverlay:
sprite: Structures/Windows/cracks_diagonal.rsi
sprite: Structures/Windows/cracks_diagonal.rsi

View File

@@ -122,6 +122,9 @@
drawdepth: WallTops
sprite: Structures/Windows/plasma_diagonal.rsi
state: state0
- type: Tag
tags:
- Diagonal
- type: IconSmooth
mode: Diagonal
key: windows
@@ -152,4 +155,4 @@
sprite: Structures/Windows/cracks_diagonal.rsi
- type: Construction
graph: WindowDiagonal
node: plasmaWindowDiagonal
node: plasmaWindowDiagonal

View File

@@ -121,6 +121,9 @@
drawdepth: WallTops
sprite: Structures/Windows/plastitanium_window_diagonal.rsi
state: state0
- type: Tag
tags:
- Diagonal
- type: Icon
sprite: Structures/Windows/plastitanium_window_diagonal.rsi
state: state0
@@ -195,4 +198,4 @@
doAfterDelay: 3
- type: Damageable
damageContainer: StructuralInorganic
damageModifierSet: RGlass
damageModifierSet: RGlass

View File

@@ -129,6 +129,9 @@
drawdepth: WallTops
sprite: Structures/Windows/reinforced_window_diagonal.rsi
state: state0
- type: Tag
tags:
- Diagonal
- type: IconSmooth
mode: Diagonal
key: windows
@@ -159,4 +162,4 @@
sprite: Structures/Windows/cracks_diagonal.rsi
- type: Construction
graph: WindowDiagonal
node: reinforcedWindowDiagonal
node: reinforcedWindowDiagonal

View File

@@ -125,6 +125,9 @@
drawdepth: WallTops
sprite: Structures/Windows/reinforced_plasma_diagonal.rsi
state: state0
- type: Tag
tags:
- Diagonal
- type: IconSmooth
mode: Diagonal
key: windows
@@ -155,4 +158,4 @@
sprite: Structures/Windows/cracks_diagonal.rsi
- type: Construction
graph: WindowDiagonal
node: reinforcedPlasmaWindowDiagonal
node: reinforcedPlasmaWindowDiagonal

View File

@@ -122,6 +122,9 @@
drawdepth: WallTops
sprite: Structures/Windows/reinforced_uranium_diagonal.rsi
state: state0
- type: Tag
tags:
- Diagonal
- type: IconSmooth
mode: Diagonal
key: windows
@@ -152,4 +155,4 @@
sprite: Structures/Windows/cracks_diagonal.rsi
- type: Construction
graph: WindowDiagonal
node: reinforcedUraniumWindowDiagonal
node: reinforcedUraniumWindowDiagonal

View File

@@ -67,6 +67,9 @@
drawdepth: WallTops
sprite: Structures/Windows/shuttle_window_diagonal.rsi
state: state0
- type: Tag
tags:
- Diagonal
- type: IconSmooth
mode: Diagonal
key: windows
@@ -94,4 +97,4 @@
- East
- type: DamageVisuals
damageOverlay:
sprite: Structures/Windows/cracks_diagonal.rsi
sprite: Structures/Windows/cracks_diagonal.rsi

View File

@@ -117,6 +117,9 @@
drawdepth: WallTops
sprite: Structures/Windows/uranium_window_diagonal.rsi
state: state0
- type: Tag
tags:
- Diagonal
- type: IconSmooth
mode: Diagonal
key: windows
@@ -147,4 +150,4 @@
sprite: Structures/Windows/cracks_diagonal.rsi
- type: Construction
graph: WindowDiagonal
node: uraniumWindowDiagonal
node: uraniumWindowDiagonal

View File

@@ -254,6 +254,9 @@
drawdepth: WallTops
sprite: Structures/Windows/window_diagonal.rsi
state: state0
- type: Tag
tags:
- Diagonal
- type: IconSmooth
mode: Diagonal
key: windows
@@ -284,4 +287,4 @@
sprite: Structures/Windows/cracks_diagonal.rsi
- type: Construction
graph: WindowDiagonal
node: windowDiagonal
node: windowDiagonal

View File

@@ -440,6 +440,9 @@
- type: Tag
id: Debug
- type: Tag
id: Diagonal
- type: Tag
id: Dice