]> git.smokeofanarchy.ru Git - space-station-14.git/commitdiff
Anomaly Cores (#21306)
authorEd <96445749+TheShuEd@users.noreply.github.com>
Tue, 31 Oct 2023 23:20:52 +0000 (02:20 +0300)
committerGitHub <noreply@github.com>
Tue, 31 Oct 2023 23:20:52 +0000 (19:20 -0400)
* add first anomaly core

* meme

* 5 min to 10 min
fix yml

* fix

* Update doc

* no static price

31 files changed:
Content.Server/Anomaly/Components/AnomalyCoreComponent.cs [new file with mode: 0644]
Content.Server/Anomaly/Effects/AnomalyCoreSystem.cs [new file with mode: 0644]
Content.Shared/Anomaly/AnomalyCoreVisuals.cs [new file with mode: 0644]
Content.Shared/Anomaly/Components/AnomalyComponent.cs
Content.Shared/Anomaly/SharedAnomalySystem.cs
Resources/Prototypes/Entities/Structures/Specific/Anomaly/anomalies.yml [moved from Resources/Prototypes/Entities/Structures/Specific/anomalies.yml with 91% similarity]
Resources/Prototypes/Entities/Structures/Specific/Anomaly/cores.yml [new file with mode: 0644]
Resources/Textures/Structures/Specific/Anomalies/Cores/bluespace_core.rsi/core.png [new file with mode: 0644]
Resources/Textures/Structures/Specific/Anomalies/Cores/bluespace_core.rsi/meta.json [new file with mode: 0644]
Resources/Textures/Structures/Specific/Anomalies/Cores/bluespace_core.rsi/pulse.png [new file with mode: 0644]
Resources/Textures/Structures/Specific/Anomalies/Cores/electric_core.rsi/core.png [new file with mode: 0644]
Resources/Textures/Structures/Specific/Anomalies/Cores/electric_core.rsi/meta.json [new file with mode: 0644]
Resources/Textures/Structures/Specific/Anomalies/Cores/electric_core.rsi/pulse.png [new file with mode: 0644]
Resources/Textures/Structures/Specific/Anomalies/Cores/flesh_core.rsi/core.png [new file with mode: 0644]
Resources/Textures/Structures/Specific/Anomalies/Cores/flesh_core.rsi/meta.json [new file with mode: 0644]
Resources/Textures/Structures/Specific/Anomalies/Cores/flesh_core.rsi/pulse.png [new file with mode: 0644]
Resources/Textures/Structures/Specific/Anomalies/Cores/gravity_core.rsi/core.png [new file with mode: 0644]
Resources/Textures/Structures/Specific/Anomalies/Cores/gravity_core.rsi/meta.json [new file with mode: 0644]
Resources/Textures/Structures/Specific/Anomalies/Cores/gravity_core.rsi/pulse.png [new file with mode: 0644]
Resources/Textures/Structures/Specific/Anomalies/Cores/ice_core.rsi/core.png [new file with mode: 0644]
Resources/Textures/Structures/Specific/Anomalies/Cores/ice_core.rsi/meta.json [new file with mode: 0644]
Resources/Textures/Structures/Specific/Anomalies/Cores/ice_core.rsi/pulse.png [new file with mode: 0644]
Resources/Textures/Structures/Specific/Anomalies/Cores/liquid_core.rsi/core.png [new file with mode: 0644]
Resources/Textures/Structures/Specific/Anomalies/Cores/liquid_core.rsi/meta.json [new file with mode: 0644]
Resources/Textures/Structures/Specific/Anomalies/Cores/liquid_core.rsi/pulse.png [new file with mode: 0644]
Resources/Textures/Structures/Specific/Anomalies/Cores/pyro_core.rsi/core.png [new file with mode: 0644]
Resources/Textures/Structures/Specific/Anomalies/Cores/pyro_core.rsi/meta.json [new file with mode: 0644]
Resources/Textures/Structures/Specific/Anomalies/Cores/pyro_core.rsi/pulse.png [new file with mode: 0644]
Resources/Textures/Structures/Specific/Anomalies/Cores/rock_core.rsi/core.png [new file with mode: 0644]
Resources/Textures/Structures/Specific/Anomalies/Cores/rock_core.rsi/meta.json [new file with mode: 0644]
Resources/Textures/Structures/Specific/Anomalies/Cores/rock_core.rsi/pulse.png [new file with mode: 0644]

diff --git a/Content.Server/Anomaly/Components/AnomalyCoreComponent.cs b/Content.Server/Anomaly/Components/AnomalyCoreComponent.cs
new file mode 100644 (file)
index 0000000..f86f95c
--- /dev/null
@@ -0,0 +1,42 @@
+using Content.Server.Anomaly.Effects;
+using Robust.Shared.Serialization.TypeSerializers.Implementations.Custom;
+
+namespace Content.Server.Anomaly.Components;
+
+/// <summary>
+/// This component exists for a limited time, and after it expires it modifies the entity, greatly reducing its value and changing its visuals
+/// </summary>
+[RegisterComponent, Access(typeof(AnomalyCoreSystem))]
+public sealed partial class AnomalyCoreComponent : Component
+{
+
+    /// <summary>
+    /// Amount of time required for the core to decompose into an inert core
+    /// </summary>
+    [DataField, ViewVariables(VVAccess.ReadWrite)]
+    public double TimeToDecay = 600;
+
+    /// <summary>
+    /// The moment of core decay. It is set during entity initialization.
+    /// </summary>
+    [DataField(customTypeSerializer: typeof(TimeOffsetSerializer)), ViewVariables(VVAccess.ReadWrite)]
+    public TimeSpan DecayMoment;
+
+    /// <summary>
+    /// The starting value of the entity.
+    /// </summary>
+    [DataField, ViewVariables(VVAccess.ReadWrite)]
+    public double StartPrice = 10000;
+
+    /// <summary>
+    /// The value of the object sought during decaying
+    /// </summary>
+    [DataField, ViewVariables(VVAccess.ReadWrite)]
+    public double EndPrice = 200;
+
+    /// <summary>
+    /// Has the core decayed?
+    /// </summary>
+    [DataField, ViewVariables(VVAccess.ReadWrite)]
+    public bool IsDecayed;
+}
diff --git a/Content.Server/Anomaly/Effects/AnomalyCoreSystem.cs b/Content.Server/Anomaly/Effects/AnomalyCoreSystem.cs
new file mode 100644 (file)
index 0000000..eb45101
--- /dev/null
@@ -0,0 +1,56 @@
+using Content.Server.Anomaly.Components;
+using Content.Server.Cargo.Systems;
+using Content.Shared.Anomaly;
+using Robust.Shared.Timing;
+
+namespace Content.Server.Anomaly.Effects;
+
+/// <summary>
+/// This component reduces the value of the entity during decay
+/// </summary>
+public sealed class AnomalyCoreSystem : EntitySystem
+{
+    [Dependency] private readonly SharedAppearanceSystem _appearance = default!;
+    [Dependency] private readonly IGameTiming _gameTiming = default!;
+
+    public override void Initialize()
+    {
+        SubscribeLocalEvent<AnomalyCoreComponent, MapInitEvent>(OnMapInit);
+        SubscribeLocalEvent<AnomalyCoreComponent, PriceCalculationEvent>(OnGetPrice);
+    }
+
+    private void OnMapInit(Entity<AnomalyCoreComponent> core, ref MapInitEvent args)
+    {
+        core.Comp.DecayMoment = _gameTiming.CurTime + TimeSpan.FromSeconds(core.Comp.TimeToDecay);
+    }
+
+    public override void Update(float frameTime)
+    {
+        base.Update(frameTime);
+
+        var query = EntityQueryEnumerator<AnomalyCoreComponent>();
+        while (query.MoveNext(out var uid, out var component))
+        {
+            if (component.IsDecayed)
+                continue;
+
+            //When time runs out, we completely decompose
+            if (component.DecayMoment < _gameTiming.CurTime)
+                Decay(uid, component);
+        }
+    }
+    private void OnGetPrice(Entity<AnomalyCoreComponent> core, ref PriceCalculationEvent args)
+    {
+        var timeLeft = core.Comp.DecayMoment - _gameTiming.CurTime;
+        var lerp = (double) (timeLeft.TotalSeconds / core.Comp.TimeToDecay);
+        lerp = Math.Clamp(lerp, 0, 1);
+
+        args.Price = MathHelper.Lerp(core.Comp.EndPrice, core.Comp.StartPrice, lerp);
+    }
+
+    private void Decay(EntityUid uid, AnomalyCoreComponent component)
+    {
+        _appearance.SetData(uid, AnomalyCoreVisuals.Decaying, false);
+        component.IsDecayed = true;
+    }
+}
diff --git a/Content.Shared/Anomaly/AnomalyCoreVisuals.cs b/Content.Shared/Anomaly/AnomalyCoreVisuals.cs
new file mode 100644 (file)
index 0000000..f15ab58
--- /dev/null
@@ -0,0 +1,9 @@
+using Robust.Shared.Serialization;
+
+namespace Content.Shared.Anomaly;
+
+[Serializable, NetSerializable]
+public enum AnomalyCoreVisuals : byte
+{
+    Decaying
+}
index 07fc603e26f46bc928abafcfc2a9b614b0718fde..cf3ba75aaaa794b3f540dabd8b13243d2a87079d 100644 (file)
@@ -2,6 +2,7 @@ using System.Numerics;
 using Content.Shared.Damage;
 using Robust.Shared.Audio;
 using Robust.Shared.GameStates;
+using Robust.Shared.Prototypes;
 using Robust.Shared.Serialization.TypeSerializers.Implementations.Custom;
 
 namespace Content.Shared.Anomaly.Components;
@@ -208,6 +209,18 @@ public sealed partial class AnomalyComponent : Component
     [DataField]
     public SoundSpecifier AnomalyContactDamageSound = new SoundPathSpecifier("/Audio/Effects/lightburn.ogg");
 
+    /// <summary>
+    /// A prototype entity that appears when an anomaly supercrit collapse.
+    /// </summary>
+    [DataField, ViewVariables(VVAccess.ReadWrite)]
+    public EntProtoId? CorePrototype;
+
+    /// <summary>
+    /// A prototype entity that appears when an anomaly decays.
+    /// </summary>
+    [DataField, ViewVariables(VVAccess.ReadWrite)]
+    public EntProtoId? CoreInertPrototype;
+
     #region Floating Animation
     /// <summary>
     /// How long it takes to go from the bottom of the animation to the top.
index 4b2b3ada70aea7e4b13f6dab3e68545891285bfb..ca77544a15682f8180dfac61c85c37809feb8370 100644 (file)
@@ -1,4 +1,4 @@
-using Content.Shared.Administration.Logs;
+using Content.Shared.Administration.Logs;
 using Content.Shared.Anomaly.Components;
 using Content.Shared.Damage;
 using Content.Shared.Database;
@@ -181,6 +181,9 @@ public abstract class SharedAnomalySystem : EntitySystem
 
         if (Terminating(uid) || _net.IsClient)
             return;
+
+        Spawn(supercritical ? component.CorePrototype : component.CoreInertPrototype, Transform(uid).Coordinates);
+
         QueueDel(uid);
     }
 
