From 36c676741fede7f3cd17009855646af02f1a7057 Mon Sep 17 00:00:00 2001 From: Ed <96445749+TheShuEd@users.noreply.github.com> Date: Mon, 16 Dec 2024 22:23:31 +0300 Subject: [PATCH] Christmas anomaly (#33889) * santa anomaly * Update anomaly.yml * injection * Update anomaly.yml * Update Resources/Locale/en-US/anomaly/inner_anomaly.ftl Co-authored-by: ScarKy0 <106310278+ScarKy0@users.noreply.github.com> * Update Resources/Textures/Structures/Specific/Anomalies/Cores/santa_core.rsi/meta.json Co-authored-by: Errant <35878406+Errant-4@users.noreply.github.com> * Update Resources/Textures/Structures/Specific/Anomalies/santa_anom.rsi/meta.json Co-authored-by: Errant <35878406+Errant-4@users.noreply.github.com> --------- Co-authored-by: ScarKy0 <106310278+ScarKy0@users.noreply.github.com> Co-authored-by: Errant <35878406+Errant-4@users.noreply.github.com> --- .../Locale/en-US/anomaly/inner_anomaly.ftl | 1 + .../Markers/Spawners/Random/anomaly.yml | 2 + .../Structures/Specific/Anomaly/anomalies.yml | 48 ++++++++++++++++++ .../Specific/Anomaly/anomaly_injections.yml | 31 ++++++++++- .../Specific/Anomaly/anomaly_injectors.yml | 27 +++++++++- .../Structures/Specific/Anomaly/cores.yml | 26 ++++++++++ .../Anomalies/Cores/santa_core.rsi/core.png | Bin 0 -> 195 bytes .../Anomalies/Cores/santa_core.rsi/meta.json | 25 +++++++++ .../Anomalies/Cores/santa_core.rsi/pulse.png | Bin 0 -> 679 bytes .../Anomalies/inner_anom_layer.rsi/meta.json | 13 +++++ .../Anomalies/inner_anom_layer.rsi/santa.png | Bin 0 -> 494 bytes .../Anomalies/santa_anom.rsi/anom.png | Bin 0 -> 829 bytes .../Anomalies/santa_anom.rsi/meta.json | 33 ++++++++++++ .../Anomalies/santa_anom.rsi/pulse.png | Bin 0 -> 651 bytes 14 files changed, 204 insertions(+), 2 deletions(-) create mode 100644 Resources/Textures/Structures/Specific/Anomalies/Cores/santa_core.rsi/core.png create mode 100644 Resources/Textures/Structures/Specific/Anomalies/Cores/santa_core.rsi/meta.json create mode 100644 Resources/Textures/Structures/Specific/Anomalies/Cores/santa_core.rsi/pulse.png create mode 100644 Resources/Textures/Structures/Specific/Anomalies/inner_anom_layer.rsi/santa.png create mode 100644 Resources/Textures/Structures/Specific/Anomalies/santa_anom.rsi/anom.png create mode 100644 Resources/Textures/Structures/Specific/Anomalies/santa_anom.rsi/meta.json create mode 100644 Resources/Textures/Structures/Specific/Anomalies/santa_anom.rsi/pulse.png 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 0000000000000000000000000000000000000000..a97b408596a701b05a6a8b599813d2f43d6dfbe9 GIT binary patch literal 195 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdz#^NA%Cx&(BWL^R}wVp1HArY-_ zFKy&%P>^7Gpgrqt;GL>zalh|3wPj?l72j~wLuJWf)ff9*1OB{sU=$RbxIg;_x3$10 z+vk66FZ9g1xsjD2;e`1a28Q6ECu^teeZZyYu5)O?e1!^muS8qR$$A^q>Jz$OPny&J t#OD{kP3yTg6J{}m7x=E|=%_ixY4%RMCOLfKI-o-sJYD@<);T3K0RZbNOSAw0 literal 0 HcmV?d00001 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 0000000000000000000000000000000000000000..be15a90357945332830de0a7d1308affc88868c8 GIT binary patch literal 679 zcmV;Y0$BZtP)Px%VM#Ha_j+^SOhrw=SrQ( zrmg$-!zp(_IXQq2ctB*+|Gg3i6sFHZaMzy3{TofdBEZovfZ-LcnkP?__6&sCr%nH+ zDX4N&L0m)-bCBGIdztxi%NMkx^YiK*a7Q4sdQ2VO*dVSBA_uJS^*xc~f9xxXq@xpFSo}n?V#62RLeupS=&TZIS-QY7aP6 zS$vaj2Od169p8Ov4}(1+?*y!rzx7Pl&H!-Jvh>^Zwbyje?LT|YMfWm!FO7({nip>` z*97Rx2$_w}0m526`DHf6y_w*vIezgW6z0_G_>UeFDTN#NVLZa?cHrtK7ZltRtZs~*d@RWkDpNSf8 z_I@00E6bl_a3UDr5P>B8^bHM@c1&zo;pK$rh!8>uA%qY@2qDBye*jrZ5dZOtE9U?J N002ovPDHLkV1nP9KFt6C literal 0 HcmV?d00001 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 0000000000000000000000000000000000000000..4652438404097e9d27a9123251a5e0b2f75c570a GIT binary patch literal 494 zcmVPx$s7XXYRCt{2+dWRhKoExEFNiV=dzrSnrSR_mNg!$%-}c*gJ)1B>(^b0001_qLgeY+1PQ+mMysXfIo}a0Z8>a zdz`O|X0kEu`9+>55$9ytLbe@WnYBe-_)5uIW0F{dAEsQ0tufsVKS{!I#Ewsr?mQ(R ziC6phlvjD)E+uYU<~^X zu7Px%_en%SRCt{2nlX;sFc3w*g0zbOsa%;zmriwVkQ?kC(R-3b)Ui%sP?f4JvIo!> zG9!i>ij+*wFbh4vFl~}FkWu2(6JX_{N)_~Aq=={ncMol z2kXn#%;rJT0JVni!6uzLZmn1V@HxdmuQe3V0DuA-;|M@|00XW@$x99d+<0Umx zSM#-H(adY%pVfZBKvS(Si=qfo@Mr6YUL3P{n)zmw^!C z^8wFVBe#J)h|dRPx%MM*?KRCt{2nmbO!Fc5|(he@%NADzoIEx0ssKV1qDwSjlB*vB*Ezo zg8*mK@zDm91mi+NfaDDLnjgLzDFKoV&_+UlWCPv_18w^r7KHbsBHDn3bCY!>jf4Qn z8L%NtpoDG-op;Vt3lQ3c1{?5`0Qir@t830f3cC#+kPsl6&?SIB8eKb_5nw3d6#z~O zKEAwj$?uUl0vrV5XWs&IiXPbfj-R9CRo?@(03nhMs40FJUptMt1t8xCP_A1E0kUra zOcJRev8l&JsQ}p-5Nd){!4d+X9)dLio^t^*a0`H%0VP3d3m(HQ0O}zqS@0Nc0g?>} z1>!C^1g8L~8K6-#fQ$gq29#`DxzQ4!(P%UpyH4;`XW?{M3X`Y9>iz%=ND0u6$74T8 z9Zzdxb_uBa10G)J6DUF5A8_%+kN}h&W~loEG#w)9{s0RO5p{onrb9%E=;`n$(C@}d zx54WE0O|y=sQUu|Y&b+D`~fB%A_LS0jS$f_DP>TIA!X2r&HyQcLJoC*fR;m~Huf;S z${%3CAyNvtKY%-d+`Ux&0Tvu0Cj0?f4iNwY{s0ROk&>9C{s4&tFsSYO;{s5^2 lFmT2+>kzSI&}cMvm~Wa_<+zDO4~zf+002ovPDHLkV1f-51kV5f literal 0 HcmV?d00001