diff --git a/Resources/Locale/en-US/anomaly/inner_anomaly.ftl b/Resources/Locale/en-US/anomaly/inner_anomaly.ftl index e55c4391e30a6b..f5e8140c5ee523 100644 --- a/Resources/Locale/en-US/anomaly/inner_anomaly.ftl +++ b/Resources/Locale/en-US/anomaly/inner_anomaly.ftl @@ -8,6 +8,7 @@ inner-anomaly-start-message-flesh = Your body is growing frantically. You became inner-anomaly-start-message-grav = Everything becames unnaturally heavy and light at the same time... You became the host of a gravity anomaly. inner-anomaly-start-message-tech = Your head is buzzing with the amount of chaotic information! You became the host of a tech anomaly. inner-anomaly-start-message-rock = The crystals are growing through your bones! You became the host of a rock anomaly. +inner-anomaly-start-message-santa = You're becoming obsessed with the Christmas spirit! You became the host of a Christmas anomaly. inner-anomaly-end-message = The abnormal activity within you disappears without a trace.... diff --git a/Resources/Prototypes/Entities/Markers/Spawners/Random/anomaly.yml b/Resources/Prototypes/Entities/Markers/Spawners/Random/anomaly.yml index 4697606af9f683..ef89ed9a16902d 100644 --- a/Resources/Prototypes/Entities/Markers/Spawners/Random/anomaly.yml +++ b/Resources/Prototypes/Entities/Markers/Spawners/Random/anomaly.yml @@ -22,6 +22,7 @@ - AnomalyFlora - AnomalyShadow - AnomalyTech + - AnomalySanta #Remove in 2025 rareChance: 0.3 rarePrototypes: - RandomAnomalyInjectorSpawner @@ -66,5 +67,6 @@ - AnomalyTrapGravity - AnomalyTrapTech - AnomalyTrapRock + - AnomalyTrapSanta # Remove in 2025 chance: 1 \ No newline at end of file diff --git a/Resources/Prototypes/Entities/Structures/Specific/Anomaly/anomalies.yml b/Resources/Prototypes/Entities/Structures/Specific/Anomaly/anomalies.yml index f675b2d2c81dd6..f111d6b1826984 100644 --- a/Resources/Prototypes/Entities/Structures/Specific/Anomaly/anomalies.yml +++ b/Resources/Prototypes/Entities/Structures/Specific/Anomaly/anomalies.yml @@ -936,3 +936,51 @@ - type: Tag tags: - HideContextMenu + +- type: entity + id: AnomalySanta + parent: BaseAnomaly + suffix: Santa + components: + - type: Sprite + drawdepth: Mobs + sprite: Structures/Specific/Anomalies/santa_anom.rsi + layers: + - state: anom + map: ["enum.AnomalyVisualLayers.Base"] + - state: pulse + map: ["enum.AnomalyVisualLayers.Animated"] + visible: false + - type: PointLight + radius: 8.0 + energy: 8.5 + color: "#db8127" + - type: Anomaly + animationTime: 6 + offset: 0, 0 + corePrototype: AnomalyCoreSanta + coreInertPrototype: AnomalyCoreSantaInert + minPulseLength: 60 + maxPulseLength: 120 + - type: EntitySpawnAnomaly + entries: + - settings: + spawnOnPulse: true + minAmount: 2 + maxAmount: 5 + maxRange: 5 + spawns: + - PresentRandomUnsafe + - PresentRandom + - PresentRandomCoal + - PresentRandomCash + - ClothingHeadHatSantahat + - FoodCakeChristmasSlice + - settings: + spawnOnSuperCritical: true + minAmount: 10 + maxAmount: 20 + maxRange: 6 + spawns: + - PresentRandomInsane + \ No newline at end of file diff --git a/Resources/Prototypes/Entities/Structures/Specific/Anomaly/anomaly_injections.yml b/Resources/Prototypes/Entities/Structures/Specific/Anomaly/anomaly_injections.yml index f1e535f15b4cf0..2b10aa1f768d79 100644 --- a/Resources/Prototypes/Entities/Structures/Specific/Anomaly/anomaly_injections.yml +++ b/Resources/Prototypes/Entities/Structures/Specific/Anomaly/anomaly_injections.yml @@ -350,4 +350,33 @@ spawns: - MobSpawnCrabSilver - MobSpawnCrabIron - - MobSpawnCrabQuartz \ No newline at end of file + - MobSpawnCrabQuartz + +- type: entity + parent: AnomalyInjectionBase + id: AnomalyInjectionSanta + categories: [ HideSpawnMenu ] + components: + - type: PointLight + color: "#db8127" + - type: EntitySpawnAnomaly + entries: + - settings: + spawnOnPulse: true + minAmount: 1 + maxAmount: 3 + maxRange: 5 + spawns: + - PresentRandomUnsafe + - PresentRandom + - PresentRandomCoal + - PresentRandomCash + - ClothingHeadHatSantahat + - FoodCakeChristmasSlice + - settings: + spawnOnSuperCritical: true + minAmount: 5 + maxAmount: 10 + maxRange: 6 + spawns: + - PresentRandomInsane \ No newline at end of file diff --git a/Resources/Prototypes/Entities/Structures/Specific/Anomaly/anomaly_injectors.yml b/Resources/Prototypes/Entities/Structures/Specific/Anomaly/anomaly_injectors.yml index 24a76dfb62e795..d643bcb028fa3d 100644 --- a/Resources/Prototypes/Entities/Structures/Specific/Anomaly/anomaly_injectors.yml +++ b/Resources/Prototypes/Entities/Structures/Specific/Anomaly/anomaly_injectors.yml @@ -317,4 +317,29 @@ speciesSprites: Vox: sprite: Structures/Specific/Anomalies/inner_anom_layer.rsi - state: rock_VOX \ No newline at end of file + state: rock_VOX + +- type: entity + parent: BaseAnomalyInjector + id: AnomalyTrapSanta + suffix: Santa + components: + - type: Sprite + layers: + - state: pink + - sprite: Structures/Specific/Anomalies/santa_anom.rsi + state: pulse + - sprite: Mobs/Species/Human/parts.rsi + state: full + - type: InnerBodyAnomalyInjector + injectionComponents: + - type: Anomaly + deleteEntity: false + maxPointsPerSecond: 100 + corePrototype: AnomalyCoreSanta + - type: InnerBodyAnomaly + injectionProto: AnomalyInjectionSanta + startMessage: inner-anomaly-start-message-santa + fallbackSprite: + sprite: Structures/Specific/Anomalies/inner_anom_layer.rsi + state: santa \ No newline at end of file diff --git a/Resources/Prototypes/Entities/Structures/Specific/Anomaly/cores.yml b/Resources/Prototypes/Entities/Structures/Specific/Anomaly/cores.yml index 568a133749e71d..45a5a6d4d6a124 100644 --- a/Resources/Prototypes/Entities/Structures/Specific/Anomaly/cores.yml +++ b/Resources/Prototypes/Entities/Structures/Specific/Anomaly/cores.yml @@ -184,6 +184,19 @@ color: "#56c1e8" castShadows: false +- type: entity + parent: BaseAnomalyCore + id: AnomalyCoreSanta + suffix: Santa + components: + - type: Sprite + sprite: Structures/Specific/Anomalies/Cores/santa_core.rsi + - type: PointLight + radius: 1.5 + energy: 2.0 + color: "#fc0303" + castShadows: false + # Inert cores - type: entity @@ -346,3 +359,16 @@ energy: 2.0 color: "#56c1e8" castShadows: false + +- type: entity + parent: BaseAnomalyInertCore + id: AnomalyCoreSantaInert + suffix: Santa, Inert + components: + - type: Sprite + sprite: Structures/Specific/Anomalies/Cores/santa_core.rsi + - type: PointLight + radius: 1.5 + energy: 2.0 + color: "#fc0303" + castShadows: false diff --git a/Resources/Textures/Structures/Specific/Anomalies/Cores/santa_core.rsi/core.png b/Resources/Textures/Structures/Specific/Anomalies/Cores/santa_core.rsi/core.png new file mode 100644 index 00000000000000..a97b408596a701 Binary files /dev/null and b/Resources/Textures/Structures/Specific/Anomalies/Cores/santa_core.rsi/core.png differ diff --git a/Resources/Textures/Structures/Specific/Anomalies/Cores/santa_core.rsi/meta.json b/Resources/Textures/Structures/Specific/Anomalies/Cores/santa_core.rsi/meta.json new file mode 100644 index 00000000000000..1263862f7c8fdc --- /dev/null +++ b/Resources/Textures/Structures/Specific/Anomalies/Cores/santa_core.rsi/meta.json @@ -0,0 +1,25 @@ +{ + "version": 1, + "license": "CC0-1.0", + "copyright": "Created by Jaraten (github) for ss14 at https://github.com/space-wizards/space-station-14/pull/33889", + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "core" + }, + { + "name": "pulse", + "delays": [ + [ + 0.2, + 0.2, + 0.2, + 0.2 + ] + ] + } + ] +} diff --git a/Resources/Textures/Structures/Specific/Anomalies/Cores/santa_core.rsi/pulse.png b/Resources/Textures/Structures/Specific/Anomalies/Cores/santa_core.rsi/pulse.png new file mode 100644 index 00000000000000..be15a903579453 Binary files /dev/null and b/Resources/Textures/Structures/Specific/Anomalies/Cores/santa_core.rsi/pulse.png differ diff --git a/Resources/Textures/Structures/Specific/Anomalies/inner_anom_layer.rsi/meta.json b/Resources/Textures/Structures/Specific/Anomalies/inner_anom_layer.rsi/meta.json index 4e069d0cd90bac..4aa15c86cd8186 100644 --- a/Resources/Textures/Structures/Specific/Anomalies/inner_anom_layer.rsi/meta.json +++ b/Resources/Textures/Structures/Specific/Anomalies/inner_anom_layer.rsi/meta.json @@ -443,6 +443,19 @@ ] ] }, + { + "name": "santa", + "delays": [ + [ + 0.2, + 0.2, + 0.2, + 0.2, + 0.2, + 0.2 + ] + ] + }, { "name": "shadow", "directions": 4, diff --git a/Resources/Textures/Structures/Specific/Anomalies/inner_anom_layer.rsi/santa.png b/Resources/Textures/Structures/Specific/Anomalies/inner_anom_layer.rsi/santa.png new file mode 100644 index 00000000000000..4652438404097e Binary files /dev/null and b/Resources/Textures/Structures/Specific/Anomalies/inner_anom_layer.rsi/santa.png differ diff --git a/Resources/Textures/Structures/Specific/Anomalies/santa_anom.rsi/anom.png b/Resources/Textures/Structures/Specific/Anomalies/santa_anom.rsi/anom.png new file mode 100644 index 00000000000000..0788b3c2dcdd67 Binary files /dev/null and b/Resources/Textures/Structures/Specific/Anomalies/santa_anom.rsi/anom.png differ diff --git a/Resources/Textures/Structures/Specific/Anomalies/santa_anom.rsi/meta.json b/Resources/Textures/Structures/Specific/Anomalies/santa_anom.rsi/meta.json new file mode 100644 index 00000000000000..4681548ad48a71 --- /dev/null +++ b/Resources/Textures/Structures/Specific/Anomalies/santa_anom.rsi/meta.json @@ -0,0 +1,33 @@ +{ + "version": 1, + "license": "CC0-1.0", + "copyright": "Created by TheShuEd (github) for ss14 at https://github.com/space-wizards/space-station-14/pull/33889", + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "anom", + "delays": [ + [ + 0.3, + 0.3, + 0.3, + 0.3 + ] + ] + }, + { + "name": "pulse", + "delays": [ + [ + 0.2, + 0.2, + 0.2, + 0.2 + ] + ] + } + ] +} diff --git a/Resources/Textures/Structures/Specific/Anomalies/santa_anom.rsi/pulse.png b/Resources/Textures/Structures/Specific/Anomalies/santa_anom.rsi/pulse.png new file mode 100644 index 00000000000000..b8254eed2b0eb4 Binary files /dev/null and b/Resources/Textures/Structures/Specific/Anomalies/santa_anom.rsi/pulse.png differ