similarity index 91%
rename from Resources/Prototypes/Entities/Structures/Specific/anomalies.yml
rename to Resources/Prototypes/Entities/Structures/Specific/Anomaly/anomalies.yml
index 736834fa2f1ad36a67e2ba1d7912bc96a02ed8fc..3526216c139ea7d171e0921351f8395c61ed606a 100644 (file)
@@ -53,6 +53,9 @@
   parent: BaseAnomaly
   suffix: Pyroclastic
   components:
+  - type: Anomaly
+    corePrototype: AnomalyCorePyroclastic
+    coreInertPrototype: AnomalyCorePyroclasticInert
   - type: Sprite
     layers:
     - state: anom1
@@ -81,6 +84,9 @@
   parent: BaseAnomaly
   suffix: Gravity
   components:
+  - type: Anomaly
+    corePrototype: AnomalyCoreGravity
+    coreInertPrototype: AnomalyCoreGravityInert
   - type: Sprite
     layers:
     - state: anom2
   parent: BaseAnomaly
   suffix: Electricity
   components:
+  - type: Anomaly
+    corePrototype: AnomalyCoreElectricity
+    coreInertPrototype: AnomalyCoreElectricityInert
   - type: Sprite
     layers:
     - state: anom3
   parent: BaseAnomaly
   suffix: Flesh
   components:
