From 4d44000f0a42afecc8fb7aa5f1bf413a074a33f8 Mon Sep 17 00:00:00 2001 From: Memeji Date: Sat, 21 Sep 2024 19:51:50 -0500 Subject: [PATCH 1/3] Artifact - WIP - Bombs --- .../Prototypes/XenoArch/Effects/normal_effects.yml | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/Resources/Prototypes/XenoArch/Effects/normal_effects.yml b/Resources/Prototypes/XenoArch/Effects/normal_effects.yml index b9564c0366b..413d98fe62b 100644 --- a/Resources/Prototypes/XenoArch/Effects/normal_effects.yml +++ b/Resources/Prototypes/XenoArch/Effects/normal_effects.yml @@ -675,3 +675,14 @@ maxSpawns: 1 spawns: - id: TeslaEnergyBall + +# Floof - Added Effects + +- type: artifactEffect + id: EffectMiniBomb + targetDepth: 6 + effectHint: + components: + - type: SpawnArtifact + spawns: + - id: From d6293edb270ea023ba8ee7cb6d7c1e0d7ebc96a2 Mon Sep 17 00:00:00 2001 From: Memeji Date: Sun, 22 Sep 2024 20:41:24 -0500 Subject: [PATCH 2/3] Artifact changes --- .../ActivateNukeArtifactComponent.cs | 10 ++++++ .../Systems/ActivateNukeArtifactSystem.cs | 36 +++++++++++++++++++ .../Xenoarchaeology/structure_artifacts.yml | 11 +++++- .../XenoArch/Effects/normal_effects.yml | 22 ++++++++++-- 4 files changed, 75 insertions(+), 4 deletions(-) create mode 100644 Content.Server/FloofStation/Xenoarchaeology/XenoArtifacts/Effects/Components/ActivateNukeArtifactComponent.cs create mode 100644 Content.Server/FloofStation/Xenoarchaeology/XenoArtifacts/Effects/Systems/ActivateNukeArtifactSystem.cs diff --git a/Content.Server/FloofStation/Xenoarchaeology/XenoArtifacts/Effects/Components/ActivateNukeArtifactComponent.cs b/Content.Server/FloofStation/Xenoarchaeology/XenoArtifacts/Effects/Components/ActivateNukeArtifactComponent.cs new file mode 100644 index 00000000000..fb8ba504a37 --- /dev/null +++ b/Content.Server/FloofStation/Xenoarchaeology/XenoArtifacts/Effects/Components/ActivateNukeArtifactComponent.cs @@ -0,0 +1,10 @@ +namespace Content.Server.Floof.Xenoarchaeology.XenoArtifacts.Effects.Components; + +/// +/// This is used for activating the station nuke. +/// +[RegisterComponent] +public sealed partial class ActivateNukeArtifactComponent : Component +{ + +} diff --git a/Content.Server/FloofStation/Xenoarchaeology/XenoArtifacts/Effects/Systems/ActivateNukeArtifactSystem.cs b/Content.Server/FloofStation/Xenoarchaeology/XenoArtifacts/Effects/Systems/ActivateNukeArtifactSystem.cs new file mode 100644 index 00000000000..1c8bd7569d7 --- /dev/null +++ b/Content.Server/FloofStation/Xenoarchaeology/XenoArtifacts/Effects/Systems/ActivateNukeArtifactSystem.cs @@ -0,0 +1,36 @@ +using Content.Server.Power.Components; +using Content.Server.Power.EntitySystems; +using Content.Server.Floof.Xenoarchaeology.XenoArtifacts.Effects.Components; +using Content.Server.Xenoarchaeology.XenoArtifacts.Events; +using Content.Server.Nuke; +using Robust.Server.GameObjects; +using Robust.Shared.Map; +using System.Runtime.CompilerServices; + +namespace Content.Server.Floof.Xenoarchaeology.XenoArtifacts.Effects.Systems; + +/// +/// This handles +/// +public sealed class ActivateNukeArtifactSystem : EntitySystem +{ + [Dependency] private readonly BatterySystem _battery = default!; + [Dependency] private readonly EntityLookupSystem _lookup = default!; + [Dependency] private readonly MapSystem _map = default!; + + /// + public override void Initialize() + { + SubscribeLocalEvent(OnActivated); + } + + private void OnActivated(EntityUid uid, ActivateNukeArtifactComponent component, ArtifactActivatedEvent args) + { + + foreach () + { + nuke. + } + + } +} diff --git a/Resources/Prototypes/Entities/Objects/Specific/Xenoarchaeology/structure_artifacts.yml b/Resources/Prototypes/Entities/Objects/Specific/Xenoarchaeology/structure_artifacts.yml index f098894ff79..0fc0534c483 100644 --- a/Resources/Prototypes/Entities/Objects/Specific/Xenoarchaeology/structure_artifacts.yml +++ b/Resources/Prototypes/Entities/Objects/Specific/Xenoarchaeology/structure_artifacts.yml @@ -1,4 +1,4 @@ -- type: entity +- type: entity parent: BaseStructureDynamic id: BaseXenoArtifact name: alien artifact @@ -88,3 +88,12 @@ nodesMin: 9 nodesMax: 13 +- type: entity + parent: BaseXenoArtifact + id: OmenXenoArtifact + suffix: Omen + components: + - type: Artifact + nodesMin: 13 + nodesMax: 18 + diff --git a/Resources/Prototypes/XenoArch/Effects/normal_effects.yml b/Resources/Prototypes/XenoArch/Effects/normal_effects.yml index 413d98fe62b..6d13abc9f37 100644 --- a/Resources/Prototypes/XenoArch/Effects/normal_effects.yml +++ b/Resources/Prototypes/XenoArch/Effects/normal_effects.yml @@ -181,6 +181,9 @@ - Sodium - Water - Sulfur + - Blood # Floof - Artifact tweaks + - Cum # Floof - Artifact tweaks + - Pomelustine # Floof - Artifact tweaks - type: artifactEffect id: EffectCold @@ -503,6 +506,8 @@ - Desoxyephedrine - Pax - Siderlac + - Libidozenithizine # Floof - Artifact tweaks + - Philterex # Floof - Artifact tweaks - type: artifactEffect id: EffectEmp @@ -658,7 +663,7 @@ - type: artifactEffect id: EffectSingulo - targetDepth: 10 + targetDepth: 8 effectHint: artifact-effect-hint-destruction components: - type: SpawnArtifact @@ -668,7 +673,7 @@ - type: artifactEffect id: EffectTesla - targetDepth: 10 + targetDepth: 8 effectHint: artifact-effect-hint-destruction components: - type: SpawnArtifact @@ -684,5 +689,16 @@ effectHint: components: - type: SpawnArtifact + maxSpawns: 1 + spawns: + - id: TrainingBomb + +- type: artifactEffect + id: EffectNukeActivate + targetDepth: 8 + effectHint: + components: + - type: SpawnArtifact + maxSpawns: 1 spawns: - - id: + - id: TrainingBomb From 14874f803443addf735db324cdeb76eca30ece2d Mon Sep 17 00:00:00 2001 From: Memeji Date: Mon, 23 Sep 2024 13:36:58 -0500 Subject: [PATCH 3/3] Making dangerous artifacts possible. Adding reagents to bio effects. --- .../ActivateNukeArtifactComponent.cs | 10 ------ .../Systems/ActivateNukeArtifactSystem.cs | 36 ------------------- .../Markers/Spawners/Random/artifacts.yml | 4 ++- .../Xenoarchaeology/item_artifacts.yml | 11 +++++- .../Xenoarchaeology/structure_artifacts.yml | 2 +- .../XenoArch/Effects/normal_effects.yml | 26 ++------------ 6 files changed, 16 insertions(+), 73 deletions(-) delete mode 100644 Content.Server/FloofStation/Xenoarchaeology/XenoArtifacts/Effects/Components/ActivateNukeArtifactComponent.cs delete mode 100644 Content.Server/FloofStation/Xenoarchaeology/XenoArtifacts/Effects/Systems/ActivateNukeArtifactSystem.cs diff --git a/Content.Server/FloofStation/Xenoarchaeology/XenoArtifacts/Effects/Components/ActivateNukeArtifactComponent.cs b/Content.Server/FloofStation/Xenoarchaeology/XenoArtifacts/Effects/Components/ActivateNukeArtifactComponent.cs deleted file mode 100644 index fb8ba504a37..00000000000 --- a/Content.Server/FloofStation/Xenoarchaeology/XenoArtifacts/Effects/Components/ActivateNukeArtifactComponent.cs +++ /dev/null @@ -1,10 +0,0 @@ -namespace Content.Server.Floof.Xenoarchaeology.XenoArtifacts.Effects.Components; - -/// -/// This is used for activating the station nuke. -/// -[RegisterComponent] -public sealed partial class ActivateNukeArtifactComponent : Component -{ - -} diff --git a/Content.Server/FloofStation/Xenoarchaeology/XenoArtifacts/Effects/Systems/ActivateNukeArtifactSystem.cs b/Content.Server/FloofStation/Xenoarchaeology/XenoArtifacts/Effects/Systems/ActivateNukeArtifactSystem.cs deleted file mode 100644 index 1c8bd7569d7..00000000000 --- a/Content.Server/FloofStation/Xenoarchaeology/XenoArtifacts/Effects/Systems/ActivateNukeArtifactSystem.cs +++ /dev/null @@ -1,36 +0,0 @@ -using Content.Server.Power.Components; -using Content.Server.Power.EntitySystems; -using Content.Server.Floof.Xenoarchaeology.XenoArtifacts.Effects.Components; -using Content.Server.Xenoarchaeology.XenoArtifacts.Events; -using Content.Server.Nuke; -using Robust.Server.GameObjects; -using Robust.Shared.Map; -using System.Runtime.CompilerServices; - -namespace Content.Server.Floof.Xenoarchaeology.XenoArtifacts.Effects.Systems; - -/// -/// This handles -/// -public sealed class ActivateNukeArtifactSystem : EntitySystem -{ - [Dependency] private readonly BatterySystem _battery = default!; - [Dependency] private readonly EntityLookupSystem _lookup = default!; - [Dependency] private readonly MapSystem _map = default!; - - /// - public override void Initialize() - { - SubscribeLocalEvent(OnActivated); - } - - private void OnActivated(EntityUid uid, ActivateNukeArtifactComponent component, ArtifactActivatedEvent args) - { - - foreach () - { - nuke. - } - - } -} diff --git a/Resources/Prototypes/Entities/Markers/Spawners/Random/artifacts.yml b/Resources/Prototypes/Entities/Markers/Spawners/Random/artifacts.yml index a678ef03f3e..df9cde8b5d6 100644 --- a/Resources/Prototypes/Entities/Markers/Spawners/Random/artifacts.yml +++ b/Resources/Prototypes/Entities/Markers/Spawners/Random/artifacts.yml @@ -1,4 +1,4 @@ -- type: entity +- type: entity id: RandomArtifactSpawner name: random artifact spawner parent: MarkerBase @@ -18,9 +18,11 @@ - ComplexXenoArtifact - ComplexXenoArtifact - ComplexXenoArtifact + - OmenXenoArtifactItem # Floof - Artifacts - SimpleXenoArtifactItem - MediumXenoArtifactItem - ComplexXenoArtifactItem + - OmenXenoArtifactItem # Floof - Artifacts chance: 1 - type: entity diff --git a/Resources/Prototypes/Entities/Objects/Specific/Xenoarchaeology/item_artifacts.yml b/Resources/Prototypes/Entities/Objects/Specific/Xenoarchaeology/item_artifacts.yml index cb6708431a0..ac2066ee5df 100644 --- a/Resources/Prototypes/Entities/Objects/Specific/Xenoarchaeology/item_artifacts.yml +++ b/Resources/Prototypes/Entities/Objects/Specific/Xenoarchaeology/item_artifacts.yml @@ -1,4 +1,4 @@ -- type: entity +- type: entity parent: BaseItem id: BaseXenoArtifactItem name: alien artifact @@ -94,6 +94,15 @@ nodesMin: 9 nodesMax: 13 +- type: entity # Floof - Omen artifact + parent: BaseXenoArtifactItem + id: OmenXenoArtifactItem + suffix: Omen + components: + - type: Artifact + nodesMin: 13 + nodesMax: 18 + # this exists for crafting item artifacts so that the final result can be simple, medium, or complex. - type: entity parent: BaseXenoArtifactItem diff --git a/Resources/Prototypes/Entities/Objects/Specific/Xenoarchaeology/structure_artifacts.yml b/Resources/Prototypes/Entities/Objects/Specific/Xenoarchaeology/structure_artifacts.yml index 0fc0534c483..283176230d2 100644 --- a/Resources/Prototypes/Entities/Objects/Specific/Xenoarchaeology/structure_artifacts.yml +++ b/Resources/Prototypes/Entities/Objects/Specific/Xenoarchaeology/structure_artifacts.yml @@ -88,7 +88,7 @@ nodesMin: 9 nodesMax: 13 -- type: entity +- type: entity # Floof - Omen artifact parent: BaseXenoArtifact id: OmenXenoArtifact suffix: Omen diff --git a/Resources/Prototypes/XenoArch/Effects/normal_effects.yml b/Resources/Prototypes/XenoArch/Effects/normal_effects.yml index 6d13abc9f37..962c90e16e6 100644 --- a/Resources/Prototypes/XenoArch/Effects/normal_effects.yml +++ b/Resources/Prototypes/XenoArch/Effects/normal_effects.yml @@ -663,7 +663,7 @@ - type: artifactEffect id: EffectSingulo - targetDepth: 8 + targetDepth: 8 # Floof - Make it so they can actually occur effectHint: artifact-effect-hint-destruction components: - type: SpawnArtifact @@ -673,32 +673,10 @@ - type: artifactEffect id: EffectTesla - targetDepth: 8 + targetDepth: 8 # Floof - Make it so they can actually occur effectHint: artifact-effect-hint-destruction components: - type: SpawnArtifact maxSpawns: 1 spawns: - id: TeslaEnergyBall - -# Floof - Added Effects - -- type: artifactEffect - id: EffectMiniBomb - targetDepth: 6 - effectHint: - components: - - type: SpawnArtifact - maxSpawns: 1 - spawns: - - id: TrainingBomb - -- type: artifactEffect - id: EffectNukeActivate - targetDepth: 8 - effectHint: - components: - - type: SpawnArtifact - maxSpawns: 1 - spawns: - - id: TrainingBomb