Adds material and singularity cargo crates (#3445)
* Adds various crates * Removes redundant code from EmitterComponent.cs * (fixed) emitter * Hopefully good * Update meta.json
@@ -1,4 +1,4 @@
|
||||
using System;
|
||||
using System;
|
||||
using Content.Shared.GameObjects.Components.Singularity;
|
||||
using JetBrains.Annotations;
|
||||
using Robust.Client.GameObjects;
|
||||
@@ -8,8 +8,8 @@ namespace Content.Client.GameObjects.Components.Singularity
|
||||
[UsedImplicitly]
|
||||
public class EmitterVisualizer : AppearanceVisualizer
|
||||
{
|
||||
private const string OverlayBeam = "emitter-beam";
|
||||
private const string OverlayUnderPowered = "emitter-underpowered";
|
||||
private const string OverlayBeam = "beam";
|
||||
private const string OverlayUnderPowered = "underpowered";
|
||||
|
||||
public override void OnChangeData(AppearanceComponent component)
|
||||
{
|
||||
|
||||
@@ -98,23 +98,6 @@ namespace Content.Server.GameObjects.Components.Singularity
|
||||
}
|
||||
}
|
||||
|
||||
public override void HandleMessage(ComponentMessage message, IComponent? component)
|
||||
{
|
||||
base.HandleMessage(message, component);
|
||||
switch (message)
|
||||
{
|
||||
case AnchoredChangedMessage anchoredChanged:
|
||||
OnAnchoredChanged(anchoredChanged);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
private void OnAnchoredChanged(AnchoredChangedMessage anchoredChanged)
|
||||
{
|
||||
if (anchoredChanged.Anchored)
|
||||
Owner.SnapToGrid();
|
||||
}
|
||||
|
||||
void IActivate.Activate(ActivateEventArgs eventArgs)
|
||||
{
|
||||
if (_isLocked)
|
||||
|
||||
@@ -72,7 +72,7 @@ namespace Content.Server.GameObjects.Components.Singularity
|
||||
|
||||
if(_radiationPulseComponent != null) _radiationPulseComponent.RadsPerSecond = 10 * value;
|
||||
|
||||
_spriteComponent?.LayerSetRSI(0, "Effects/Singularity/singularity_" + _level + ".rsi");
|
||||
_spriteComponent?.LayerSetRSI(0, "Constructible/Power/Singularity/singularity_" + _level + ".rsi");
|
||||
_spriteComponent?.LayerSetState(0, "singularity_" + _level);
|
||||
|
||||
if(_collidableComponent != null && _collidableComponent.PhysicsShapes.Any() && _collidableComponent.PhysicsShapes[0] is PhysShapeCircle circle)
|
||||
|
||||
@@ -38423,7 +38423,7 @@ entities:
|
||||
rot: 4.371139006309477E-08 rad
|
||||
type: Transform
|
||||
- uid: 4290
|
||||
type: SinguloGenerator
|
||||
type: SingularityGenerator
|
||||
components:
|
||||
- parent: 853
|
||||
pos: 49.5,-24.5
|
||||
@@ -41471,7 +41471,7 @@ entities:
|
||||
rot: 4.371139006309477E-08 rad
|
||||
type: Transform
|
||||
- uid: 4714
|
||||
type: CrateMaterialsMetal
|
||||
type: CrateMaterialMetal
|
||||
components:
|
||||
- parent: 853
|
||||
pos: 21.5,13.5
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
- type: cargoProduct
|
||||
name: "packaged antimatter reactor crate"
|
||||
id: cargo.enginesameshielding
|
||||
id: cargo.engineameshielding
|
||||
description: "9 parts for the main body of an antimatter reactor, or for expanding an existing one."
|
||||
icon:
|
||||
sprite: Objects/Power/AME/ame_part.rsi
|
||||
@@ -12,7 +12,7 @@
|
||||
|
||||
- type: cargoProduct
|
||||
name: "antimatter containment jar crate"
|
||||
id: cargo.enginesamejar
|
||||
id: cargo.engineamejar
|
||||
description: "3 antimatter jars, for fuelling an antimatter reactor."
|
||||
icon:
|
||||
sprite: Objects/Power/AME/ame_jar.rsi
|
||||
@@ -24,7 +24,7 @@
|
||||
|
||||
- type: cargoProduct
|
||||
name: "antimatter control unit crate"
|
||||
id: cargo.enginesamecontrol
|
||||
id: cargo.engineamecontrol
|
||||
description: "The control unit of an antimatter reactor."
|
||||
icon:
|
||||
sprite: Constructible/Power/ame_controller.rsi
|
||||
@@ -34,3 +34,50 @@
|
||||
category: Engineering
|
||||
group: market
|
||||
|
||||
- type: cargoProduct
|
||||
name: "singularity generator crate"
|
||||
id: cargo.enginesingularitygenerator
|
||||
description: "Contains one singularity generator. The mother of the beast."
|
||||
icon:
|
||||
sprite: Constructible/Power/Singularity/generator.rsi
|
||||
state: icon
|
||||
product: CrateEngineeringSingularityGenerator
|
||||
cost: 4000
|
||||
category: Engineering
|
||||
group: market
|
||||
|
||||
- type: cargoProduct
|
||||
name: "singularity containment crate"
|
||||
id: cargo.enginesingularitycontainment
|
||||
description: "Contains 2 singularity containment field generators."
|
||||
icon:
|
||||
sprite: Constructible/Power/Singularity/containment.rsi
|
||||
state: icon
|
||||
product: CrateEngineeringSingularityContainment
|
||||
cost: 1500
|
||||
category: Engineering
|
||||
group: market
|
||||
|
||||
- type: cargoProduct
|
||||
name: "emitter crate"
|
||||
id: cargo.enginesingularityemitter
|
||||
description: "Contains 2 emitters. Used only for dangerous applications."
|
||||
icon:
|
||||
sprite: Constructible/Power/Singularity/emitter.rsi
|
||||
state: emitter2
|
||||
product: CrateEngineeringSingularityEmitter
|
||||
cost: 1500
|
||||
category: Engineering
|
||||
group: market
|
||||
|
||||
- type: cargoProduct
|
||||
name: "radiation collector crate"
|
||||
id: cargo.enginesingularitycollector
|
||||
description: "Contains 2 radiation collectors. Safety first!"
|
||||
icon:
|
||||
sprite: Constructible/Power/Singularity/collector.rsi
|
||||
state: ca_on
|
||||
product: CrateEngineeringSingularityCollector
|
||||
cost: 1500
|
||||
category: Engineering
|
||||
group: market
|
||||
|
||||
@@ -15,8 +15,8 @@
|
||||
id: cargo.funartsupplies
|
||||
description: "Make some happy little accidents with lots of crayons!"
|
||||
icon:
|
||||
sprite: Objects/Misc/crayons.rsi
|
||||
state: crayonbox
|
||||
sprite: Objects/Fun/crayons.rsi
|
||||
state: box
|
||||
product: CrateFunArtSupplies
|
||||
cost: 1000
|
||||
category: Fun
|
||||
|
||||
35
Resources/Prototypes/Catalog/Cargo/cargo_materials.yml
Normal file
@@ -0,0 +1,35 @@
|
||||
- type: cargoProduct
|
||||
name: "crate of glass sheets"
|
||||
id: cargo.materialglass
|
||||
description: "90 sheets of glass, packed with care."
|
||||
icon:
|
||||
sprite: Objects/Materials/Sheets/glass.rsi
|
||||
state: glass_3
|
||||
product: CrateMaterialGlass
|
||||
cost: 1500
|
||||
category: Materials
|
||||
group: market
|
||||
|
||||
- type: cargoProduct
|
||||
name: "crate of steel sheets"
|
||||
id: cargo.materialsteel
|
||||
description: "90 sheets of steel."
|
||||
icon:
|
||||
sprite: Objects/Materials/Sheets/metal.rsi
|
||||
state: steel_3
|
||||
product: CrateMaterialGlass
|
||||
cost: 1500
|
||||
category: Materials
|
||||
group: market
|
||||
|
||||
- type: cargoProduct
|
||||
name: "crate of plastic sheets"
|
||||
id: cargo.materialplastic
|
||||
description: "90 sheets of plastic."
|
||||
icon:
|
||||
sprite: Objects/Materials/Sheets/other.rsi
|
||||
state: plastic_3
|
||||
product: CrateMaterialPlastic
|
||||
cost: 1500
|
||||
category: Materials
|
||||
group: market
|
||||
@@ -31,6 +31,63 @@
|
||||
- name: AMEControllerUnanchored
|
||||
amount: 1
|
||||
|
||||
- type: entity
|
||||
id: CrateEngineeringSingularityEmitter
|
||||
name: emitter crate
|
||||
description: "An emitter, best used for singularity engines."
|
||||
parent: CrateEngineeringSecure
|
||||
components:
|
||||
- type: StorageFill
|
||||
contents:
|
||||
- name: Emitter
|
||||
amount: 2
|
||||
|
||||
- type: entity
|
||||
id: CrateEngineeringSingularityCollector
|
||||
name: radiation collector crate
|
||||
description: "A radiation collector, best used for singularity engines."
|
||||
parent: CrateEngineeringSecure
|
||||
components:
|
||||
- type: StorageFill
|
||||
contents:
|
||||
- name: RadiationCollector
|
||||
amount: 2
|
||||
|
||||
- type: entity
|
||||
id: CrateEngineeringSingularityContainment
|
||||
name: containment field generator crate
|
||||
description: "A containment field generator, keeps the singulo in submission."
|
||||
parent: CrateEngineeringSecure
|
||||
components:
|
||||
- type: StorageFill
|
||||
contents:
|
||||
- name: ContainmentFieldGenerator
|
||||
amount: 2
|
||||
|
||||
- type: entity
|
||||
id: CrateEngineeringSingularityGenerator
|
||||
name: singularity generator crate
|
||||
description: "A singularity generator, the mother of the beast."
|
||||
parent: CrateEngineeringSecure
|
||||
components:
|
||||
- type: StorageFill
|
||||
contents:
|
||||
- name: SingularityGenerator
|
||||
amount: 1
|
||||
|
||||
# Non-functional for some reason
|
||||
|
||||
#- type: entity
|
||||
# id: CrateEngineeringSingularity
|
||||
# name: singularity crate
|
||||
# description: "Prank the station!"
|
||||
# parent: CrateEngineeringSecure
|
||||
# components:
|
||||
# - type: StorageFill
|
||||
# contents:
|
||||
# - name: Singularity
|
||||
# amount: 1
|
||||
|
||||
- type: entity
|
||||
id: CrateEngineeringGenerator
|
||||
name: generator crate
|
||||
|
||||
@@ -1,25 +1,35 @@
|
||||
- type: entity
|
||||
id: CrateMaterialsGlass
|
||||
id: CrateMaterialGlass
|
||||
name: glass crate
|
||||
parent: CrateGenericonimo
|
||||
components:
|
||||
- type: StorageFill
|
||||
contents:
|
||||
- name: SheetGlass
|
||||
amount: 1
|
||||
amount: 3
|
||||
|
||||
- type: entity
|
||||
id: CrateMaterialsMetal
|
||||
id: CrateMaterialMetal
|
||||
name: metals crate
|
||||
parent: CrateGenericonimo
|
||||
components:
|
||||
- type: StorageFill
|
||||
contents:
|
||||
- name: SheetSteel
|
||||
amount: 1
|
||||
amount: 3
|
||||
|
||||
- type: entity
|
||||
id: CrateMaterialsWood
|
||||
id: CrateMaterialPlastic
|
||||
name: plastics crate
|
||||
parent: CrateGenericonimo
|
||||
components:
|
||||
- type: StorageFill
|
||||
contents:
|
||||
- name: SheetPlastic
|
||||
amount: 3
|
||||
|
||||
- type: entity
|
||||
id: CrateMaterialWood
|
||||
name: wood crate
|
||||
parent: CrateGenericonimo
|
||||
components:
|
||||
@@ -29,7 +39,7 @@
|
||||
amount: 1
|
||||
|
||||
- type: entity
|
||||
id: CrateMaterialsFuelTank
|
||||
id: CrateMaterialFuelTank
|
||||
name: fueltank crate
|
||||
parent: CrateGenericonimo
|
||||
components:
|
||||
@@ -39,7 +49,7 @@
|
||||
amount: 1
|
||||
|
||||
#- type: entity
|
||||
# id: CrateMaterialsHFuelTank
|
||||
# id: CrateMaterialHFuelTank
|
||||
# name: fueltank crate
|
||||
# parent: CrateGenericonimo
|
||||
# components:
|
||||
@@ -49,7 +59,7 @@
|
||||
# amount: 1
|
||||
|
||||
- type: entity
|
||||
id: CrateMaterialsWaterTank
|
||||
id: CrateMaterialWaterTank
|
||||
name: watertank crate
|
||||
parent: CrateGenericonimo
|
||||
components:
|
||||
@@ -59,7 +69,7 @@
|
||||
amount: 1
|
||||
|
||||
#- type: entity
|
||||
# id: CrateMaterialsHWaterTank
|
||||
# id: CrateMaterialHWaterTank
|
||||
# name: watertank crate
|
||||
# parent: CrateGenericonimo
|
||||
# components:
|
||||
@@ -69,17 +79,7 @@
|
||||
# amount: 1
|
||||
|
||||
- type: entity
|
||||
id: CrateMaterialsPlastic
|
||||
name: plastics crate
|
||||
parent: CrateGenericonimo
|
||||
components:
|
||||
- type: StorageFill
|
||||
contents:
|
||||
- name: SheetPlastic
|
||||
amount: 1
|
||||
|
||||
- type: entity
|
||||
id: CrateMaterialsPlasteel
|
||||
id: CrateMaterialPlasteel
|
||||
name: plasteel crate
|
||||
parent: CrateGenericonimo
|
||||
components:
|
||||
|
||||
@@ -31,12 +31,19 @@
|
||||
- cargo.hydroponicsseedsexotic
|
||||
- cargo.servicejanitorial
|
||||
- cargo.servicelightsreplacement
|
||||
- cargo.enginesameshielding
|
||||
- cargo.enginesamejar
|
||||
- cargo.enginesamecontrol
|
||||
- cargo.engineameshielding
|
||||
- cargo.engineamejar
|
||||
- cargo.engineamecontrol
|
||||
- cargo.funplushies
|
||||
- cargo.funartsupplies
|
||||
- cargo.funinstruments
|
||||
- cargo.materialsteel
|
||||
- cargo.materialglass
|
||||
- cargo.materialplastic
|
||||
- cargo.enginesingularityemitter
|
||||
- cargo.enginesingularitycollector
|
||||
- cargo.enginesingularitygenerator
|
||||
- cargo.enginesingularitycontainment
|
||||
- type: UserInterface
|
||||
interfaces:
|
||||
- key: enum.CargoConsoleUiKey.Key
|
||||
|
||||
@@ -0,0 +1,41 @@
|
||||
- type: entity
|
||||
id: RadiationCollector
|
||||
name: Radiation Collector
|
||||
description: A machine that collects Radiation and turns it into power.
|
||||
placement:
|
||||
mode: SnapgridCenter
|
||||
components:
|
||||
- type: Clickable
|
||||
- type: InteractionOutline
|
||||
- type: Physics
|
||||
shapes:
|
||||
- !type:PhysShapeAabb
|
||||
bounds: "-0.5, -0.5, 0.5, 0.5"
|
||||
# layer:
|
||||
# - Impassable
|
||||
# - MobImpassable
|
||||
# - VaultImpassable
|
||||
# - Opaque
|
||||
# mask:
|
||||
# - Impassable
|
||||
# - MobImpassable
|
||||
# - VaultImpassable
|
||||
- type: SnapGrid
|
||||
offset: Center
|
||||
- type: Sprite
|
||||
sprite: Constructible/Power/Singularity/collector.rsi
|
||||
layers:
|
||||
- state: ca_on
|
||||
map: ["enum.RadiationCollectorVisualLayers.Main"]
|
||||
- type: Appearance
|
||||
visuals:
|
||||
- type: RadiationCollectorVisualizer
|
||||
- type: NodeContainer
|
||||
examinable: true
|
||||
nodes:
|
||||
- !type:AdjacentNode
|
||||
nodeGroupID: HVPower
|
||||
- type: RadiationCollector
|
||||
- type: Anchorable
|
||||
snap: true
|
||||
- type: Pullable
|
||||
@@ -0,0 +1,65 @@
|
||||
- type: entity
|
||||
name: containment field generator
|
||||
description: "A machine that generates a containment field when powered by an emitter.\nKeeps the Singularity docile."
|
||||
id: ContainmentFieldGenerator
|
||||
placement:
|
||||
mode: SnapgridCenter
|
||||
components:
|
||||
- type: InteractionOutline
|
||||
- type: Clickable
|
||||
- type: Physics
|
||||
shapes:
|
||||
- !type:PhysShapeAabb
|
||||
bounds: "-0.5, -0.5, 0.5, 0.5"
|
||||
# layer:
|
||||
# - Impassable
|
||||
# - MobImpassable
|
||||
# - VaultImpassable
|
||||
# - Opaque
|
||||
# mask:
|
||||
# - Impassable
|
||||
# - MobImpassable
|
||||
# - VaultImpassable
|
||||
- type: SnapGrid
|
||||
offset: Center
|
||||
- type: Sprite
|
||||
sprite: Constructible/Power/Singularity/containment.rsi
|
||||
state: icon
|
||||
- type: Icon
|
||||
sprite: Constructible/Power/Singularity/containment.rsi
|
||||
state: icon
|
||||
- type: ContainmentFieldGenerator
|
||||
- type: Anchorable
|
||||
snap: true
|
||||
- type: Pullable
|
||||
- type: PointLight
|
||||
enabled: false
|
||||
color: "#4080FF"
|
||||
radius: 32
|
||||
energy: 2.0
|
||||
softness: 32.0
|
||||
|
||||
- type: entity
|
||||
name: Containment Field
|
||||
description: "A containment field that repels gravitational singularities."
|
||||
id: ContainmentField
|
||||
placement:
|
||||
mode: SnapgridCenter
|
||||
components:
|
||||
- type: InteractionOutline
|
||||
- type: Clickable
|
||||
- type: Physics
|
||||
anchored: true
|
||||
shapes:
|
||||
- !type:PhysShapeAabb
|
||||
bounds: "-0.5, -0.5, 0.5, 0.5"
|
||||
layer: [MobMask, Opaque]
|
||||
- type: SnapGrid
|
||||
offset: Center
|
||||
- type: Sprite
|
||||
sprite: Constructible/Power/Singularity/containment_field.rsi
|
||||
state: field
|
||||
- type: Icon
|
||||
sprite: Constructible/Power/Singularity/containment_field.rsi
|
||||
state: field
|
||||
- type: ContainmentField
|
||||
@@ -1,37 +1,36 @@
|
||||
- type: entity
|
||||
name: Emitter
|
||||
name: emitter
|
||||
description: "A machine that fires bolts of energy, used for powering containment fields at a safe distance."
|
||||
id: Emitter
|
||||
placement:
|
||||
mode: SnapgridCenter
|
||||
components:
|
||||
- type: InteractionOutline
|
||||
- type: Clickable
|
||||
- type: InteractionOutline
|
||||
- type: Physics
|
||||
mass: 25
|
||||
anchored: true
|
||||
shapes:
|
||||
- !type:PhysShapeAabb
|
||||
bounds: "-0.5, -0.5, 0.5, 0.5"
|
||||
layer:
|
||||
- Impassable
|
||||
- MobImpassable
|
||||
- VaultImpassable
|
||||
- Opaque
|
||||
mask:
|
||||
- Impassable
|
||||
- MobImpassable
|
||||
- VaultImpassable
|
||||
# layer:
|
||||
# - Impassable
|
||||
# - MobImpassable
|
||||
# - VaultImpassable
|
||||
# - Opaque
|
||||
# mask:
|
||||
# - Impassable
|
||||
# - MobImpassable
|
||||
# - VaultImpassable
|
||||
- type: SnapGrid
|
||||
offset: Center
|
||||
- type: Sprite
|
||||
sprite: Constructible/Power/emitter.rsi
|
||||
sprite: Constructible/Power/Singularity/emitter.rsi
|
||||
layers:
|
||||
- state: emitter2
|
||||
- state: emitter-beam
|
||||
- state: beam
|
||||
shader: unshaded
|
||||
visible: false
|
||||
- state: emitter-lock
|
||||
- state: lock
|
||||
shader: unshaded
|
||||
visible: false
|
||||
- type: Emitter
|
||||
@@ -43,16 +42,15 @@
|
||||
- !type:AdjacentNode
|
||||
nodeGroupID: MVPower
|
||||
- type: Anchorable
|
||||
snap: true
|
||||
- type: Pullable
|
||||
- type: Rotatable
|
||||
- type: Appearance
|
||||
# - type: Rotatable
|
||||
# Idk why but the emitter breaks when I apply this.
|
||||
visuals:
|
||||
- type: EmitterVisualizer
|
||||
- type: AccessReader
|
||||
access: [[ "Engineering" ]]
|
||||
|
||||
|
||||
- type: entity
|
||||
name: Emitter Bolt
|
||||
description: "A bolt of energy."
|
||||
@@ -60,14 +58,14 @@
|
||||
parent: BulletBase
|
||||
components:
|
||||
- type: Sprite
|
||||
sprite: Constructible/Power/emitter.rsi
|
||||
sprite: Constructible/Power/Singularity/emitter.rsi
|
||||
state: ''
|
||||
layers:
|
||||
- state: emitter_projectile
|
||||
- state: projectile
|
||||
shader: unshaded
|
||||
- type: Icon
|
||||
sprite: Constructible/Power/emitter.rsi
|
||||
state: emitter_projectile
|
||||
sprite: Constructible/Power/Singularity/emitter.rsi
|
||||
state: projectile
|
||||
- type: EmitterBoltComponent
|
||||
- type: Projectile
|
||||
soundHit: /Audio/Weapons/Guns/Hits/bullet_hit.ogg
|
||||
|
||||
@@ -0,0 +1,29 @@
|
||||
- type: entity
|
||||
name: gravitational singularity generator
|
||||
description: An Odd Device which produces a Gravitational Singularity when set up.
|
||||
id: SingularityGenerator
|
||||
components:
|
||||
- type: Sprite
|
||||
sprite: Constructible/Power/Singularity/generator.rsi
|
||||
state: icon
|
||||
- type: SingularityGenerator
|
||||
- type: InteractionOutline
|
||||
- type: Clickable
|
||||
- type: Physics
|
||||
shapes:
|
||||
- !type:PhysShapeAabb
|
||||
bounds: "-0.5, -0.5, 0.5, 0.5"
|
||||
# layer:
|
||||
# - Impassable
|
||||
# - MobImpassable
|
||||
# - VaultImpassable
|
||||
# - Opaque
|
||||
# mask:
|
||||
# - Impassable
|
||||
# - MobImpassable
|
||||
# - VaultImpassable
|
||||
- type: SnapGrid
|
||||
offset: Center
|
||||
- type: Anchorable
|
||||
snap: true
|
||||
- type: Pullable
|
||||
@@ -0,0 +1,26 @@
|
||||
- type: entity
|
||||
name: "Gravitational Singularity"
|
||||
description: "A mesmerizing swirl of darkness that sucks in everything.\nIf it's moving towards you, run."
|
||||
id: Singularity
|
||||
components:
|
||||
- type: Clickable
|
||||
- type: Physics
|
||||
anchored: false
|
||||
shapes:
|
||||
- !type:PhysShapeCircle
|
||||
radius: 0.5
|
||||
layer: [Impassable]
|
||||
mask:
|
||||
- AllMask
|
||||
mass: 5
|
||||
- type: Singularity
|
||||
- type: RadiationPulse
|
||||
range: 15
|
||||
decay: false
|
||||
- type: Sprite
|
||||
sprite: Constructible/Power/Singularity/singularity_1.rsi
|
||||
state: singularity_1
|
||||
- type: Icon
|
||||
sprite: Constructible/Power/Singularity/singularity_1.rsi
|
||||
state: singularity_1
|
||||
drawdepth: Items
|
||||
@@ -1,140 +0,0 @@
|
||||
- type: entity
|
||||
name: "Gravitational Singularity"
|
||||
description: "A mesmerizing swirl of darkness that sucks in everything.\nIf it's moving towards you, run."
|
||||
id: Singularity
|
||||
components:
|
||||
- type: Clickable
|
||||
- type: Physics
|
||||
anchored: false
|
||||
shapes:
|
||||
- !type:PhysShapeCircle
|
||||
radius: 0.5
|
||||
layer: [Impassable]
|
||||
mask:
|
||||
- AllMask
|
||||
mass: 5
|
||||
- type: Singularity
|
||||
- type: RadiationPulse
|
||||
range: 15
|
||||
decay: false
|
||||
- type: Sprite
|
||||
sprite: Effects/Singularity/singularity_1.rsi
|
||||
state: singularity_1
|
||||
- type: Icon
|
||||
sprite: Effects/Singularity/singularity_1.rsi
|
||||
state: singularity_1
|
||||
drawdepth: Items
|
||||
|
||||
- type: entity
|
||||
id: RadiationCollector
|
||||
name: Radiation Collector
|
||||
description: A machine that collects Radiation and turns it into power.
|
||||
placement:
|
||||
mode: SnapgridCenter
|
||||
components:
|
||||
- type: Clickable
|
||||
- type: InteractionOutline
|
||||
- type: Physics
|
||||
anchored: true
|
||||
shapes:
|
||||
- !type:PhysShapeAabb
|
||||
bounds: "-0.5, -0.5, 0.5, 0.5"
|
||||
layer: [MobMask, Opaque]
|
||||
- type: SnapGrid
|
||||
offset: Center
|
||||
- type: Sprite
|
||||
sprite: Constructible/Power/radiation_collector.rsi
|
||||
layers:
|
||||
- state: ca_on
|
||||
map: ["enum.RadiationCollectorVisualLayers.Main"]
|
||||
- type: Appearance
|
||||
visuals:
|
||||
- type: RadiationCollectorVisualizer
|
||||
- type: NodeContainer
|
||||
examinable: true
|
||||
nodes:
|
||||
- !type:AdjacentNode
|
||||
nodeGroupID: HVPower
|
||||
- type: RadiationCollector
|
||||
- type: Anchorable
|
||||
- type: Pullable
|
||||
|
||||
- type: entity
|
||||
name: Containment Field Generator
|
||||
description: "A machine that generates a containment field when powered by an emitter.\nKeeps the Singularity docile."
|
||||
id: ContainmentFieldGenerator
|
||||
placement:
|
||||
mode: SnapgridCenter
|
||||
components:
|
||||
- type: InteractionOutline
|
||||
- type: Clickable
|
||||
- type: Physics
|
||||
anchored: true
|
||||
shapes:
|
||||
- !type:PhysShapeAabb
|
||||
bounds: "-0.5, -0.5, 0.5, 0.5"
|
||||
layer: [MobMask, Opaque]
|
||||
- type: SnapGrid
|
||||
offset: Center
|
||||
- type: Sprite
|
||||
sprite: Constructible/Power/field_generator.rsi
|
||||
state: Field_Gen
|
||||
- type: Icon
|
||||
sprite: Constructible/Power/field_generator.rsi
|
||||
state: Field_Gen
|
||||
- type: ContainmentFieldGenerator
|
||||
- type: Anchorable
|
||||
- type: Pullable
|
||||
- type: PointLight
|
||||
enabled: false
|
||||
color: "#4080FF"
|
||||
radius: 32
|
||||
energy: 2.0
|
||||
softness: 32.0
|
||||
|
||||
- type: entity
|
||||
name: Containment Field
|
||||
description: "A containment field that repels gravitational singularities."
|
||||
id: ContainmentField
|
||||
placement:
|
||||
mode: SnapgridCenter
|
||||
components:
|
||||
- type: InteractionOutline
|
||||
- type: Clickable
|
||||
- type: Physics
|
||||
anchored: true
|
||||
shapes:
|
||||
- !type:PhysShapeAabb
|
||||
bounds: "-0.5, -0.5, 0.5, 0.5"
|
||||
layer: [MobMask, Opaque]
|
||||
- type: SnapGrid
|
||||
offset: Center
|
||||
- type: Sprite
|
||||
sprite: Effects/contain_f.rsi
|
||||
state: Contain_F
|
||||
- type: Icon
|
||||
sprite: Effects/contain_f.rsi
|
||||
state: Contain_F
|
||||
- type: ContainmentField
|
||||
|
||||
- type: entity
|
||||
name: Gravitational Singularity Generator
|
||||
description: An Odd Device which produces a Gravitational Singularity when set up.
|
||||
id: SinguloGenerator
|
||||
components:
|
||||
- type: Sprite
|
||||
sprite: Effects/Singularity/singulo_gen.rsi
|
||||
state: singulo_gen
|
||||
- type: SingularityGenerator
|
||||
- type: InteractionOutline
|
||||
- type: Clickable
|
||||
- type: Physics
|
||||
anchored: true
|
||||
shapes:
|
||||
- !type:PhysShapeAabb
|
||||
bounds: "-0.5, -0.5, 0.5, 0.5"
|
||||
layer: [ MobMask ]
|
||||
- type: SnapGrid
|
||||
offset: Center
|
||||
- type: Anchorable
|
||||
- type: Pullable
|
||||
|
Before Width: | Height: | Size: 1021 B After Width: | Height: | Size: 1021 B |
|
Before Width: | Height: | Size: 986 B After Width: | Height: | Size: 986 B |
|
Before Width: | Height: | Size: 563 B After Width: | Height: | Size: 563 B |
|
Before Width: | Height: | Size: 712 B After Width: | Height: | Size: 712 B |
|
Before Width: | Height: | Size: 558 B After Width: | Height: | Size: 558 B |
@@ -0,0 +1,44 @@
|
||||
{
|
||||
"version": 1,
|
||||
"license": "CC-BY-SA-3.0",
|
||||
"copyright": "Taken from goonstation at https://github.com/goonstation/goonstation/commit/cbe076402ed43b1cd861295bbcb95608c453de7a",
|
||||
"size": {
|
||||
"x": 32,
|
||||
"y": 32
|
||||
},
|
||||
"states": [
|
||||
{
|
||||
"name": "ca_off"
|
||||
},
|
||||
{
|
||||
"name": "ca_on"
|
||||
},
|
||||
{
|
||||
"name": "ca_active",
|
||||
"delays": [
|
||||
[
|
||||
0.1,
|
||||
0.1,
|
||||
0.1,
|
||||
0.1,
|
||||
0.1
|
||||
]
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "ca_deactive",
|
||||
"delays": [
|
||||
[
|
||||
0.1,
|
||||
0.1,
|
||||
0.1,
|
||||
0.1,
|
||||
0.1
|
||||
]
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "cu"
|
||||
}
|
||||
]
|
||||
}
|
||||
|
Before Width: | Height: | Size: 138 B After Width: | Height: | Size: 138 B |
|
Before Width: | Height: | Size: 147 B After Width: | Height: | Size: 147 B |
|
Before Width: | Height: | Size: 148 B After Width: | Height: | Size: 148 B |
|
Before Width: | Height: | Size: 977 B After Width: | Height: | Size: 977 B |
@@ -0,0 +1,44 @@
|
||||
{
|
||||
"version": 1,
|
||||
"license": "CC-BY-SA-3.0",
|
||||
"copyright": "Taken from tgstation at https://github.com/tgstation/tgstation/commit/da354ba4e28fcaf73002d25cab0da4815808be60",
|
||||
"size": {
|
||||
"x": 32,
|
||||
"y": 32
|
||||
},
|
||||
"states": [
|
||||
{
|
||||
"name": "a1"
|
||||
},
|
||||
{
|
||||
"name": "a2"
|
||||
},
|
||||
{
|
||||
"name": "a3"
|
||||
},
|
||||
{
|
||||
"name": "on"
|
||||
},
|
||||
{
|
||||
"name": "p1"
|
||||
},
|
||||
{
|
||||
"name": "p2"
|
||||
},
|
||||
{
|
||||
"name": "p3"
|
||||
},
|
||||
{
|
||||
"name": "p4"
|
||||
},
|
||||
{
|
||||
"name": "p5"
|
||||
},
|
||||
{
|
||||
"name": "p6"
|
||||
},
|
||||
{
|
||||
"name": "icon"
|
||||
}
|
||||
]
|
||||
}
|
||||
|
Before Width: | Height: | Size: 416 B After Width: | Height: | Size: 416 B |
|
Before Width: | Height: | Size: 122 B After Width: | Height: | Size: 122 B |
|
Before Width: | Height: | Size: 124 B After Width: | Height: | Size: 124 B |
|
Before Width: | Height: | Size: 132 B After Width: | Height: | Size: 132 B |
|
Before Width: | Height: | Size: 135 B After Width: | Height: | Size: 135 B |
|
Before Width: | Height: | Size: 136 B After Width: | Height: | Size: 136 B |
|
Before Width: | Height: | Size: 136 B After Width: | Height: | Size: 136 B |
|
Before Width: | Height: | Size: 2.0 KiB After Width: | Height: | Size: 2.0 KiB |
@@ -0,0 +1,89 @@
|
||||
{
|
||||
"version": 1,
|
||||
"license": "CC-BY-SA-3.0",
|
||||
"copyright": "Taken from tgstation at https://github.com/tgstation/tgstation/commit/da354ba4e28fcaf73002d25cab0da4815808be60",
|
||||
"size": {
|
||||
"x": 32,
|
||||
"y": 32
|
||||
},
|
||||
"states": [
|
||||
{
|
||||
"name": "field",
|
||||
"directions": 4,
|
||||
"delays": [
|
||||
[
|
||||
0.1,
|
||||
0.1,
|
||||
0.1,
|
||||
0.1,
|
||||
0.1,
|
||||
0.1,
|
||||
0.1,
|
||||
0.1,
|
||||
0.1,
|
||||
0.1,
|
||||
0.1,
|
||||
0.1,
|
||||
0.1,
|
||||
0.1,
|
||||
0.1,
|
||||
0.1
|
||||
],
|
||||
[
|
||||
0.1,
|
||||
0.1,
|
||||
0.1,
|
||||
0.1,
|
||||
0.1,
|
||||
0.1,
|
||||
0.1,
|
||||
0.1,
|
||||
0.1,
|
||||
0.1,
|
||||
0.1,
|
||||
0.1,
|
||||
0.1,
|
||||
0.1,
|
||||
0.1,
|
||||
0.1
|
||||
],
|
||||
[
|
||||
0.1,
|
||||
0.1,
|
||||
0.1,
|
||||
0.1,
|
||||
0.1,
|
||||
0.1,
|
||||
0.1,
|
||||
0.1,
|
||||
0.1,
|
||||
0.1,
|
||||
0.1,
|
||||
0.1,
|
||||
0.1,
|
||||
0.1,
|
||||
0.1,
|
||||
0.1
|
||||
],
|
||||
[
|
||||
0.1,
|
||||
0.1,
|
||||
0.1,
|
||||
0.1,
|
||||
0.1,
|
||||
0.1,
|
||||
0.1,
|
||||
0.1,
|
||||
0.1,
|
||||
0.1,
|
||||
0.1,
|
||||
0.1,
|
||||
0.1,
|
||||
0.1,
|
||||
0.1,
|
||||
0.1
|
||||
]
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
|
Before Width: | Height: | Size: 369 B After Width: | Height: | Size: 369 B |
|
Before Width: | Height: | Size: 3.0 KiB After Width: | Height: | Size: 3.0 KiB |
|
Before Width: | Height: | Size: 2.9 KiB After Width: | Height: | Size: 2.9 KiB |
|
Before Width: | Height: | Size: 3.4 KiB After Width: | Height: | Size: 3.4 KiB |
|
Before Width: | Height: | Size: 214 B After Width: | Height: | Size: 214 B |
@@ -0,0 +1,56 @@
|
||||
{
|
||||
"version": 1,
|
||||
"license": "CC-BY-SA-3.0",
|
||||
"copyright": "Taken from tgstation at https://github.com/tgstation/tgstation/commit/da354ba4e28fcaf73002d25cab0da4815808be60",
|
||||
"size": {
|
||||
"x": 32,
|
||||
"y": 32
|
||||
},
|
||||
"states": [
|
||||
{
|
||||
"name": "beam",
|
||||
"directions": 4
|
||||
},
|
||||
{
|
||||
"name": "underpowered",
|
||||
"directions": 4,
|
||||
"delays": [
|
||||
[
|
||||
0.1,
|
||||
0.1
|
||||
],
|
||||
[
|
||||
0.1,
|
||||
0.1
|
||||
],
|
||||
[
|
||||
0.1,
|
||||
0.1
|
||||
],
|
||||
[
|
||||
0.1,
|
||||
0.1
|
||||
]
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "lock",
|
||||
"directions": 4
|
||||
},
|
||||
{
|
||||
"name": "emitter0",
|
||||
"directions": 4
|
||||
},
|
||||
{
|
||||
"name": "emitter1",
|
||||
"directions": 4
|
||||
},
|
||||
{
|
||||
"name": "emitter2",
|
||||
"directions": 4
|
||||
},
|
||||
{
|
||||
"name": "projectile"
|
||||
}
|
||||
]
|
||||
}
|
||||
|
Before Width: | Height: | Size: 265 B After Width: | Height: | Size: 265 B |
|
Before Width: | Height: | Size: 651 B After Width: | Height: | Size: 651 B |
|
Before Width: | Height: | Size: 1.0 KiB After Width: | Height: | Size: 1.0 KiB |
@@ -0,0 +1,14 @@
|
||||
{
|
||||
"version": 1,
|
||||
"copyright": "Taken from https://github.com/vgstation-coders/vgstation13/blob/68357f0b64a296d122ff1bdb2f13e9b0cb04a003/icons/obj/singularity.dmi",
|
||||
"license": "CC-BY-SA-3.0",
|
||||
"size": {
|
||||
"x": 32,
|
||||
"y": 32
|
||||
},
|
||||
"states": [
|
||||
{
|
||||
"name": "icon"
|
||||
}
|
||||
]
|
||||
}
|
||||
|
Before Width: | Height: | Size: 11 KiB After Width: | Height: | Size: 11 KiB |
|
Before Width: | Height: | Size: 79 KiB After Width: | Height: | Size: 79 KiB |
|
Before Width: | Height: | Size: 204 KiB After Width: | Height: | Size: 204 KiB |
|
Before Width: | Height: | Size: 301 KiB After Width: | Height: | Size: 301 KiB |
|
Before Width: | Height: | Size: 429 KiB After Width: | Height: | Size: 429 KiB |
|
Before Width: | Height: | Size: 2.2 MiB After Width: | Height: | Size: 2.2 MiB |
@@ -1 +0,0 @@
|
||||
{"version":1,"size":{"x":32,"y":32},"license":"CC-BY-SA-3.0","copyright":"Taken from https://github.com/tgstation/tgstation","states":[{"name":"emitter-beam","directions":4,"delays":[[0.1],[0.1],[0.1],[0.1]]},{"name":"emitter-underpowered","directions":4,"delays":[[0.1,0.1],[0.1,0.1],[0.1,0.1],[0.1,0.1]]},{"name":"emitter-lock","directions":4,"delays":[[1.0],[1.0],[1.0],[1.0]]},{"name":"emitter0","directions":4,"delays":[[0.1],[0.1],[0.1],[0.1]]},{"name":"emitter1","directions":4,"delays":[[1.0],[1.0],[1.0],[1.0]]},{"name":"emitter2","directions":4,"delays":[[1.0],[1.0],[1.0],[1.0]]},{"name":"emitter_projectile","directions":1,"delays":[[1.0]]}]}
|
||||
@@ -1 +0,0 @@
|
||||
{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "Taken from https://github.com/tgstation/tgstation", "states": [{"name": "+a1", "delays": [[1.0]]}, {"name": "+a2", "delays": [[1.0]]}, {"name": "+a3", "delays": [[1.0]]}, {"name": "+on", "delays": [[1.0]]}, {"name": "+p1", "delays": [[1.0]]}, {"name": "+p2", "delays": [[1.0]]}, {"name": "+p3", "delays": [[1.0]]}, {"name": "+p4", "delays": [[1.0]]}, {"name": "+p5", "delays": [[1.0]]}, {"name": "+p6", "delays": [[1.0]]}, {"name": "Field_Gen", "delays": [[1.0]]}]}
|
||||
@@ -1 +0,0 @@
|
||||
{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "Taken from https://github.com/goonstation/goonstation-2020", "states": [{"name": "ca_off", "delays": [[1.0]]}, {"name": "ca_on", "delays": [[1.0]]}, {"name": "ca_active", "delays": [[0.1, 0.1, 0.1, 0.1, 0.1]]}, {"name": "ca_deactive", "delays": [[0.1, 0.1, 0.1, 0.1, 0.1]]}, {"name": "cu", "delays": [[1.0]]}]}
|
||||
@@ -1 +0,0 @@
|
||||
{"version":1,"size":{"x":32,"y":32},"copyright":"Taken from https://github.com/vgstation-coders/vgstation13/blob/68357f0b64a296d122ff1bdb2f13e9b0cb04a003/icons/obj/singularity.dmi","license":"CC-BY-SA-3.0","states":[{"name":"singulo_gen","directions":1,"delays":[[1]]}]}
|
||||
@@ -1 +0,0 @@
|
||||
{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "Taken from https://github.com/tgstation/tgstation", "states": [{"name": "Contain_F", "directions": 4, "delays": [[0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1], [0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1], [0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1], [0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1]]}]}
|
||||