+  - type: Anomaly
+    corePrototype: AnomalyCoreFlesh
+    coreInertPrototype: AnomalyCoreFleshInert
   - type: Sprite
     layers:
     - state: anom5
         - WallLayer
         hard: false
   - type: Anomaly
+    corePrototype: AnomalyCoreBluespace
+    coreInertPrototype: AnomalyCoreBluespaceInert
     pulseSound:
       collection: RadiationPulse
       params:
     color: "#befaff"
     castShadows: false
   - type: Anomaly
+    corePrototype: AnomalyCoreIce
+    coreInertPrototype: AnomalyCoreIceInert
     anomalyContactDamage:
       types:
         Cold: 10
   parent: BaseAnomaly
   suffix: Rock
   components:
+  - type: Anomaly
+    corePrototype: AnomalyCoreRock
+    coreInertPrototype: AnomalyCoreRockInert
   - type: Sprite
     layers:
     - state: anom6
     color: "#bbbbbb"
   - type: BadFood
   - type: Anomaly
+    corePrototype: AnomalyCoreLiquid
+    coreInertPrototype: AnomalyCoreLiquidInert
     anomalyContactDamage:
       types:
         Slash: 1
diff --git a/Resources/Prototypes/Entities/Structures/Specific/Anomaly/cores.yml b/Resources/Prototypes/Entities/Structures/Specific/Anomaly/cores.yml
new file mode 100644 (file)
index 0000000..835f309
--- /dev/null
@@ -0,0 +1,251 @@
+- type: entity
+  parent: BaseItem
+  id: BaseAnomalyCore
+  abstract: true
+  name: anomaly core
+  description: The core of a detroyed incomprehensible object.
+  components:
+  - type: Sprite
+    sprite: Structures/Specific/Anomalies/Cores/gravity_core.rsi
+    layers:
+    - state: core
+    - state: pulse
+      map: ["decay"]
+  - type: Appearance
+  - type: GenericVisualizer
+    visuals:
+      enum.AnomalyCoreVisuals.Decaying:
+        decay:
+          True: { visible: true }
+          False: { visible: false }
+  - type: Item
+    size: 10
+  - type: ItemCooldown
+  - type: EmitSoundOnUse #placeholder for future unical mechanic
+    sound:
+      collection: RadiationPulse 
+  - type: UseDelay
+    delay: 2
+  - type: AnomalyCore
+    timeToDecay: 600
+    startPrice: 10000
+    endPrice: 200
+
+- type: entity
+  parent: BaseAnomalyCore
+  id: AnomalyCorePyroclastic
+  suffix: Pyroclastic
+  components:
+  - type: Sprite
+    sprite: Structures/Specific/Anomalies/Cores/pyro_core.rsi
+  - type: PointLight
+    radius: 1.5
+    energy: 1.5
+    color: "#fca3c0"
+    castShadows: false
+
+- type: entity
+  parent: BaseAnomalyCore
+  id: AnomalyCoreGravity
+  suffix: Gravity
+  components:
+  - type: Sprite
+    sprite: Structures/Specific/Anomalies/Cores/gravity_core.rsi
+  - type: PointLight
+    radius: 1.5
+    energy: 10
+    color: "#1e070e"
+    castShadows: false
+
+- type: entity
+  parent: BaseAnomalyCore
+  id: AnomalyCoreIce
+  suffix: Ice
+  components:
+  - type: Sprite
+    sprite: Structures/Specific/Anomalies/Cores/ice_core.rsi
+  - type: PointLight
+    radius: 1.5
+    energy: 1.5
+    color: "#befaff"
+    castShadows: false
+
+- type: entity
+  parent: BaseAnomalyCore
+  id: AnomalyCoreFlesh
+  suffix: Flesh
+  components:
+  - type: Sprite
+    sprite: Structures/Specific/Anomalies/Cores/flesh_core.rsi
+  - type: PointLight
+    radius: 1.5
+    energy: 3.5
+    color: "#cb5b7e"
+    castShadows: false
+
+- type: entity
+  parent: BaseAnomalyCore
+  id: AnomalyCoreRock
+  suffix: Rock
+  components:
+  - type: Sprite
+    sprite: Structures/Specific/Anomalies/Cores/rock_core.rsi
+  - type: PointLight
+    radius: 1.5
+    energy: 3.5
+    color: "#5ca8cb"
+    castShadows: false
+
+- type: entity
+  parent: BaseAnomalyCore
+  id: AnomalyCoreLiquid
+  suffix: Liquid
+  components:
+  - type: Sprite
+    sprite: Structures/Specific/Anomalies/Cores/liquid_core.rsi
+  - type: PointLight
+    radius: 1.5
+    energy: 3.5
+    color: "#ffffff"
+    castShadows: false
+
+- type: entity
+  parent: BaseAnomalyCore
+  id: AnomalyCoreBluespace
+  suffix: Bluespace
+  components:
+  - type: Sprite
+    sprite: Structures/Specific/Anomalies/Cores/bluespace_core.rsi
+  - type: PointLight
+    radius: 1.5
+    energy: 3.5
+    color: "#00ccff"
+    castShadows: false
+
+- type: entity
+  parent: BaseAnomalyCore
+  id: AnomalyCoreElectricity
+  suffix: Electricity
+  components:
+  - type: Sprite
+    sprite: Structures/Specific/Anomalies/Cores/electric_core.rsi
+  - type: PointLight
+    radius: 1.5
+    energy: 2.0
+    color: "#ffffaa"
+    castShadows: false
+  - type: Electrified
+
+# Inert cores
+
+- type: entity
+  parent: BaseAnomalyCore
+  id: BaseAnomalyInertCore
+  abstract: true
+  components:
+  - type: AnomalyCore
+    timeToDecay: 1 #decay very fast
+
+- type: entity
+  parent: BaseAnomalyInertCore
+  id: AnomalyCorePyroclasticInert
+  suffix: Pyroclastic, Inert
+  components:
+  - type: Sprite
+    sprite: Structures/Specific/Anomalies/Cores/pyro_core.rsi
+  - type: PointLight
+    radius: 1.5
+    energy: 1.5
+    color: "#fca3c0"
+    castShadows: false
+
+- type: entity
+  parent: BaseAnomalyInertCore
+  id: AnomalyCoreGravityInert
+  suffix: Gravity, Inert
+  components:
+  - type: Sprite
+    sprite: Structures/Specific/Anomalies/Cores/gravity_core.rsi
+  - type: PointLight
+    radius: 1.5
+    energy: 10
+    color: "#1e070e"
+    castShadows: false
+
+- type: entity
+  parent: BaseAnomalyInertCore
+  id: AnomalyCoreIceInert
+  suffix: Ice, Inert
+  components:
+  - type: Sprite
+    sprite: Structures/Specific/Anomalies/Cores/ice_core.rsi
+  - type: PointLight
+    radius: 1.5
+    energy: 1.5
+    color: "#befaff"
+    castShadows: false
+
+- type: entity
+  parent: BaseAnomalyInertCore
+  id: AnomalyCoreFleshInert
+  suffix: Flesh, Inert
+  components:
+  - type: Sprite
+    sprite: Structures/Specific/Anomalies/Cores/flesh_core.rsi
+  - type: PointLight
+    radius: 1.5
+    energy: 3.5
+    color: "#cb5b7e"
+    castShadows: false
+
+- type: entity
+  parent: BaseAnomalyInertCore
+  id: AnomalyCoreRockInert
+  suffix: Rock, Inert
+  components:
+  - type: Sprite
+    sprite: Structures/Specific/Anomalies/Cores/rock_core.rsi
+  - type: PointLight
+    radius: 1.5
+    energy: 3.5
+    color: "#5ca8cb"
+    castShadows: false
+
+- type: entity
+  parent: BaseAnomalyInertCore
+  id: AnomalyCoreLiquidInert
+  suffix: Liquid, Inert
+  components:
+  - type: Sprite
+    sprite: Structures/Specific/Anomalies/Cores/liquid_core.rsi
+  - type: PointLight
+    radius: 1.5
+    energy: 3.5
+    color: "#ffffff"
+    castShadows: false
+
+- type: entity
+  parent: BaseAnomalyInertCore
+  id: AnomalyCoreBluespaceInert
+  suffix: Bluespace, Inert
+  components:
+  - type: Sprite
+    sprite: Structures/Specific/Anomalies/Cores/bluespace_core.rsi
+  - type: PointLight
+    radius: 1.5
+    energy: 3.5
+    color: "#00ccff"
+    castShadows: false
+
+- type: entity
+  parent: BaseAnomalyInertCore
+  id: AnomalyCoreElectricityInert
+  suffix: Electricity, Inert
+  components:
+  - type: Sprite
+    sprite: Structures/Specific/Anomalies/Cores/electric_core.rsi
+  - type: PointLight
+    radius: 1.5
+    energy: 2.0
+    color: "#ffffaa"
+    castShadows: false
\ No newline at end of file
diff --git a/Resources/Textures/Structures/Specific/Anomalies/Cores/bluespace_core.rsi/core.png b/Resources/Textures/Structures/Specific/Anomalies/Cores/bluespace_core.rsi/core.png
new file mode 100644 (file)
index 0000000..818a2fe
Binary files /dev/null and b/Resources/Textures/Structures/Specific/Anomalies/Cores/bluespace_core.rsi/core.png differ
diff --git a/Resources/Textures/Structures/Specific/Anomalies/Cores/bluespace_core.rsi/meta.json b/Resources/Textures/Structures/Specific/Anomalies/Cores/bluespace_core.rsi/meta.json
new file mode 100644 (file)
index 0000000..94ffa2b
--- /dev/null
@@ -0,0 +1,25 @@
+{
+  "version": 1,
+  "license": "CC0-1.0",
+  "copyright": "Created by TheShuEd (github) for ss14",
+  "size": {
+    "x": 32,
+    "y": 32
+  },
+  "states": [
+    {
+      "name": "core"
+    },
+    {
+      "name": "pulse",
+      "delays": [
+        [
+          0.15625,
+          0.15625,
+          0.15625,
+          0.15625
+        ]
+      ]
+    }
+  ]
+}
diff --git a/Resources/Textures/Structures/Specific/Anomalies/Cores/bluespace_core.rsi/pulse.png b/Resources/Textures/Structures/Specific/Anomalies/Cores/bluespace_core.rsi/pulse.png
new file mode 100644 (file)
index 0000000..88421da
Binary files /dev/null and b/Resources/Textures/Structures/Specific/Anomalies/Cores/bluespace_core.rsi/pulse.png differ
diff --git a/Resources/Textures/Structures/Specific/Anomalies/Cores/electric_core.rsi/core.png b/Resources/Textures/Structures/Specific/Anomalies/Cores/electric_core.rsi/core.png
new file mode 100644 (file)
index 0000000..9176daa
Binary files /dev/null and b/Resources/Textures/Structures/Specific/Anomalies/Cores/electric_core.rsi/core.png differ
diff --git a/Resources/Textures/Structures/Specific/Anomalies/Cores/electric_core.rsi/meta.json b/Resources/Textures/Structures/Specific/Anomalies/Cores/electric_core.rsi/meta.json
new file mode 100644 (file)
index 0000000..94ffa2b
--- /dev/null
@@ -0,0 +1,25 @@
+{
+  "version": 1,
+  "license": "CC0-1.0",
+  "copyright": "Created by TheShuEd (github) for ss14",
+  "size": {
+    "x": 32,
+    "y": 32
+  },
+  "states": [
+    {
+      "name": "core"
+    },
+    {
+      "name": "pulse",
+      "delays": [
+        [
+          0.15625,
+          0.15625,
+          0.15625,
+          0.15625
+        ]
+      ]
+    }
+  ]
+}
diff --git a/Resources/Textures/Structures/Specific/Anomalies/Cores/electric_core.rsi/pulse.png b/Resources/Textures/Structures/Specific/Anomalies/Cores/electric_core.rsi/pulse.png
new file mode 100644 (file)
index 0000000..32a49cb
Binary files /dev/null and b/Resources/Textures/Structures/Specific/Anomalies/Cores/electric_core.rsi/pulse.png differ
diff --git a/Resources/Textures/Structures/Specific/Anomalies/Cores/flesh_core.rsi/core.png b/Resources/Textures/Structures/Specific/Anomalies/Cores/flesh_core.rsi/core.png
new file mode 100644 (file)
index 0000000..b6dc8fc
Binary files /dev/null and b/Resources/Textures/Structures/Specific/Anomalies/Cores/flesh_core.rsi/core.png differ
diff --git a/Resources/Textures/Structures/Specific/Anomalies/Cores/flesh_core.rsi/meta.json b/Resources/Textures/Structures/Specific/Anomalies/Cores/flesh_core.rsi/meta.json
new file mode 100644 (file)
index 0000000..94ffa2b
--- /dev/null
@@ -0,0 +1,25 @@
+{
+  "version": 1,
+  "license": "CC0-1.0",
+  "copyright": "Created by TheShuEd (github) for ss14",
+  "size": {
+    "x": 32,
+    "y": 32
+  },
+  "states": [
+    {
+      "name": "core"
+    },
+    {
+      "name": "pulse",
+      "delays": [
+        [
+          0.15625,
+          0.15625,
+          0.15625,
+          0.15625
+        ]
+      ]
+    }
+  ]
+}
diff --git a/Resources/Textures/Structures/Specific/Anomalies/Cores/flesh_core.rsi/pulse.png b/Resources/Textures/Structures/Specific/Anomalies/Cores/flesh_core.rsi/pulse.png
new file mode 100644 (file)
index 0000000..8e26e73
Binary files /dev/null and b/Resources/Textures/Structures/Specific/Anomalies/Cores/flesh_core.rsi/pulse.png differ
diff --git a/Resources/Textures/Structures/Specific/Anomalies/Cores/gravity_core.rsi/core.png b/Resources/Textures/Structures/Specific/Anomalies/Cores/gravity_core.rsi/core.png
new file mode 100644 (file)
index 0000000..ccc1645
Binary files /dev/null and b/Resources/Textures/Structures/Specific/Anomalies/Cores/gravity_core.rsi/core.png differ
diff --git a/Resources/Textures/Structures/Specific/Anomalies/Cores/gravity_core.rsi/meta.json b/Resources/Textures/Structures/Specific/Anomalies/Cores/gravity_core.rsi/meta.json
new file mode 100644 (file)
index 0000000..94ffa2b
--- /dev/null
@@ -0,0 +1,25 @@
+{
+  "version": 1,
+  "license": "CC0-1.0",
+  "copyright": "Created by TheShuEd (github) for ss14",
+  "size": {
+    "x": 32,
+    "y": 32
+  },
+  "states": [
+    {
+      "name": "core"
+    },
+    {
+      "name": "pulse",
+      "delays": [
+        [
+          0.15625,
+          0.15625,
+          0.15625,
+          0.15625
+        ]
+      ]
+    }
+  ]
+}
diff --git a/Resources/Textures/Structures/Specific/Anomalies/Cores/gravity_core.rsi/pulse.png b/Resources/Textures/Structures/Specific/Anomalies/Cores/gravity_core.rsi/pulse.png
new file mode 100644 (file)
index 0000000..9d22ec7
Binary files /dev/null and b/Resources/Textures/Structures/Specific/Anomalies/Cores/gravity_core.rsi/pulse.png differ
diff --git a/Resources/Textures/Structures/Specific/Anomalies/Cores/ice_core.rsi/core.png b/Resources/Textures/Structures/Specific/Anomalies/Cores/ice_core.rsi/core.png
new file mode 100644 (file)
index 0000000..de0694c
Binary files /dev/null and b/Resources/Textures/Structures/Specific/Anomalies/Cores/ice_core.rsi/core.png differ
diff --git a/Resources/Textures/Structures/Specific/Anomalies/Cores/ice_core.rsi/meta.json b/Resources/Textures/Structures/Specific/Anomalies/Cores/ice_core.rsi/meta.json
new file mode 100644 (file)
index 0000000..94ffa2b
--- /dev/null
@@ -0,0 +1,25 @@
+{
+  "version": 1,
+  "license": "CC0-1.0",
+  "copyright": "Created by TheShuEd (github) for ss14",
+  "size": {
+    "x": 32,
+    "y": 32
+  },
+  "states": [
+    {
+      "name": "core"
+    },
+    {
+      "name": "pulse",
+      "delays": [
+        [
+          0.15625,
+          0.15625,
+          0.15625,
+          0.15625
+        ]
+      ]
+    }
+  ]
+}
diff --git a/Resources/Textures/Structures/Specific/Anomalies/Cores/ice_core.rsi/pulse.png b/Resources/Textures/Structures/Specific/Anomalies/Cores/ice_core.rsi/pulse.png
new file mode 100644 (file)
index 0000000..b2ffbeb
Binary files /dev/null and b/Resources/Textures/Structures/Specific/Anomalies/Cores/ice_core.rsi/pulse.png differ
diff --git a/Resources/Textures/Structures/Specific/Anomalies/Cores/liquid_core.rsi/core.png b/Resources/Textures/Structures/Specific/Anomalies/Cores/liquid_core.rsi/core.png
new file mode 100644 (file)
index 0000000..f44798c
Binary files /dev/null and b/Resources/Textures/Structures/Specific/Anomalies/Cores/liquid_core.rsi/core.png differ
diff --git a/Resources/Textures/Structures/Specific/Anomalies/Cores/liquid_core.rsi/meta.json b/Resources/Textures/Structures/Specific/Anomalies/Cores/liquid_core.rsi/meta.json
new file mode 100644 (file)
index 0000000..94ffa2b
--- /dev/null
@@ -0,0 +1,25 @@
+{
+  "version": 1,
+  "license": "CC0-1.0",
+  "copyright": "Created by TheShuEd (github) for ss14",
+  "size": {
+    "x": 32,
+    "y": 32
+  },
+  "states": [
+    {
+      "name": "core"
+    },
+    {
+      "name": "pulse",
+      "delays": [
+        [
+          0.15625,
+          0.15625,
+          0.15625,
+          0.15625
+        ]
+      ]
+    }
+  ]
+}
diff --git a/Resources/Textures/Structures/Specific/Anomalies/Cores/liquid_core.rsi/pulse.png b/Resources/Textures/Structures/Specific/Anomalies/Cores/liquid_core.rsi/pulse.png
new file mode 100644 (file)
index 0000000..d8b04a5
Binary files /dev/null and b/Resources/Textures/Structures/Specific/Anomalies/Cores/liquid_core.rsi/pulse.png differ
diff --git a/Resources/Textures/Structures/Specific/Anomalies/Cores/pyro_core.rsi/core.png b/Resources/Textures/Structures/Specific/Anomalies/Cores/pyro_core.rsi/core.png
new file mode 100644 (file)
index 0000000..61a5f22
Binary files /dev/null and b/Resources/Textures/Structures/Specific/Anomalies/Cores/pyro_core.rsi/core.png differ
diff --git a/Resources/Textures/Structures/Specific/Anomalies/Cores/pyro_core.rsi/meta.json b/Resources/Textures/Structures/Specific/Anomalies/Cores/pyro_core.rsi/meta.json
new file mode 100644 (file)
index 0000000..94ffa2b
--- /dev/null
@@ -0,0 +1,25 @@
+{
+  "version": 1,
+  "license": "CC0-1.0",
+  "copyright": "Created by TheShuEd (github) for ss14",
+  "size": {
+    "x": 32,
+    "y": 32
+  },
+  "states": [
+    {
+      "name": "core"
+    },
+    {
+      "name": "pulse",
+      "delays": [
+        [
+          0.15625,
+          0.15625,
+          0.15625,
+          0.15625
+        ]
+      ]
+    }
+  ]
+}
diff --git a/Resources/Textures/Structures/Specific/Anomalies/Cores/pyro_core.rsi/pulse.png b/Resources/Textures/Structures/Specific/Anomalies/Cores/pyro_core.rsi/pulse.png
new file mode 100644 (file)
index 0000000..537c619
Binary files /dev/null and b/Resources/Textures/Structures/Specific/Anomalies/Cores/pyro_core.rsi/pulse.png differ
diff --git a/Resources/Textures/Structures/Specific/Anomalies/Cores/rock_core.rsi/core.png b/Resources/Textures/Structures/Specific/Anomalies/Cores/rock_core.rsi/core.png
new file mode 100644 (file)
index 0000000..3d3ddce
Binary files /dev/null and b/Resources/Textures/Structures/Specific/Anomalies/Cores/rock_core.rsi/core.png differ
diff --git a/Resources/Textures/Structures/Specific/Anomalies/Cores/rock_core.rsi/meta.json b/Resources/Textures/Structures/Specific/Anomalies/Cores/rock_core.rsi/meta.json
new file mode 100644 (file)
index 0000000..94ffa2b
--- /dev/null
@@ -0,0 +1,25 @@
+{
+  "version": 1,
+  "license": "CC0-1.0",
+  "copyright": "Created by TheShuEd (github) for ss14",
+  "size": {
+    "x": 32,
+    "y": 32
+  },
+  "states": [
+    {
+      "name": "core"
+    },
+    {
+      "name": "pulse",
+      "delays": [
+        [
+          0.15625,
+          0.15625,
+          0.15625,
+          0.15625
+        ]
+      ]
+    }
+  ]
+}
diff --git a/Resources/Textures/Structures/Specific/Anomalies/Cores/rock_core.rsi/pulse.png b/Resources/Textures/Structures/Specific/Anomalies/Cores/rock_core.rsi/pulse.png
new file mode 100644 (file)
index 0000000..4612777
Binary files /dev/null and b/Resources/Textures/Structures/Specific/Anomalies/Cores/rock_core.rsi/pulse.png differ