diff --git a/Resources/Prototypes/Entities/Constructible/Furniture/seats.yml b/Resources/Prototypes/Entities/Constructible/Furniture/seats.yml index 746bb2ae2c..d66cf66bd4 100644 --- a/Resources/Prototypes/Entities/Constructible/Furniture/seats.yml +++ b/Resources/Prototypes/Entities/Constructible/Furniture/seats.yml @@ -7,6 +7,21 @@ - type: Clickable - type: InteractionOutline - type: Physics + anchored: true + shapes: + - !type:PhysShapeAabb + bounds: "-0.5,-0.25,0.5,0.25" + mask: + - Impassable + - MobImpassable + - VaultImpassable + - SmallImpassable + layer: + - Opaque + - Impassable + - MobImpassable + - VaultImpassable + - SmallImpassable - type: Sprite sprite: Constructible/Misc/furniture.rsi - type: Strap diff --git a/Resources/Prototypes/Entities/Constructible/Furniture/storage.yml b/Resources/Prototypes/Entities/Constructible/Furniture/storage.yml index f679a733f4..19160ebdf5 100644 --- a/Resources/Prototypes/Entities/Constructible/Furniture/storage.yml +++ b/Resources/Prototypes/Entities/Constructible/Furniture/storage.yml @@ -10,14 +10,23 @@ sprite: Constructible/Misc/furniture.rsi state: rack - type: Physics + mass: 25 + anchored: true shapes: - !type:PhysShapeAabb + bounds: "-0.4,-0.4,0.4,0.4" layer: - Opaque - Impassable - MobImpassable - VaultImpassable - SmallImpassable + mask: + - Impassable + - MobImpassable + - VaultImpassable + - type: Pullable + - type: Anchorable - type: Destructible deadThreshold: 30 destroySound: /Audio/Effects/metalbreak.ogg @@ -39,14 +48,23 @@ sprite: Constructible/Misc/furniture.rsi state: shelf - type: Physics + mass: 25 + anchored: true shapes: - !type:PhysShapeAabb + bounds: "-0.4,-0.4,0.4,0.4" layer: - Opaque - Impassable - MobImpassable - VaultImpassable - SmallImpassable + mask: + - Impassable + - MobImpassable + - VaultImpassable + - type: Pullable + - type: Anchorable - type: Destructible deadThreshold: 30 destroySound: /Audio/Effects/metalbreak.ogg diff --git a/Resources/Prototypes/Entities/Constructible/Power/cloning_machine.yml b/Resources/Prototypes/Entities/Constructible/Power/cloning_machine.yml index 044121cc7a..bcf2a05315 100644 --- a/Resources/Prototypes/Entities/Constructible/Power/cloning_machine.yml +++ b/Resources/Prototypes/Entities/Constructible/Power/cloning_machine.yml @@ -2,6 +2,8 @@ id: CloningPod name: Cloning Pod description: A Cloning Pod. 50% reliable. + placement: + mode: SnapgridCenter components: - type: Sprite netsync: false @@ -10,7 +12,6 @@ - state: pod_0 map: ["enum.CloningPodVisualLayers.Machine"] - type: PowerReceiver - - type: Anchorable - type: Clickable - type: InteractionOutline diff --git a/Resources/Prototypes/Entities/Constructible/Power/computers.yml b/Resources/Prototypes/Entities/Constructible/Power/computers.yml index 0883283533..de05f9014d 100644 --- a/Resources/Prototypes/Entities/Constructible/Power/computers.yml +++ b/Resources/Prototypes/Entities/Constructible/Power/computers.yml @@ -1,25 +1,29 @@ - type: entity id: ComputerFrame name: computer frame + placement: + mode: SnapgridCenter components: - type: Physics mass: 25 - anchored: false + anchored: true shapes: - - !type:PhysShapeAabb - bounds: "-0.5,-0.25,0.5,0.25" - layer: - - Impassable - - MobImpassable - - VaultImpassable - - Opaque - mask: - - Impassable - - MobImpassable - - VaultImpassable + - !type:PhysShapeAabb + bounds: "-0.5,-0.25,0.5,0.25" + layer: + - Impassable + - MobImpassable + - VaultImpassable + - Opaque + mask: + - Impassable + - MobImpassable + - VaultImpassable - type: Clickable - type: InteractionOutline - type: Anchorable + - type: Rotatable + - type: Pullable - type: Construction graph: computer node: frameUnsecured @@ -33,21 +37,21 @@ description: This computer has seen better days. abstract: true # We don't want this to show up in the entity spawner menu. components: - - type: Physics - mass: 25 - anchored: true - shapes: - - !type:PhysShapeAabb - bounds: "-0.5,-0.25,0.5,0.25" - layer: - - Impassable - - MobImpassable - - VaultImpassable - - Opaque - mask: - - Impassable - - MobImpassable - - VaultImpassable + - type: Physics + mass: 25 + anchored: true + shapes: + - !type:PhysShapeAabb + bounds: "-0.5,-0.25,0.5,0.25" + layer: + - Impassable + - MobImpassable + - VaultImpassable + - Opaque + mask: + - Impassable + - MobImpassable + - VaultImpassable - type: Clickable - type: InteractionOutline - type: Anchorable @@ -62,12 +66,15 @@ id: ComputerBase name: computer abstract: true + placement: + mode: SnapgridCenter components: - type: Clickable - type: InteractionOutline - type: Construction graph: computer node: computer + - type: Rotatable - type: Physics mass: 25 anchored: true @@ -86,9 +93,9 @@ - type: Computer - type: PowerReceiver - type: Anchorable + - type: Pullable - type: BreakableConstruction node: monitorBroken - - type: Sprite sprite: Constructible/Power/computers.rsi layers: @@ -102,14 +109,12 @@ - state: generic_key shader: unshaded map: ["enum.ComputerVisualizer+Layers.KeyboardOn"] - - type: Appearance visuals: - type: ComputerVisualizer key: generic_key screen: generic - - type: entity id: ComputerAlert parent: ComputerBase @@ -122,7 +127,6 @@ key: atmos_key screen: "alert-2" - - type: entity id: ComputerPowerMonitoring parent: ComputerBase @@ -135,7 +139,6 @@ key: power_key screen: power_monitor - - type: entity id: ComputerSupplyOrdering parent: ComputerBase @@ -199,7 +202,6 @@ key: med_key screen: medcomp - - type: entity id: ComputerResearchAndDevelopment parent: ComputerBase diff --git a/Resources/Prototypes/Entities/Constructible/Power/lathe.yml b/Resources/Prototypes/Entities/Constructible/Power/lathe.yml index 04fc062267..74aa03019b 100644 --- a/Resources/Prototypes/Entities/Constructible/Power/lathe.yml +++ b/Resources/Prototypes/Entities/Constructible/Power/lathe.yml @@ -2,6 +2,8 @@ id: BaseLathe name: "lathe" abstract: true + placement: + mode: SnapgridCenter components: - type: Clickable - type: InteractionOutline @@ -10,7 +12,12 @@ anchored: true shapes: - !type:PhysShapeAabb - bounds: "-0.4,-0.25,0.4,0.25" + bounds: "-0.4,-0.4,0.4,0.4" + mask: + - Impassable + - MobImpassable + - VaultImpassable + - SmallImpassable layer: - Opaque - Impassable @@ -21,6 +28,7 @@ - type: Lathe - type: MaterialStorage - type: Anchorable + - type: Pullable - type: UserInterface interfaces: - key: enum.LatheUiKey.Key @@ -41,18 +49,6 @@ - state: autolathe_unlit shader: unshaded map: ["enum.AutolatheVisualLayers.BaseUnlit"] - - - type: Physics - shapes: - - !type:PhysShapeAabb - layer: - - Opaque - - Impassable - - MobImpassable - - VaultImpassable - - type: SnapGrid - offset: Center - - type: Lathe - type: LatheDatabase static: true recipes: @@ -89,17 +85,6 @@ map: ["enum.ProtolatheVisualLayers.BaseUnlit"] - state: protolathe map: ["enum.ProtolatheVisualLayers.AnimationLayer"] - - - type: Physics - shapes: - - !type:PhysShapeAabb - layer: - - Opaque - - Impassable - - MobImpassable - - VaultImpassable - - type: SnapGrid - offset: Center - type: ResearchClient - type: TechnologyDatabase - type: ProtolatheDatabase diff --git a/Resources/Prototypes/Entities/Constructible/Power/vending_machines.yml b/Resources/Prototypes/Entities/Constructible/Power/vending_machines.yml index 8a99122b30..590f0b0923 100644 --- a/Resources/Prototypes/Entities/Constructible/Power/vending_machines.yml +++ b/Resources/Prototypes/Entities/Constructible/Power/vending_machines.yml @@ -2,6 +2,8 @@ id: VendingMachine name: vending machine abstract: true + placement: + mode: SnapgridCenter components: - type: Clickable - type: InteractionOutline diff --git a/Resources/Prototypes/Entities/Constructible/Power/microwave.yml b/Resources/Prototypes/Entities/Constructible/Specific/Cooking/microwave.yml similarity index 100% rename from Resources/Prototypes/Entities/Constructible/Power/microwave.yml rename to Resources/Prototypes/Entities/Constructible/Specific/Cooking/microwave.yml diff --git a/Resources/Prototypes/Entities/Constructible/Specific/booze_dispenser.yml b/Resources/Prototypes/Entities/Constructible/Specific/Dispensers/booze_dispenser.yml similarity index 93% rename from Resources/Prototypes/Entities/Constructible/Specific/booze_dispenser.yml rename to Resources/Prototypes/Entities/Constructible/Specific/Dispensers/booze_dispenser.yml index 347e8c582e..66b2844c9e 100644 --- a/Resources/Prototypes/Entities/Constructible/Specific/booze_dispenser.yml +++ b/Resources/Prototypes/Entities/Constructible/Specific/Dispensers/booze_dispenser.yml @@ -9,8 +9,6 @@ state: booze_dispenser - type: ReagentDispenser pack: BoozeDispenserInventory - - type: Anchorable - - type: Pullable - type: reagentDispenserInventory id: BoozeDispenserInventory diff --git a/Resources/Prototypes/Entities/Constructible/Specific/chem_dispenser.yml b/Resources/Prototypes/Entities/Constructible/Specific/Dispensers/chem_dispenser.yml similarity index 95% rename from Resources/Prototypes/Entities/Constructible/Specific/chem_dispenser.yml rename to Resources/Prototypes/Entities/Constructible/Specific/Dispensers/chem_dispenser.yml index 15dd91d390..9a014fb46f 100644 --- a/Resources/Prototypes/Entities/Constructible/Specific/chem_dispenser.yml +++ b/Resources/Prototypes/Entities/Constructible/Specific/Dispensers/chem_dispenser.yml @@ -13,8 +13,6 @@ - type: ReagentDispenser pack: ChemDispenserStandardInventory - type: PowerReceiver - - type: Anchorable - - type: Pullable - type: reagentDispenserInventory id: ChemDispenserStandardInventory diff --git a/Resources/Prototypes/Entities/Constructible/Power/reagent_dispenser_base.yml b/Resources/Prototypes/Entities/Constructible/Specific/Dispensers/reagent_dispenser_base.yml similarity index 74% rename from Resources/Prototypes/Entities/Constructible/Power/reagent_dispenser_base.yml rename to Resources/Prototypes/Entities/Constructible/Specific/Dispensers/reagent_dispenser_base.yml index 123732039f..0ee63db22b 100644 --- a/Resources/Prototypes/Entities/Constructible/Power/reagent_dispenser_base.yml +++ b/Resources/Prototypes/Entities/Constructible/Specific/Dispensers/reagent_dispenser_base.yml @@ -1,16 +1,22 @@ - type: entity abstract: true id: ReagentDispenserBase + placement: + mode: SnapgridCenter components: - type: Clickable - type: InteractionOutline - - type: Anchorable - type: Physics mass: 25 anchored: true shapes: - !type:PhysShapeAabb - bounds: "-0.4,-0.25,0.4,0.25" + bounds: "-0.3,-0.4,0.3,0.4" + mask: + - Impassable + - MobImpassable + - VaultImpassable + - SmallImpassable layer: - Opaque - Impassable @@ -25,4 +31,5 @@ - key: enum.ReagentDispenserUiKey.Key type: ReagentDispenserBoundUserInterface - type: LoopingSound - + - type: Anchorable + - type: Pullable diff --git a/Resources/Prototypes/Entities/Constructible/Power/soda_dispenser.yml b/Resources/Prototypes/Entities/Constructible/Specific/Dispensers/soda_dispenser.yml similarity index 93% rename from Resources/Prototypes/Entities/Constructible/Power/soda_dispenser.yml rename to Resources/Prototypes/Entities/Constructible/Specific/Dispensers/soda_dispenser.yml index 0ba3e0e60d..a47eccd325 100644 --- a/Resources/Prototypes/Entities/Constructible/Power/soda_dispenser.yml +++ b/Resources/Prototypes/Entities/Constructible/Specific/Dispensers/soda_dispenser.yml @@ -9,8 +9,6 @@ state: soda_dispenser - type: ReagentDispenser pack: SodaDispenserInventory - - type: Anchorable - - type: Pullable - type: reagentDispenserInventory id: SodaDispenserInventory diff --git a/Resources/Prototypes/Entities/Constructible/Power/AME/ame_controller.yml b/Resources/Prototypes/Entities/Constructible/Specific/Engines/AME/ame_controller.yml similarity index 100% rename from Resources/Prototypes/Entities/Constructible/Power/AME/ame_controller.yml rename to Resources/Prototypes/Entities/Constructible/Specific/Engines/AME/ame_controller.yml diff --git a/Resources/Prototypes/Entities/Constructible/Power/AME/ame_structure.yml b/Resources/Prototypes/Entities/Constructible/Specific/Engines/AME/ame_structure.yml similarity index 100% rename from Resources/Prototypes/Entities/Constructible/Power/AME/ame_structure.yml rename to Resources/Prototypes/Entities/Constructible/Specific/Engines/AME/ame_structure.yml diff --git a/Resources/Prototypes/Entities/Singularity/emitter.yml b/Resources/Prototypes/Entities/Constructible/Specific/Engines/Singularity/emitter.yml similarity index 84% rename from Resources/Prototypes/Entities/Singularity/emitter.yml rename to Resources/Prototypes/Entities/Constructible/Specific/Engines/Singularity/emitter.yml index de1b6ae549..4edcccbceb 100644 --- a/Resources/Prototypes/Entities/Singularity/emitter.yml +++ b/Resources/Prototypes/Entities/Constructible/Specific/Engines/Singularity/emitter.yml @@ -8,11 +8,20 @@ - type: InteractionOutline - type: Clickable - type: Physics + mass: 25 anchored: true shapes: - !type:PhysShapeAabb bounds: "-0.5, -0.5, 0.5, 0.5" - layer: [MobMask, Opaque] + layer: + - Impassable + - MobImpassable + - VaultImpassable + - Opaque + mask: + - Impassable + - MobImpassable + - VaultImpassable - type: SnapGrid offset: Center - type: Sprite @@ -35,6 +44,8 @@ - type: Anchorable - type: Pullable - type: Appearance +# - type: Rotatable +# Idk why but the emitter breaks when I apply this. visuals: - type: EmitterVisualizer - type: AccessReader diff --git a/Resources/Prototypes/Entities/Constructible/Power/research.yml b/Resources/Prototypes/Entities/Constructible/Specific/Research/research.yml similarity index 96% rename from Resources/Prototypes/Entities/Constructible/Power/research.yml rename to Resources/Prototypes/Entities/Constructible/Specific/Research/research.yml index 167807e7c9..be404b783f 100644 --- a/Resources/Prototypes/Entities/Constructible/Power/research.yml +++ b/Resources/Prototypes/Entities/Constructible/Specific/Research/research.yml @@ -2,6 +2,8 @@ id: ResearchAndDevelopmentServer name: "R&D server" description: 'Thats a R&D server.' + placement: + mode: SnapgridCenter components: - type: Sprite sprite: Constructible/Power/server.rsi @@ -37,6 +39,8 @@ - type: entity id: BaseResearchAndDevelopmentPointSource name: "base R&D point source" + placement: + mode: SnapgridCenter # We should make this abstract once there are actual point sources. components: - type: Sprite diff --git a/Resources/Prototypes/Entities/Constructible/Specific/chem_master.yml b/Resources/Prototypes/Entities/Constructible/Specific/chem_master.yml index 6687a663a3..b64ca01e64 100644 --- a/Resources/Prototypes/Entities/Constructible/Specific/chem_master.yml +++ b/Resources/Prototypes/Entities/Constructible/Specific/chem_master.yml @@ -2,6 +2,8 @@ id: chem_master name: ChemMaster 4000 description: An industrial grade chemical manipulator with pill and bottle production included. + placement: + mode: SnapgridCenter components: - type: Sprite sprite: Constructible/Power/mixer.rsi @@ -46,6 +48,7 @@ id: chem_master_broken name: ChemMaster 4000 [Broken] description: A broken industrial grade chemical manipulator. + abstract: true components: - type: Sprite sprite: Constructible/Power/mixer.rsi diff --git a/Resources/Textures/Constructible/Misc/furniture.rsi/bar_stool.png b/Resources/Textures/Constructible/Misc/furniture.rsi/bar_stool.png index 90cda80d0b..db4e5d185a 100644 Binary files a/Resources/Textures/Constructible/Misc/furniture.rsi/bar_stool.png and b/Resources/Textures/Constructible/Misc/furniture.rsi/bar_stool.png differ