Omega Cartridges Uplink rounds for CHIMP. (#15755)
Co-authored-by: Nemanja <98561806+EmoGarbage404@users.noreply.github.com> Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
This commit is contained in:
@@ -1,4 +1,4 @@
|
|||||||
using Content.Server.Anomaly.Components;
|
using Content.Server.Anomaly.Components;
|
||||||
using Content.Server.Atmos.EntitySystems;
|
using Content.Server.Atmos.EntitySystems;
|
||||||
using Content.Server.Audio;
|
using Content.Server.Audio;
|
||||||
using Content.Server.Explosion.EntitySystems;
|
using Content.Server.Explosion.EntitySystems;
|
||||||
@@ -75,15 +75,15 @@ public sealed partial class AnomalySystem : SharedAnomalySystem
|
|||||||
// small function to randomize because it's easier to read like this
|
// small function to randomize because it's easier to read like this
|
||||||
float VaryValue(float v) => v * Random.NextFloat(MinParticleVariation, MaxParticleVariation);
|
float VaryValue(float v) => v * Random.NextFloat(MinParticleVariation, MaxParticleVariation);
|
||||||
|
|
||||||
if (particle.ParticleType == component.DestabilizingParticleType)
|
if (particle.ParticleType == component.DestabilizingParticleType || particle.DestabilzingOverride)
|
||||||
{
|
{
|
||||||
ChangeAnomalyStability(uid, VaryValue(particle.StabilityPerDestabilizingHit), component);
|
ChangeAnomalyStability(uid, VaryValue(particle.StabilityPerDestabilizingHit), component);
|
||||||
}
|
}
|
||||||
else if (particle.ParticleType == component.SeverityParticleType)
|
if (particle.ParticleType == component.SeverityParticleType || particle.SeverityOverride)
|
||||||
{
|
{
|
||||||
ChangeAnomalySeverity(uid, VaryValue(particle.SeverityPerSeverityHit), component);
|
ChangeAnomalySeverity(uid, VaryValue(particle.SeverityPerSeverityHit), component);
|
||||||
}
|
}
|
||||||
else if (particle.ParticleType == component.WeakeningParticleType)
|
if (particle.ParticleType == component.WeakeningParticleType || particle.WeakeningOverride)
|
||||||
{
|
{
|
||||||
ChangeAnomalyHealth(uid, VaryValue(particle.HealthPerWeakeningeHit), component);
|
ChangeAnomalyHealth(uid, VaryValue(particle.HealthPerWeakeningeHit), component);
|
||||||
ChangeAnomalyStability(uid, VaryValue(particle.StabilityPerWeakeningeHit), component);
|
ChangeAnomalyStability(uid, VaryValue(particle.StabilityPerWeakeningeHit), component);
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
using Content.Shared.Anomaly;
|
using Content.Shared.Anomaly;
|
||||||
using Content.Shared.Anomaly.Components;
|
using Content.Shared.Anomaly.Components;
|
||||||
|
|
||||||
namespace Content.Server.Anomaly.Components;
|
namespace Content.Server.Anomaly.Components;
|
||||||
@@ -49,4 +49,22 @@ public sealed class AnomalousParticleComponent : Component
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
[DataField("stabilityPerWeakeningeHit")]
|
[DataField("stabilityPerWeakeningeHit")]
|
||||||
public float StabilityPerWeakeningeHit = -0.1f;
|
public float StabilityPerWeakeningeHit = -0.1f;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// If this is true then the particle will always affect the stability of the anomaly.
|
||||||
|
/// </summary>
|
||||||
|
[DataField("destabilzingOverride")]
|
||||||
|
public bool DestabilzingOverride = false;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// If this is true then the particle will always affect the weakeness of the anomaly.
|
||||||
|
/// </summary>
|
||||||
|
[DataField("weakeningOverride")]
|
||||||
|
public bool WeakeningOverride = false;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// If this is true then the particle will always affect the severity of the anomaly.
|
||||||
|
/// </summary>
|
||||||
|
[DataField("severityOverride")]
|
||||||
|
public bool SeverityOverride = false;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
using Content.Shared.Damage;
|
using Content.Shared.Damage;
|
||||||
using Robust.Shared.Audio;
|
using Robust.Shared.Audio;
|
||||||
using Robust.Shared.GameStates;
|
using Robust.Shared.GameStates;
|
||||||
using Robust.Shared.Serialization;
|
using Robust.Shared.Serialization;
|
||||||
|
|||||||
@@ -32,7 +32,8 @@ public enum AnomalousParticleType : byte
|
|||||||
{
|
{
|
||||||
Delta,
|
Delta,
|
||||||
Epsilon,
|
Epsilon,
|
||||||
Zeta
|
Zeta,
|
||||||
|
Default
|
||||||
}
|
}
|
||||||
|
|
||||||
[Serializable, NetSerializable]
|
[Serializable, NetSerializable]
|
||||||
|
|||||||
@@ -37,6 +37,7 @@ anomaly-generator-charges = {$charges ->
|
|||||||
}
|
}
|
||||||
anomaly-generator-announcement = An anomaly has been generated!
|
anomaly-generator-announcement = An anomaly has been generated!
|
||||||
|
|
||||||
|
|
||||||
# Flavor text on the footer
|
# Flavor text on the footer
|
||||||
anomaly-generator-flavor-left = Anomaly may spawn inside the operator.
|
anomaly-generator-flavor-left = Anomaly may spawn inside the operator.
|
||||||
anomaly-generator-flavor-right = v1.1
|
anomaly-generator-flavor-right = v1.1
|
||||||
|
|||||||
@@ -166,6 +166,9 @@ uplink-banana-peel-explosive-desc = They will burst into laughter when they slip
|
|||||||
uplink-hot-potato-name = Hot Potato
|
uplink-hot-potato-name = Hot Potato
|
||||||
uplink-hot-potato-desc = Once activated, this time bomb can't be dropped - only passed to someone else!
|
uplink-hot-potato-desc = Once activated, this time bomb can't be dropped - only passed to someone else!
|
||||||
|
|
||||||
|
uplink-chimp-ammo-name = Box of 10 Omega Cartridges.
|
||||||
|
uplink-chimp-ammo-desc = A box of 10 omega particle cartridges for the CHIMP. Omega particles inflict severe burns and cause anomalies to go supercritical.
|
||||||
|
|
||||||
# Armor
|
# Armor
|
||||||
uplink-chameleon-name = Chameleon Kit
|
uplink-chameleon-name = Chameleon Kit
|
||||||
uplink-chameleon-desc = A backpack full of items that contain chameleon technology allowing you to disguise as pretty much anything on the station, and more!
|
uplink-chameleon-desc = A backpack full of items that contain chameleon technology allowing you to disguise as pretty much anything on the station, and more!
|
||||||
|
|||||||
@@ -111,6 +111,21 @@
|
|||||||
- id: MagazineMagnumSubMachineGun
|
- id: MagazineMagnumSubMachineGun
|
||||||
amount: 3
|
amount: 3
|
||||||
|
|
||||||
|
- type: entity
|
||||||
|
name: box of omega particle cartridges
|
||||||
|
parent: BoxMagazine
|
||||||
|
id: BoxMagazineChimpOmega
|
||||||
|
description: A box full of omega particle cartridges for the CHIMP.
|
||||||
|
components:
|
||||||
|
- type: StorageFill
|
||||||
|
contents:
|
||||||
|
- id: CartridgeAnomalousParticleOmega
|
||||||
|
amount: 10
|
||||||
|
- type: Sprite
|
||||||
|
layers:
|
||||||
|
- state: box_science
|
||||||
|
- state: omegacart
|
||||||
|
|
||||||
- type: entity
|
- type: entity
|
||||||
name: box of Vector (high-velocity) magazines
|
name: box of Vector (high-velocity) magazines
|
||||||
parent: BoxMagazine
|
parent: BoxMagazine
|
||||||
|
|||||||
@@ -664,6 +664,20 @@
|
|||||||
- Clown
|
- Clown
|
||||||
- Mime
|
- Mime
|
||||||
|
|
||||||
|
- type: listing
|
||||||
|
id: UplinkChimpAmmo
|
||||||
|
name: uplink-chimp-ammo-name
|
||||||
|
description: uplink-chimp-ammo-desc
|
||||||
|
productEntity: BoxMagazineChimpOmega
|
||||||
|
cost:
|
||||||
|
Telecrystal: 4
|
||||||
|
categories:
|
||||||
|
- UplinkJob
|
||||||
|
conditions:
|
||||||
|
- !type:BuyerJobCondition
|
||||||
|
whitelist:
|
||||||
|
- Scientist
|
||||||
|
|
||||||
# Armor
|
# Armor
|
||||||
|
|
||||||
- type: listing
|
- type: listing
|
||||||
|
|||||||
@@ -111,3 +111,18 @@
|
|||||||
color: goldenrod
|
color: goldenrod
|
||||||
- type: CartridgeAmmo
|
- type: CartridgeAmmo
|
||||||
proto: AnomalousParticleZetaStrong
|
proto: AnomalousParticleZetaStrong
|
||||||
|
|
||||||
|
- type: entity
|
||||||
|
id: CartridgeAnomalousParticleOmega
|
||||||
|
parent: BaseAnomalousCartridge
|
||||||
|
name: cartridge (omega particle)
|
||||||
|
description: An experimental and often dangerous particle.
|
||||||
|
components:
|
||||||
|
- type: Sprite
|
||||||
|
layers:
|
||||||
|
- state: base
|
||||||
|
map: ["enum.AmmoVisualLayers.Base"]
|
||||||
|
- state: overlay
|
||||||
|
color: green
|
||||||
|
- type: CartridgeAmmo
|
||||||
|
proto: AnomalousParticleOmegaStrong
|
||||||
|
|||||||
@@ -397,6 +397,29 @@
|
|||||||
healthPerWeakeningeHit: -0.1
|
healthPerWeakeningeHit: -0.1
|
||||||
stabilityPerWeakeningeHit: -0.2
|
stabilityPerWeakeningeHit: -0.2
|
||||||
|
|
||||||
|
- type: entity
|
||||||
|
parent: AnomalousParticleDelta
|
||||||
|
id: AnomalousParticleOmegaStrong
|
||||||
|
noSpawn: true
|
||||||
|
components:
|
||||||
|
- type: Sprite
|
||||||
|
sprite: Objects/Weapons/Guns/Projectiles/magic.rsi
|
||||||
|
layers:
|
||||||
|
- state: magicm_green
|
||||||
|
shader: unshaded
|
||||||
|
- type: AnomalousParticle
|
||||||
|
particleType: Default
|
||||||
|
severityOverride: true
|
||||||
|
severityPerSeverityHit: 0.1
|
||||||
|
stabilityPerDestabilizingHit: 0.05
|
||||||
|
healthPerWeakeningeHit: 1
|
||||||
|
stabilityPerWeakeningeHit: -0.05
|
||||||
|
- type: Projectile
|
||||||
|
impactEffect: BulletImpactEffectKinetic
|
||||||
|
damage:
|
||||||
|
types:
|
||||||
|
Heat: 20
|
||||||
|
|
||||||
# Launcher projectiles (grenade / rocket)
|
# Launcher projectiles (grenade / rocket)
|
||||||
- type: entity
|
- type: entity
|
||||||
id: BulletRocket
|
id: BulletRocket
|
||||||
|
|||||||
BIN
Resources/Textures/Objects/Storage/boxes.rsi/box_science.png
Normal file
BIN
Resources/Textures/Objects/Storage/boxes.rsi/box_science.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 18 KiB |
@@ -61,6 +61,9 @@
|
|||||||
{
|
{
|
||||||
"name": "box_security"
|
"name": "box_security"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"name": "box_science"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"name": "box_olive"
|
"name": "box_olive"
|
||||||
},
|
},
|
||||||
@@ -106,6 +109,9 @@
|
|||||||
{
|
{
|
||||||
"name": "lighttube"
|
"name": "lighttube"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"name": "omegacart"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"name": "magazine"
|
"name": "magazine"
|
||||||
},
|
},
|
||||||
|
|||||||
BIN
Resources/Textures/Objects/Storage/boxes.rsi/omegacart.png
Normal file
BIN
Resources/Textures/Objects/Storage/boxes.rsi/omegacart.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 17 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 15 KiB |
@@ -18,6 +18,17 @@
|
|||||||
]
|
]
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"name": "magicm_green",
|
||||||
|
"delays": [
|
||||||
|
[
|
||||||
|
0.1,
|
||||||
|
0.1,
|
||||||
|
0.1,
|
||||||
|
0.1
|
||||||
|
]
|
||||||
|
]
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"name": "spell",
|
"name": "spell",
|
||||||
"delays": [
|
"delays": [
|
||||||
|
|||||||
Reference in New Issue
Block a user