PA0$kz@-arG4h=~B%sAvk1
z1%N}w93V?NCQJg(T7U(h7GMFW1?T|B%jh4ur5rX0KuQ2{8x-NFIgdCM0Ofah1vkG*^t)BfOpK^MYwK07A%r?5Qn!B>y4KTAKZ
fr#b%cUnsynzg)gFOz00000NkvXXu0mjfXVZOu
literal 0
HcmV?d00001
diff --git a/Resources/Textures/Mobs/Customization/Harpy/harpy_tails.rsi/haven_tone_2.png b/Resources/Textures/Mobs/Customization/Harpy/harpy_tails.rsi/haven_tone_2.png
new file mode 100644
index 0000000000000000000000000000000000000000..fe98ec53eb2c4f1b570ef1a891228a7586e37178
GIT binary patch
literal 630
zcmV-+0*U>JP)4Tx04UFuk-bX;K@i1XjFO;{6k3RgToJ`00Z|Z3iC~&&kwh?RbJ^q);qG$W
zB}lLpY%Bs6qK#jL|ADrGt%4vZf{3NHUyX$GZ4yWjE!<^pe!RUm%+3NGaa|Zr=L}$&
zB|8y|Dog2Q#rFaqh8cc@RpD6k$+;B%T%ULF$b1`-weY{ylg&8-@c7A7!m>+bc7ynO
z$&$QH?iU3$OFkrrZ8k{0l6t1W&yw>EewS>g60^LUtf}PNIMc?WU>oEya>&rjqS=qU
zNg!t~CYc8rLvWBl3{fb^po}%>C?UdZa%R8##_PTX6zLKCTByLLBaZ^TVX9?T%`t1#
zbKE*Aa_&Fp>1dM^jp~6Y(DmfHZzF(j2dGtD_v^@YYsY~15x6j0{vziz{XxCj(n1G7
za1%JYY-yQY;Cu@hc(7DktxH};ho%9qr$BES=(_>BR~oZwp5x>mNNwgoUh0LdQz2><{90(4SNQ~v1oG9HLxR|nsN{d
zC=e*1K%n4%K}t3N32NFX)M;#eYe}}H>wfPIhY5uBjfzsL^{HjkzY?9Gj$k8@psPQO%C(2{wk@-f5YZ#0@<$e-Pd$XM%#9FGyq$zd$^i
QBme*a07*qoM6N<$f@XjYK>z>%
literal 0
HcmV?d00001
diff --git a/Resources/Textures/Mobs/Customization/Harpy/harpy_tails.rsi/meta.json b/Resources/Textures/Mobs/Customization/Harpy/harpy_tails.rsi/meta.json
index f33401617c0..94795a626ea 100644
--- a/Resources/Textures/Mobs/Customization/Harpy/harpy_tails.rsi/meta.json
+++ b/Resources/Textures/Mobs/Customization/Harpy/harpy_tails.rsi/meta.json
@@ -1,7 +1,7 @@
{
"version": 1,
"license": "CC-BY-SA-3.0",
- "copyright": "Phoenix and Rooster by @leonardo_dabepis, Finch & Forked Tailfin by @stillxicarus",
+ "copyright": "Phoenix and Rooster by @leonardo_dabepis, Finch & Forked Tailfin by @stillxicarus, haven & forked_long & swallow by @Kilath",
"size": {
"x": 32,
"y": 32
@@ -22,6 +22,22 @@
{
"name": "whitescale_forked_tailfin",
"directions": 4
+ },
+ {
+ "name": "haven_tone_1",
+ "directions": 4
+ },
+ {
+ "name": "haven_tone_2",
+ "directions": 4
+ },
+ {
+ "name": "forked_long",
+ "directions": 4
+ },
+ {
+ "name": "swallow_tail",
+ "directions": 4
}
]
}
diff --git a/Resources/Textures/Mobs/Customization/Harpy/harpy_tails.rsi/swallow_tail.png b/Resources/Textures/Mobs/Customization/Harpy/harpy_tails.rsi/swallow_tail.png
new file mode 100644
index 0000000000000000000000000000000000000000..f9187b66f84ad6bddfef3452079a7697372ed3a7
GIT binary patch
literal 1092
zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I1|(Ny7T#lEU@Xscb`J1#c2)=|%1_J8No8Qr
zI6rmbUTB$tEso0N_(!E$G%Bb%MPBO^qIGAdd_m8&3k6AS^4C)#pPp*5~QCP7M-|odeP1P
zJ)R2bdTKM-C7lZ0VdtWtbT=@EASH5yXKKqK$*zd1Tlx81q_%67^Ao`!ubCbW0
zdv9HGVs|JIw%DDMIWzV_4Yx$ahLGsB-f?d2%NW-$cgUA|v72#MxYXvXd5@pSdE|cR
zT-Ug_Het$t_VE3TiaRqTx9~hn0mcMpfk$L90|U1p2s75F#7|^kU@G=>aSW-5dppaq
z>yU$h>*G6)ANeLJ$T{sftWeBhevbD}MTg=OzD3gh3P}QYb_=e5p!7I@)so)Mmq#Sk
zX0Bp?czf-!Rrgbcf--s8nEj3Nmm~!;dmLTFHlfRvS3$H}%0Wxav>`+%i(zHN6^5XV
zD;Sp~3FbSz&F{=LlddW~pSRt6*WGpHR&)0#a73B>bqK8MUDNQisM1@m%W!Y#EH|kO
z@4xSTTb3Q?Y`D(rF^|Rk^PFM#*pkm&-XPMuhC%P|;fDz(xgL^SyayaL@;_JaJ@tRD
zR>IW4PaeODc2*pJ{4tH~+3JwSV%8^bZE{Z~ZS;8a(LYhWf64XNTW9t^{-G+Y^`CW-
zhF8<;gX~_x``xT6Rrc=gQ=ja~{i}=9k1e772jlFr-G5*H-WNE_=s|I6_(RFalg;Z5
zOrFx)QEM%U=6&Td?v8|cwxBNqO=CjW`f7Z_Ec@n`GHdmNk{_)0@
zZWF%#%%1w}-@nV+2XE%2H67>+$VO{@RvAZIY6yuZ^}{{XgS)l*s&I)&<5#?#{Amme@J_Y13rJ
zJL!+#`OJMN5nJ8t$9CZ2)vT{ubVJ1jl#@!=HaRgrP$|3Cay4B*JE?4C({i>2&OKqp
zB5l19wQL)e(vF;qeP?5Ip6Q2>%#pAuHL~ZKcy=9q|9E5OwWi~^Oat~u9zw@8=Cz7{W5~LTNXP>}z^z%N(GM}Yx(sM<+fN7G!)78&q
Iol`;+090D%3;+NC
literal 0
HcmV?d00001
diff --git a/Resources/Textures/Mobs/Customization/Harpy/harpy_wings.rsi/bat_wings_tone_1.png b/Resources/Textures/Mobs/Customization/Harpy/harpy_wings.rsi/bat_wings_tone_1.png
new file mode 100644
index 0000000000000000000000000000000000000000..a147739cc90c5cc7bd164a8bb774730f17eed382
GIT binary patch
literal 1581
zcmV+|2GaS7P)K@`MNB50!)F@jN>4us0f~|O4xJ%2X
zR)vp*qmDEve693!nO_uV%KV|&NyI0?uWE)fHJq+tE$f)VgTfIrSJW!~sG9_JYhhk;
zk3=snai)n8CQXqwaugVnY{|^(`-cB~bL7RN$={}gBaRGN@kT{0N>yF5A-XPKj*^=D
z|9QH`=t#MGFa|Bpp7-7lfnE67@x1S2&-*!nrYE?xs{XvpY5Y_4ovIc&gwQ6OUsbjA
z9$aie_oJP1Qh!pDgx@gW?F>4S(0L1O%jH>B_Bnlk#D+Z44eTGlfSeDl`~o4lXc-r;
zD+mAp010qNS#tmY3labT3lag+-G2N400d=8L_t(|UhSGqPUAojg-sMLz=|`BV8kWh
z7KjBKmPip|!GbLag*!x?feq|90SaiAXqJdGAZ2(So~Kf-?yimoeCr2^~(S)0sT>p6`O!x7SXy
zmNI~&-QC^l_4TzretLSUMx#-y9_+Tax9k1Q&CTlm{@%39!5drJ=V~xd9v&W6M@L81
z!^1-(0Kq{@0Jad}6%ax;-V>YTYDo4bf=?eG=gv)TZd&yY_V?$e-1nWGiuFChC6U-`
zAF)H#paGjkhetzGcz1U<+uPf#kDKf1GdLW{V<0<0HeTEEm;z)Rk`cSMu{z6pTTtJghs*>+nRYA#`9`OI-~$p#1?1&X9>CFhBQREzP@e*rfx>^ysWn_Qy$XogYP!ZI+6VkvcCA$a
z#y?+P7Fxn2ayf%f-4MMBaF)r~eF1;)s~?P-_zZ6K_VMxYLLFe$V+<)`8L^2=!$&Vv
z7Z(?;%3v~?bP~{|ewVtEzWfvlg+ifFC=?2X{~YUO<|^)8FFEuRRh|O|p(mBi&ZjlIdH6GXd$k~stu39!a
zE8ABmu#r}lnv70P>hA%-$!O$`?K0ADYxKKyPCM@BCNyIpwoZ2Hc(jdWutPMLfX>^?
zMz@j)pZR$NXM+(e_xf7|CSBxfEt%ku8VE53bLr!;n&B7;XGQYdUNOgTY++GN!&p
z#z1Un&~d2=+Sv}aOWM`n2i)G?R_p8QGx<$kDu-^3{IaIL#v1j|OaRt%0&MlS18(3@
zKNwkM%S5NwLS?;kc6Jv1LhLKC;^G(@Lv<|N%OIR@Y;3e{c-Ss`+FQtnBUuKGy$%Sc
zx1L^KJ?%rpw7D*c(EoYfHLXUjO5;hWu`CaDMDvvxzs9ouW_s5CRUr0Eplugk1^(vS
fA20uc#+Bk10P^udA=g`(00000NkvXXu0mjf*Ean;
literal 0
HcmV?d00001
diff --git a/Resources/Textures/Mobs/Customization/Harpy/harpy_wings.rsi/bat_wings_tone_2.png b/Resources/Textures/Mobs/Customization/Harpy/harpy_wings.rsi/bat_wings_tone_2.png
new file mode 100644
index 0000000000000000000000000000000000000000..b2170ff803c694b4080f0a18e8ec78b2ff383adb
GIT binary patch
literal 1753
zcmV;~1}6E5P)K@`MNB50!)F@jN>4us0f~|O4xJ%2X
zR)vp*qmDEve693!nO_uV%KV|&NyI0?uWE)fHJq+tE$f)VgTfIrSJW!~sG9_JYhhk;
zk3=snai)n8CQXqwaugVnY{|^(`-cB~bL7RN$={}gBaRGN@kT{0N>yF5A-XPKj*^=D
z|9QH`=t#MGFa|Bpp7-7lfnE67@x1S2&-*!nrYE?xs{XvpY5Y_4ovIc&gwQ6OUsbjA
z9$aie_oJP1Qh!pDgx@gW?F>4S(0L1O%jH>B_Bnlk#D+Z44eTGlfSeDl`~o4lXc-r;
zD+mAp010qNS#tmY3labT3lag+-G2N400j|AL_t(|UhSGqN+d}X$0NlPxDb({4=}W%
zYZo#!y6_4^(cVEkh14A!%DIHn%t~BZlrqa^Xa*4%E?o&Z@eAW0^C~|o(<)~Wj2|Rc
zW_-Mlc=0mLm(FD}nM@{=$z(E_OeT}bd@zbxjg!fwyuZJ9H#axMWIUc~`)xEzzrPL!
zQ*E1DTW(`xqg-2CbDNu+Gi8Y3aOkXzqvPWsdw+kw*Z6sLSZ=zA;S99KGhzH&`oFaa
zbzS{Dg`cB*cz6hgbUEVa=qUWH%APgGVizRva$YdsEFBshAO#qJXMY_G%HKz$qRn`S
z#)o$G_m_*ky}e*iUnKkD;vzWy{QSHoyJoEWHv+T(NoQ|^oZ7@v^#a}+v(nL92v(a9
zsqnX|fX>yfaVUZz%*VX01Id>07$e$b3!_7lqw(0%ro)s2@Dv@j@9@4~K|--QZYK0+
z9IFt|g96OoHb$})_KYQZUMpKf9ZGEA9GjYSNDffKv&JhNwYU2aL$F{R<5`hOG%U;&
z74Y+i1FFeZ$?LVUMO6pu1git29AFc~>FH^?;qWz#K9*&iBYJ0rW-9U=BBjSc~HVE(EO
zwIry}({?D!6fM0JaIqib6!r?mF05?E8rgHfc!hnN4pT;HZ`fSGHD%?l5Cm>V3d7;a
zN%8aN&u)8rJKcubo(HV#>+9>{Prv#+3=#UQY9HAm>JSpRX5b|V3T!1jjOAx(kGRg4
z?-JY4OIFP(8MN`cZ}qs1#^R_&3Wz~0cd3jegX0_Ag_P+7^7O{ppBB7J#1UIj$I(ks
zHqd7QIvs%VGMcxx7|v_!<>h7f{QT^AeN7)*-Qkrq#mv6Nj4o90RGAD}iV9x4;}ow`
zc>Qjx(IXM2{YFw3RDeSP-1Rbz5PY
zwM|+hz}D2Y>S2H}p2)DZ{FC7@6*=4Hofqchg9~IHztjrCR`7o7!
z3NoEl8qlN)ce^F5@mymM_St){MY%|_ae^vPDdeMUwgo5}W>ux8F4zwUR##U;8%YMN
zk)R}~1jx0w4*e>2D*%a5+fYdm6sT5
zT#<=vbkGMF(oYLztJ$)PcKdxmr@|^(gA!rW%In&HwfaI^K_5|ojRelEzFp4=t&R2$
z0CCmB7@P3^Pvb?^2^=Qu!!1}&=(-cMIzXS6K{V1mK0X$I|M+1O-dxq&w}b-dAQn_{
z!cU(*xs{cb-~=rmf9L;kQsh0m_%I_
literal 0
HcmV?d00001
diff --git a/Resources/Textures/Mobs/Customization/Harpy/harpy_wings.rsi/bionic_wings_tone_1.png b/Resources/Textures/Mobs/Customization/Harpy/harpy_wings.rsi/bionic_wings_tone_1.png
new file mode 100644
index 0000000000000000000000000000000000000000..752d6cc9a2062ae380ac67d49149f5c25e783f9a
GIT binary patch
literal 1448
zcmV;Z1y}lsP)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGizyJUazyWI3i3tDz1wBbbK~#8N?V7tw
zEHMMo5^HnW%PP4`N1%gOmfb5&Lo-L%?2Ki$K&yMJRXn7vMSQ{t5N4f
zE-x>`YDJ(u`l({ow6wH{Px>|eFD@?T)TI@@9}d`)8y2jFT3cJuQLeA9uH^jq_$cS8
zsi{QgkuY&oUtcff$c~(chlgRuDVjj+`1rUgeFFb3-vk=yUuR`yB`6k)vHr0Ukk9AC
zLZKkn2p*0ZJPgAD10}4ZWA;rqYq=Hxi#>U3ve0+Qy
zJUu;0&^*$hw?}{20km6*wY4=&JGrhla1-{2J=nDoO8^BRfS#V7AeT!ua$}$$`ooS(
zfXU|Orc50i=&KWrDCa0L@1s9$!LE&10w^Gwi^2Q*yPQ!5m7WOi+xjO7FyXWzdJ;G?
zlF;v4lBcf9DN6uWOj|><&RmSla*_?M&Mu+_Glyw&a&l5iJki$%8|HoVhaK31T~%F1
zSpv|A0?y9Pq^_psqY0mG(n`#Fwqrlop@1Y2I#^66Cns~=-QB9@lPDl(f7^Z7fjx8K
zCb20%0TUAwV(j|*TIxZi*N}dn{b0u>KnHDhcXu(A!{}*>Ehf|)(n+u#`@s(E!LCh1
zSpswc7Z(>{dwY8>3_to*D**k_A9h>4N0+H&n2u7y5{7isNz*mDOW)g@lKnEJK@=Z()rth-C
z-w;6f08UR&GxJTTp{uJ)%2o{!fCEDY9aMEDz#i<4V$b+suT1r~Rr7JUl#vhlhvq
zn;n0DpPQQto0^*BzDX7$ZNZbfySrd|dRpw`CwTns*VoqM0{i>>5&XN*DN32QX-^Yh`t!a~UHDb91-T*MoJWIgO{=stAcgc_+C
zF(4MiBozi$!TQ{f783kNK*|_e`n-L)22M*tdf;R6WV
z6+Au@{513l4fu2UlY7e^wh(Vkr7Dykt}aCDLxjfaDL88&YAzWG1RS`qCR0d
Uhf+r841JJ!p00i_>zopr052DVy#N3J
literal 0
HcmV?d00001
diff --git a/Resources/Textures/Mobs/Customization/Harpy/harpy_wings.rsi/meta.json b/Resources/Textures/Mobs/Customization/Harpy/harpy_wings.rsi/meta.json
index 7737af0afc2..c8bf28767a8 100644
--- a/Resources/Textures/Mobs/Customization/Harpy/harpy_wings.rsi/meta.json
+++ b/Resources/Textures/Mobs/Customization/Harpy/harpy_wings.rsi/meta.json
@@ -5,7 +5,7 @@
"y": 32
},
"license": "CC-BY-SA-3.0",
- "copyright": "classicharpy Taken from S.P.L.U.R.T at commit https://github.com/SPLURT-Station/S.P.L.U.R.T-Station-13/commit/285f6f86ac41a6246f250993486effeab8581c2c, edited by @raistlin_jag | harpyfolded, harpy, and owl by @stillxicarus",
+ "copyright": "classicharpy Taken from S.P.L.U.R.T at commit https://github.com/SPLURT-Station/S.P.L.U.R.T-Station-13/commit/285f6f86ac41a6246f250993486effeab8581c2c, edited by @raistlin_jag | harpyfolded, harpy, and owl by @stillxicarus, bat wings by @Kilath",
"states": [
{
"name": "huescale_harpy",
@@ -78,6 +78,22 @@
{
"name": "whitescale_harpy_wing_owl",
"directions": 4
+ },
+ {
+ "name": "bat_wings_tone_1",
+ "directions": 4
+ },
+ {
+ "name": "bat_wings_tone_2",
+ "directions": 4
+ },
+ {
+ "name": "bionic_wings_tone_1",
+ "directions": 4
+ },
+ {
+ "name": "bionic_wings_tone_2",
+ "directions": 4
}
]
}
From 07325fcdf80e9545da7d38a718c225e5b792136d Mon Sep 17 00:00:00 2001
From: SimpleStation Changelogs
Date: Wed, 7 Aug 2024 23:12:04 +0000
Subject: [PATCH 15/57] Automatic Changelog Update (#696)
---
Resources/Changelog/Changelog.yml | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/Resources/Changelog/Changelog.yml b/Resources/Changelog/Changelog.yml
index fb3fd2c343c..3334fd4e136 100644
--- a/Resources/Changelog/Changelog.yml
+++ b/Resources/Changelog/Changelog.yml
@@ -5059,3 +5059,11 @@ Entries:
message: Mr. Butlertron can now suffer for its crimes.
id: 6233
time: '2024-08-07T22:38:04.0000000+00:00'
+- author: VMSolidus
+ changes:
+ - type: Add
+ message: >-
+ The following new markings have been added for Harpies: Bat Wings,
+ Simple Bionic Wings, Haven Tail, Swallow tail, and Long Forked Tail
+ id: 6234
+ time: '2024-08-07T23:11:41.0000000+00:00'
From 020e90ab1d9c7adf4c293053881b15a4bc8b4aae Mon Sep 17 00:00:00 2001
From: Danger Revolution! <142105406+DangerRevolution@users.noreply.github.com>
Date: Thu, 8 Aug 2024 00:16:30 +0100
Subject: [PATCH 16/57] Add Le Psionic Orb From Nyanotrasen (#685)
# Description
It says Psionic chat out loud
Media
![image](https://github.com/user-attachments/assets/a60c4110-ce1b-40ca-8177-df2d0b45b6da)
---
# Changelog
:cl:
- add: Readded Psionic Relay Orb
---
.../Entities/Objects/Specific/Research/misc.yml | 9 +++++++++
1 file changed, 9 insertions(+)
create mode 100644 Resources/Prototypes/Entities/Objects/Specific/Research/misc.yml
diff --git a/Resources/Prototypes/Entities/Objects/Specific/Research/misc.yml b/Resources/Prototypes/Entities/Objects/Specific/Research/misc.yml
new file mode 100644
index 00000000000..79c475900aa
--- /dev/null
+++ b/Resources/Prototypes/Entities/Objects/Specific/Research/misc.yml
@@ -0,0 +1,9 @@
+- type: entity
+ parent: PonderingOrb
+ id: PonderingOrbTelepathic
+ name: telepathic relay orb
+ description: Relays messages intercepted from Psionics.
+ components:
+ - type: TelepathicRepeater
+ - type: Psionic
+ - type: Speech
\ No newline at end of file
From 9e83f669c836e8934ad21585c2c1dcaed6ebec93 Mon Sep 17 00:00:00 2001
From: SimpleStation Changelogs
Date: Wed, 7 Aug 2024 23:16:55 +0000
Subject: [PATCH 17/57] Automatic Changelog Update (#685)
---
Resources/Changelog/Changelog.yml | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/Resources/Changelog/Changelog.yml b/Resources/Changelog/Changelog.yml
index 3334fd4e136..b7ab981fc63 100644
--- a/Resources/Changelog/Changelog.yml
+++ b/Resources/Changelog/Changelog.yml
@@ -5067,3 +5067,9 @@ Entries:
Simple Bionic Wings, Haven Tail, Swallow tail, and Long Forked Tail
id: 6234
time: '2024-08-07T23:11:41.0000000+00:00'
+- author: DangerRevolution
+ changes:
+ - type: Add
+ message: Readded Psionic Relay Orb
+ id: 6235
+ time: '2024-08-07T23:16:30.0000000+00:00'
From dfe5c2c54045c026621f009b676f7f3ef97692dc Mon Sep 17 00:00:00 2001
From: VMSolidus
Date: Wed, 7 Aug 2024 19:18:35 -0400
Subject: [PATCH 18/57] Psionic Refactor Part 1: Respacing To Keep Files
Changed Down (#698)
# Description
Due to some inherent limitations of maintenance, code review, and me
having both severely crippling ADHD and a lifelong adderal dependency,
I've made the executive decision to break apart the Psionic Refactor
into a multitude of smaller, bite sized PRs. I'm keeping the original
Psionic Refactor PR open, because I'm going to need it for code
reference to keep track of the changes I had originally worked on, but I
need to essentially restart the entire refactor from scratch, and
approach it from a new angle that's going to make everything actually
way easier. I also need to be able to work on each available system
individually wherever possible, and this fact is most readily shown by
how the Lightning Refactor and Oracle Refactor were both done
separately.
To start off, this PR is ONLY moving all of the relevant psionics code
to core folders, and nothing more. I'm doing this first so that I can
immediately cut down massively on the "Files Changed" with the simplest,
most basic change necessary to start my work.
No changelog because this isn't player facing, and no media because
there's literally nothing to show.
---
.../CartridgeLoader/Cartridges/GlimmerMonitorUi.cs | 5 ++---
.../Cartridges/GlimmerMonitorUiFragment.xaml | 2 +-
.../Cartridges/GlimmerMonitorUiFragment.xaml.cs | 4 ++--
.../{Nyanotrasen => }/Chat/PsionicChatUpdateSystem.cs | 2 +-
.../Psionics/Glimmer/GlimmerReactiveVisuals.cs | 0
.../{Nyanotrasen => }/Psionics/UI/AcceptPsionicsEUI.cs | 0
.../{Nyanotrasen => }/Psionics/UI/AcceptPsionicsWindow.cs | 0
.../{Nyanotrasen => }/UserInterface/GlimmerGraph.cs | 2 +-
.../UserInterface/Systems/Chat/ChatUIController.cs | 1 -
.../Abilities/Psionics/Abilities/DispelPowerSystem.cs | 0
.../Psionics/Abilities/MetapsionicPowerSystem.cs | 0
.../Abilities/Psionics/Abilities/MindSwapPowerSystem.cs | 0
.../Abilities/Psionics/Abilities/MindSwappedComponent.cs | 0
.../Psionics/Abilities/NoosphericZapPowerSystem.cs | 0
.../Psionics/Abilities/PsionicInvisibilityPowerSystem.cs | 0
.../Psionics/Abilities/PsionicRegenerationPowerSystem.cs | 0
.../Psionics/Abilities/PyrokinesisPowerSystem.cs | 0
.../Abilities/Psionics/Abilities/TelegnosisPowerSystem.cs | 0
.../Abilities/Psionics/PsionicAbilitiesSystem.cs | 0
.../{Nyanotrasen => }/Audio/GlimmerSoundComponent.cs | 0
.../Cartridges}/GlimmerMonitorCartridgeComponent.cs | 0
.../Cartridges}/GlimmerMonitorCartridgeSystem.cs | 0
.../{Nyanotrasen/Chat => Chat/Commands}/TSayCommand.cs | 0
Content.Server/Chat/Systems/ChatSystem.cs | 8 +++-----
.../NyanoChatSystem.cs => Chat/TelepathicChatSystem.cs} | 6 +++---
.../{Nyanotrasen => }/Chat/TelepathicRepeaterComponent.cs | 2 +-
.../{Nyanotrasen => }/Psionics/AcceptPsionicsEui.cs | 0
.../Psionics/AntiPsychicWeaponComponent.cs | 0
.../{Nyanotrasen => }/Psionics/Dreams/DreamSystem.cs | 0
.../{Nyanotrasen => }/Psionics/Glimmer/GlimmerCommands.cs | 0
.../Psionics/Glimmer/GlimmerReactiveSystem.cs | 0
.../Psionics/Glimmer/PassiveGlimmerReductionSystem.cs | 0
.../Psionics/Glimmer/Structures/GlimmerSourceComponent.cs | 0
.../Glimmer/Structures/GlimmerStructuresSystem.cs | 0
.../Psionics/Invisibility/PsionicInvisibilitySystem.cs | 0
.../Invisibility/PsionicInvisibleContactsComponent.cs | 0
.../Invisibility/PsionicInvisibleContactsSystem.cs | 0
.../Invisibility/PsionicallyInvisibleComponent.cs | 0
.../Psionics/PotentialPsionicComponent.cs | 0
.../Psionics/PsionicAwaitingPlayerComponent.cs | 0
.../Psionics/PsionicBonusChanceComponent.cs | 0
.../{Nyanotrasen => }/Psionics/PsionicsCommands.cs | 0
.../{Nyanotrasen => }/Psionics/PsionicsSystem.cs | 0
.../StationEvents/Components/FreeProberRuleComponent.cs | 0
.../StationEvents/Components/GlimmerEventComponent.cs | 0
.../Components/GlimmerRandomSentienceRuleComponent.cs | 0
.../Components/GlimmerRevenantSpawnRuleComponent.cs | 0
.../StationEvents/Components/GlimmerWispRuleComponent.cs | 0
.../StationEvents/Components/MassMindSwapRuleComponent.cs | 0
.../Components/MundaneDischargeRuleComponent.cs | 0
.../Components/NoosphericFryRuleComponent.cs | 0
.../Components/NoosphericStormRuleComponent.cs | 0
.../Components/NoosphericZapRuleComponent.cs | 0
.../Components/PsionicCatGotYourTongueRuleComponent.cs | 0
.../StationEvents/Events/FreeProberRule.cs | 0
.../StationEvents/Events/GlimmerEventSystem.cs | 0
.../StationEvents/Events/GlimmerRandomSentienceRule.cs | 0
.../StationEvents/Events/GlimmerRevenantSpawnRule.cs | 0
.../StationEvents/Events/GlimmerWispSpawnRule.cs | 0
.../StationEvents/Events/MassMindSwapRule.cs | 0
.../StationEvents/Events/MundaneDischargeRule.cs | 0
.../StationEvents/Events/NoosphericFryRule.cs | 0
.../StationEvents/Events/NoosphericStormRule.cs | 0
.../StationEvents/Events/NoosphericZapRule.cs | 0
.../StationEvents/Events/PsionicCatGotYourTongueRule.cs | 0
.../Actions/Events/DispelPowerActionEvent.cs | 0
.../Actions/Events/EatMouseActionEvent.cs | 0
.../Actions/Events/HairballActionEvent.cs | 0
.../Actions/Events/MassSleepPowerActionEvent.cs | 0
.../Actions/Events/MetapsionicPowerActionEvent.cs | 0
.../Actions/Events/MindSwapPowerActionEvent.cs | 0
.../Actions/Events/NoosphericZapPowerActionEvent.cs | 0
.../Actions/Events/PsionicInvisibilityPowerActionEvent.cs | 0
.../Actions/Events/PsionicRegenerationPowerActionEvent.cs | 0
.../Actions/Events/PyrokinesisPowerActionEvent.cs | 0
.../RemovePsionicInvisibilityOffPowerActionEvent.cs | 0
.../Actions/Events/TelegnosisPowerActionEvent.cs | 0
.../CartridgeLoader/Cartridges/GlimmerMonitorUiState.cs | 0
.../{Nyanotrasen => }/Chapel/SacrificeDoAfterEvent.cs | 0
.../Psionics/Abilities/AcceptPsionicsEuiMessage.cs | 0
.../Psionics/Abilities/Dispel/DamageOnDispelComponent.cs | 0
.../Psionics/Abilities/Dispel/DispelPowerComponent.cs | 0
.../Psionics/Abilities/Dispel/DispellableComponent.cs | 0
.../Abilities/MassSleep/MassSleepPowerComponent.cs | 0
.../Psionics/Abilities/MassSleep/MassSleepPowerSystem.cs | 0
.../Abilities/Metapsionics/MetapsionicPowerComponent.cs | 0
.../Psionics/Abilities/MindSwap/MindSwapPowerComponent.cs | 0
.../NoosphericZap/NoosphericZapPowerComponent.cs | 0
.../PsionicInvisibilityPowerComponent.cs | 0
.../PsionicInvisibilityUsedComponent.cs | 0
.../PsionicRegenerationPowerComponent.cs | 0
.../Abilities/Pyrokinesis/PyrokinesisPowerComponent.cs | 0
.../Abilities/Telegnosis/TelegnosisPowerComponent.cs | 0
.../Telegnosis/TelegnosticProjectionComponent.cs | 0
Content.Shared/{Nyanotrasen => }/Psionics/Events.cs | 0
.../{Nyanotrasen => }/Psionics/Glimmer/GlimmerSystem.cs | 0
.../Psionics/Glimmer/SharedGlimmerReactiveComponent.cs | 0
.../Psionics/Glimmer/SharedGlimmerReactiveVisuals.cs | 0
.../Psionics/Items/ClothingGrantPsionicPowerComponent.cs | 0
.../Abilities => }/Psionics/Items/HeadCageComponent.cs | 0
.../Abilities => }/Psionics/Items/HeadCagedComponent.cs | 0
.../Abilities => }/Psionics/Items/PsionicItemsSystem.cs | 0
.../Abilities => }/Psionics/Items/TinfoilHatComponent.cs | 0
.../Abilities => }/Psionics/PsionicComponent.cs | 0
.../Abilities => }/Psionics/PsionicInsulationComponent.cs | 0
.../Abilities => }/Psionics/PsionicsDisabledComponent.cs | 0
.../Psionics/SharedPsionicAbilitiesSystem.cs | 0
Content.Shared/{Nyanotrasen => }/Soul/GolemMessages.cs | 0
.../{Nyanotrasen => }/Soul/GunHeldByGolemComponent.cs | 0
.../{Nyanotrasen => }/Soul/SharedGolemComponent.cs | 0
.../{Nyanotrasen => }/Soul/SharedGolemSystem.cs | 0
111 files changed, 14 insertions(+), 18 deletions(-)
rename Content.Client/{Nyanotrasen => }/CartridgeLoader/Cartridges/GlimmerMonitorUi.cs (88%)
rename Content.Client/{Nyanotrasen => }/CartridgeLoader/Cartridges/GlimmerMonitorUiFragment.xaml (93%)
rename Content.Client/{Nyanotrasen => }/CartridgeLoader/Cartridges/GlimmerMonitorUiFragment.xaml.cs (96%)
rename Content.Client/{Nyanotrasen => }/Chat/PsionicChatUpdateSystem.cs (96%)
rename Content.Client/{Nyanotrasen => }/Psionics/Glimmer/GlimmerReactiveVisuals.cs (100%)
rename Content.Client/{Nyanotrasen => }/Psionics/UI/AcceptPsionicsEUI.cs (100%)
rename Content.Client/{Nyanotrasen => }/Psionics/UI/AcceptPsionicsWindow.cs (100%)
rename Content.Client/{Nyanotrasen => }/UserInterface/GlimmerGraph.cs (97%)
rename Content.Server/{Nyanotrasen => }/Abilities/Psionics/Abilities/DispelPowerSystem.cs (100%)
rename Content.Server/{Nyanotrasen => }/Abilities/Psionics/Abilities/MetapsionicPowerSystem.cs (100%)
rename Content.Server/{Nyanotrasen => }/Abilities/Psionics/Abilities/MindSwapPowerSystem.cs (100%)
rename Content.Server/{Nyanotrasen => }/Abilities/Psionics/Abilities/MindSwappedComponent.cs (100%)
rename Content.Server/{Nyanotrasen => }/Abilities/Psionics/Abilities/NoosphericZapPowerSystem.cs (100%)
rename Content.Server/{Nyanotrasen => }/Abilities/Psionics/Abilities/PsionicInvisibilityPowerSystem.cs (100%)
rename Content.Server/{Nyanotrasen => }/Abilities/Psionics/Abilities/PsionicRegenerationPowerSystem.cs (100%)
rename Content.Server/{Nyanotrasen => }/Abilities/Psionics/Abilities/PyrokinesisPowerSystem.cs (100%)
rename Content.Server/{Nyanotrasen => }/Abilities/Psionics/Abilities/TelegnosisPowerSystem.cs (100%)
rename Content.Server/{Nyanotrasen => }/Abilities/Psionics/PsionicAbilitiesSystem.cs (100%)
rename Content.Server/{Nyanotrasen => }/Audio/GlimmerSoundComponent.cs (100%)
rename Content.Server/{Nyanotrasen/CartridgeLoader => CartridgeLoader/Cartridges}/GlimmerMonitorCartridgeComponent.cs (100%)
rename Content.Server/{Nyanotrasen/CartridgeLoader => CartridgeLoader/Cartridges}/GlimmerMonitorCartridgeSystem.cs (100%)
rename Content.Server/{Nyanotrasen/Chat => Chat/Commands}/TSayCommand.cs (100%)
rename Content.Server/{Nyanotrasen/Chat/NyanoChatSystem.cs => Chat/TelepathicChatSystem.cs} (97%)
rename Content.Server/{Nyanotrasen => }/Chat/TelepathicRepeaterComponent.cs (83%)
rename Content.Server/{Nyanotrasen => }/Psionics/AcceptPsionicsEui.cs (100%)
rename Content.Server/{Nyanotrasen => }/Psionics/AntiPsychicWeaponComponent.cs (100%)
rename Content.Server/{Nyanotrasen => }/Psionics/Dreams/DreamSystem.cs (100%)
rename Content.Server/{Nyanotrasen => }/Psionics/Glimmer/GlimmerCommands.cs (100%)
rename Content.Server/{Nyanotrasen => }/Psionics/Glimmer/GlimmerReactiveSystem.cs (100%)
rename Content.Server/{Nyanotrasen => }/Psionics/Glimmer/PassiveGlimmerReductionSystem.cs (100%)
rename Content.Server/{Nyanotrasen => }/Psionics/Glimmer/Structures/GlimmerSourceComponent.cs (100%)
rename Content.Server/{Nyanotrasen => }/Psionics/Glimmer/Structures/GlimmerStructuresSystem.cs (100%)
rename Content.Server/{Nyanotrasen => }/Psionics/Invisibility/PsionicInvisibilitySystem.cs (100%)
rename Content.Server/{Nyanotrasen => }/Psionics/Invisibility/PsionicInvisibleContactsComponent.cs (100%)
rename Content.Server/{Nyanotrasen => }/Psionics/Invisibility/PsionicInvisibleContactsSystem.cs (100%)
rename Content.Server/{Nyanotrasen => }/Psionics/Invisibility/PsionicallyInvisibleComponent.cs (100%)
rename Content.Server/{Nyanotrasen => }/Psionics/PotentialPsionicComponent.cs (100%)
rename Content.Server/{Nyanotrasen => }/Psionics/PsionicAwaitingPlayerComponent.cs (100%)
rename Content.Server/{Nyanotrasen => }/Psionics/PsionicBonusChanceComponent.cs (100%)
rename Content.Server/{Nyanotrasen => }/Psionics/PsionicsCommands.cs (100%)
rename Content.Server/{Nyanotrasen => }/Psionics/PsionicsSystem.cs (100%)
rename Content.Server/{Nyanotrasen => }/StationEvents/Components/FreeProberRuleComponent.cs (100%)
rename Content.Server/{Nyanotrasen => }/StationEvents/Components/GlimmerEventComponent.cs (100%)
rename Content.Server/{Nyanotrasen => }/StationEvents/Components/GlimmerRandomSentienceRuleComponent.cs (100%)
rename Content.Server/{Nyanotrasen => }/StationEvents/Components/GlimmerRevenantSpawnRuleComponent.cs (100%)
rename Content.Server/{Nyanotrasen => }/StationEvents/Components/GlimmerWispRuleComponent.cs (100%)
rename Content.Server/{Nyanotrasen => }/StationEvents/Components/MassMindSwapRuleComponent.cs (100%)
rename Content.Server/{Nyanotrasen => }/StationEvents/Components/MundaneDischargeRuleComponent.cs (100%)
rename Content.Server/{Nyanotrasen => }/StationEvents/Components/NoosphericFryRuleComponent.cs (100%)
rename Content.Server/{Nyanotrasen => }/StationEvents/Components/NoosphericStormRuleComponent.cs (100%)
rename Content.Server/{Nyanotrasen => }/StationEvents/Components/NoosphericZapRuleComponent.cs (100%)
rename Content.Server/{Nyanotrasen => }/StationEvents/Components/PsionicCatGotYourTongueRuleComponent.cs (100%)
rename Content.Server/{Nyanotrasen => }/StationEvents/Events/FreeProberRule.cs (100%)
rename Content.Server/{Nyanotrasen => }/StationEvents/Events/GlimmerEventSystem.cs (100%)
rename Content.Server/{Nyanotrasen => }/StationEvents/Events/GlimmerRandomSentienceRule.cs (100%)
rename Content.Server/{Nyanotrasen => }/StationEvents/Events/GlimmerRevenantSpawnRule.cs (100%)
rename Content.Server/{Nyanotrasen => }/StationEvents/Events/GlimmerWispSpawnRule.cs (100%)
rename Content.Server/{Nyanotrasen => }/StationEvents/Events/MassMindSwapRule.cs (100%)
rename Content.Server/{Nyanotrasen => }/StationEvents/Events/MundaneDischargeRule.cs (100%)
rename Content.Server/{Nyanotrasen => }/StationEvents/Events/NoosphericFryRule.cs (100%)
rename Content.Server/{Nyanotrasen => }/StationEvents/Events/NoosphericStormRule.cs (100%)
rename Content.Server/{Nyanotrasen => }/StationEvents/Events/NoosphericZapRule.cs (100%)
rename Content.Server/{Nyanotrasen => }/StationEvents/Events/PsionicCatGotYourTongueRule.cs (100%)
rename Content.Shared/{Nyanotrasen => }/Actions/Events/DispelPowerActionEvent.cs (100%)
rename Content.Shared/{Nyanotrasen => }/Actions/Events/EatMouseActionEvent.cs (100%)
rename Content.Shared/{Nyanotrasen => }/Actions/Events/HairballActionEvent.cs (100%)
rename Content.Shared/{Nyanotrasen => }/Actions/Events/MassSleepPowerActionEvent.cs (100%)
rename Content.Shared/{Nyanotrasen => }/Actions/Events/MetapsionicPowerActionEvent.cs (100%)
rename Content.Shared/{Nyanotrasen => }/Actions/Events/MindSwapPowerActionEvent.cs (100%)
rename Content.Shared/{Nyanotrasen => }/Actions/Events/NoosphericZapPowerActionEvent.cs (100%)
rename Content.Shared/{Nyanotrasen => }/Actions/Events/PsionicInvisibilityPowerActionEvent.cs (100%)
rename Content.Shared/{Nyanotrasen => }/Actions/Events/PsionicRegenerationPowerActionEvent.cs (100%)
rename Content.Shared/{Nyanotrasen => }/Actions/Events/PyrokinesisPowerActionEvent.cs (100%)
rename Content.Shared/{Nyanotrasen => }/Actions/Events/RemovePsionicInvisibilityOffPowerActionEvent.cs (100%)
rename Content.Shared/{Nyanotrasen => }/Actions/Events/TelegnosisPowerActionEvent.cs (100%)
rename Content.Shared/{Nyanotrasen => }/CartridgeLoader/Cartridges/GlimmerMonitorUiState.cs (100%)
rename Content.Shared/{Nyanotrasen => }/Chapel/SacrificeDoAfterEvent.cs (100%)
rename Content.Shared/{Nyanotrasen/Abilities => }/Psionics/Abilities/AcceptPsionicsEuiMessage.cs (100%)
rename Content.Shared/{Nyanotrasen/Abilities => }/Psionics/Abilities/Dispel/DamageOnDispelComponent.cs (100%)
rename Content.Shared/{Nyanotrasen/Abilities => }/Psionics/Abilities/Dispel/DispelPowerComponent.cs (100%)
rename Content.Shared/{Nyanotrasen/Abilities => }/Psionics/Abilities/Dispel/DispellableComponent.cs (100%)
rename Content.Shared/{Nyanotrasen/Abilities => }/Psionics/Abilities/MassSleep/MassSleepPowerComponent.cs (100%)
rename Content.Shared/{Nyanotrasen/Abilities => }/Psionics/Abilities/MassSleep/MassSleepPowerSystem.cs (100%)
rename Content.Shared/{Nyanotrasen/Abilities => }/Psionics/Abilities/Metapsionics/MetapsionicPowerComponent.cs (100%)
rename Content.Shared/{Nyanotrasen/Abilities => }/Psionics/Abilities/MindSwap/MindSwapPowerComponent.cs (100%)
rename Content.Shared/{Nyanotrasen/Abilities => }/Psionics/Abilities/NoosphericZap/NoosphericZapPowerComponent.cs (100%)
rename Content.Shared/{Nyanotrasen/Abilities => }/Psionics/Abilities/PsionicInvisibility/PsionicInvisibilityPowerComponent.cs (100%)
rename Content.Shared/{Nyanotrasen/Abilities => }/Psionics/Abilities/PsionicInvisibility/PsionicInvisibilityUsedComponent.cs (100%)
rename Content.Shared/{Nyanotrasen/Abilities => }/Psionics/Abilities/PsionicRegeneration/PsionicRegenerationPowerComponent.cs (100%)
rename Content.Shared/{Nyanotrasen/Abilities => }/Psionics/Abilities/Pyrokinesis/PyrokinesisPowerComponent.cs (100%)
rename Content.Shared/{Nyanotrasen/Abilities => }/Psionics/Abilities/Telegnosis/TelegnosisPowerComponent.cs (100%)
rename Content.Shared/{Nyanotrasen/Abilities => }/Psionics/Abilities/Telegnosis/TelegnosticProjectionComponent.cs (100%)
rename Content.Shared/{Nyanotrasen => }/Psionics/Events.cs (100%)
rename Content.Shared/{Nyanotrasen => }/Psionics/Glimmer/GlimmerSystem.cs (100%)
rename Content.Shared/{Nyanotrasen => }/Psionics/Glimmer/SharedGlimmerReactiveComponent.cs (100%)
rename Content.Shared/{Nyanotrasen => }/Psionics/Glimmer/SharedGlimmerReactiveVisuals.cs (100%)
rename Content.Shared/{Nyanotrasen/Abilities => }/Psionics/Items/ClothingGrantPsionicPowerComponent.cs (100%)
rename Content.Shared/{Nyanotrasen/Abilities => }/Psionics/Items/HeadCageComponent.cs (100%)
rename Content.Shared/{Nyanotrasen/Abilities => }/Psionics/Items/HeadCagedComponent.cs (100%)
rename Content.Shared/{Nyanotrasen/Abilities => }/Psionics/Items/PsionicItemsSystem.cs (100%)
rename Content.Shared/{Nyanotrasen/Abilities => }/Psionics/Items/TinfoilHatComponent.cs (100%)
rename Content.Shared/{Nyanotrasen/Abilities => }/Psionics/PsionicComponent.cs (100%)
rename Content.Shared/{Nyanotrasen/Abilities => }/Psionics/PsionicInsulationComponent.cs (100%)
rename Content.Shared/{Nyanotrasen/Abilities => }/Psionics/PsionicsDisabledComponent.cs (100%)
rename Content.Shared/{Nyanotrasen/Abilities => }/Psionics/SharedPsionicAbilitiesSystem.cs (100%)
rename Content.Shared/{Nyanotrasen => }/Soul/GolemMessages.cs (100%)
rename Content.Shared/{Nyanotrasen => }/Soul/GunHeldByGolemComponent.cs (100%)
rename Content.Shared/{Nyanotrasen => }/Soul/SharedGolemComponent.cs (100%)
rename Content.Shared/{Nyanotrasen => }/Soul/SharedGolemSystem.cs (100%)
diff --git a/Content.Client/Nyanotrasen/CartridgeLoader/Cartridges/GlimmerMonitorUi.cs b/Content.Client/CartridgeLoader/Cartridges/GlimmerMonitorUi.cs
similarity index 88%
rename from Content.Client/Nyanotrasen/CartridgeLoader/Cartridges/GlimmerMonitorUi.cs
rename to Content.Client/CartridgeLoader/Cartridges/GlimmerMonitorUi.cs
index 0b5fc7ad38c..9ef968e43b1 100644
--- a/Content.Client/Nyanotrasen/CartridgeLoader/Cartridges/GlimmerMonitorUi.cs
+++ b/Content.Client/CartridgeLoader/Cartridges/GlimmerMonitorUi.cs
@@ -1,10 +1,9 @@
-using Robust.Client.GameObjects;
-using Robust.Client.UserInterface;
+using Robust.Client.UserInterface;
using Content.Client.UserInterface.Fragments;
using Content.Shared.CartridgeLoader.Cartridges;
using Content.Shared.CartridgeLoader;
-namespace Content.Client.Nyanotrasen.CartridgeLoader.Cartridges;
+namespace Content.Client.CartridgeLoader.Cartridges;
public sealed partial class GlimmerMonitorUi : UIFragment
{
diff --git a/Content.Client/Nyanotrasen/CartridgeLoader/Cartridges/GlimmerMonitorUiFragment.xaml b/Content.Client/CartridgeLoader/Cartridges/GlimmerMonitorUiFragment.xaml
similarity index 93%
rename from Content.Client/Nyanotrasen/CartridgeLoader/Cartridges/GlimmerMonitorUiFragment.xaml
rename to Content.Client/CartridgeLoader/Cartridges/GlimmerMonitorUiFragment.xaml
index 119a1831e6e..e09a422ddf7 100644
--- a/Content.Client/Nyanotrasen/CartridgeLoader/Cartridges/GlimmerMonitorUiFragment.xaml
+++ b/Content.Client/CartridgeLoader/Cartridges/GlimmerMonitorUiFragment.xaml
@@ -1,4 +1,4 @@
-
diff --git a/Content.Client/Nyanotrasen/CartridgeLoader/Cartridges/GlimmerMonitorUiFragment.xaml.cs b/Content.Client/CartridgeLoader/Cartridges/GlimmerMonitorUiFragment.xaml.cs
similarity index 96%
rename from Content.Client/Nyanotrasen/CartridgeLoader/Cartridges/GlimmerMonitorUiFragment.xaml.cs
rename to Content.Client/CartridgeLoader/Cartridges/GlimmerMonitorUiFragment.xaml.cs
index 43d9202aa45..3325c0d379e 100644
--- a/Content.Client/Nyanotrasen/CartridgeLoader/Cartridges/GlimmerMonitorUiFragment.xaml.cs
+++ b/Content.Client/CartridgeLoader/Cartridges/GlimmerMonitorUiFragment.xaml.cs
@@ -1,12 +1,12 @@
using System.Linq;
using System.Numerics;
-using Content.Client.Nyanotrasen.UserInterface;
+using Content.Client.UserInterface;
using Robust.Client.AutoGenerated;
using Robust.Client.ResourceManagement;
using Robust.Client.UserInterface.Controls;
using Robust.Client.UserInterface.XAML;
-namespace Content.Client.Nyanotrasen.CartridgeLoader.Cartridges;
+namespace Content.Client.CartridgeLoader.Cartridges;
[GenerateTypedNameReferences]
public sealed partial class GlimmerMonitorUiFragment : BoxContainer
diff --git a/Content.Client/Nyanotrasen/Chat/PsionicChatUpdateSystem.cs b/Content.Client/Chat/PsionicChatUpdateSystem.cs
similarity index 96%
rename from Content.Client/Nyanotrasen/Chat/PsionicChatUpdateSystem.cs
rename to Content.Client/Chat/PsionicChatUpdateSystem.cs
index 84602052fe7..066501acb78 100644
--- a/Content.Client/Nyanotrasen/Chat/PsionicChatUpdateSystem.cs
+++ b/Content.Client/Chat/PsionicChatUpdateSystem.cs
@@ -2,7 +2,7 @@
using Content.Client.Chat.Managers;
using Robust.Client.Player;
-namespace Content.Client.Nyanotrasen.Chat
+namespace Content.Client.Chat
{
public sealed class PsionicChatUpdateSystem : EntitySystem
{
diff --git a/Content.Client/Nyanotrasen/Psionics/Glimmer/GlimmerReactiveVisuals.cs b/Content.Client/Psionics/Glimmer/GlimmerReactiveVisuals.cs
similarity index 100%
rename from Content.Client/Nyanotrasen/Psionics/Glimmer/GlimmerReactiveVisuals.cs
rename to Content.Client/Psionics/Glimmer/GlimmerReactiveVisuals.cs
diff --git a/Content.Client/Nyanotrasen/Psionics/UI/AcceptPsionicsEUI.cs b/Content.Client/Psionics/UI/AcceptPsionicsEUI.cs
similarity index 100%
rename from Content.Client/Nyanotrasen/Psionics/UI/AcceptPsionicsEUI.cs
rename to Content.Client/Psionics/UI/AcceptPsionicsEUI.cs
diff --git a/Content.Client/Nyanotrasen/Psionics/UI/AcceptPsionicsWindow.cs b/Content.Client/Psionics/UI/AcceptPsionicsWindow.cs
similarity index 100%
rename from Content.Client/Nyanotrasen/Psionics/UI/AcceptPsionicsWindow.cs
rename to Content.Client/Psionics/UI/AcceptPsionicsWindow.cs
diff --git a/Content.Client/Nyanotrasen/UserInterface/GlimmerGraph.cs b/Content.Client/UserInterface/GlimmerGraph.cs
similarity index 97%
rename from Content.Client/Nyanotrasen/UserInterface/GlimmerGraph.cs
rename to Content.Client/UserInterface/GlimmerGraph.cs
index c4a9109dcd8..188ebe2475b 100644
--- a/Content.Client/Nyanotrasen/UserInterface/GlimmerGraph.cs
+++ b/Content.Client/UserInterface/GlimmerGraph.cs
@@ -4,7 +4,7 @@
using Robust.Client.ResourceManagement;
using Robust.Client.UserInterface;
-namespace Content.Client.Nyanotrasen.UserInterface;
+namespace Content.Client.UserInterface;
public sealed class GlimmerGraph : Control
{
diff --git a/Content.Client/UserInterface/Systems/Chat/ChatUIController.cs b/Content.Client/UserInterface/Systems/Chat/ChatUIController.cs
index 138dc9e52be..bc79283d76e 100644
--- a/Content.Client/UserInterface/Systems/Chat/ChatUIController.cs
+++ b/Content.Client/UserInterface/Systems/Chat/ChatUIController.cs
@@ -38,7 +38,6 @@
using Robust.Shared.Replays;
using Robust.Shared.Timing;
using Robust.Shared.Utility;
-using Content.Client.Nyanotrasen.Chat; //Nyano - Summary: chat namespace.
namespace Content.Client.UserInterface.Systems.Chat;
diff --git a/Content.Server/Nyanotrasen/Abilities/Psionics/Abilities/DispelPowerSystem.cs b/Content.Server/Abilities/Psionics/Abilities/DispelPowerSystem.cs
similarity index 100%
rename from Content.Server/Nyanotrasen/Abilities/Psionics/Abilities/DispelPowerSystem.cs
rename to Content.Server/Abilities/Psionics/Abilities/DispelPowerSystem.cs
diff --git a/Content.Server/Nyanotrasen/Abilities/Psionics/Abilities/MetapsionicPowerSystem.cs b/Content.Server/Abilities/Psionics/Abilities/MetapsionicPowerSystem.cs
similarity index 100%
rename from Content.Server/Nyanotrasen/Abilities/Psionics/Abilities/MetapsionicPowerSystem.cs
rename to Content.Server/Abilities/Psionics/Abilities/MetapsionicPowerSystem.cs
diff --git a/Content.Server/Nyanotrasen/Abilities/Psionics/Abilities/MindSwapPowerSystem.cs b/Content.Server/Abilities/Psionics/Abilities/MindSwapPowerSystem.cs
similarity index 100%
rename from Content.Server/Nyanotrasen/Abilities/Psionics/Abilities/MindSwapPowerSystem.cs
rename to Content.Server/Abilities/Psionics/Abilities/MindSwapPowerSystem.cs
diff --git a/Content.Server/Nyanotrasen/Abilities/Psionics/Abilities/MindSwappedComponent.cs b/Content.Server/Abilities/Psionics/Abilities/MindSwappedComponent.cs
similarity index 100%
rename from Content.Server/Nyanotrasen/Abilities/Psionics/Abilities/MindSwappedComponent.cs
rename to Content.Server/Abilities/Psionics/Abilities/MindSwappedComponent.cs
diff --git a/Content.Server/Nyanotrasen/Abilities/Psionics/Abilities/NoosphericZapPowerSystem.cs b/Content.Server/Abilities/Psionics/Abilities/NoosphericZapPowerSystem.cs
similarity index 100%
rename from Content.Server/Nyanotrasen/Abilities/Psionics/Abilities/NoosphericZapPowerSystem.cs
rename to Content.Server/Abilities/Psionics/Abilities/NoosphericZapPowerSystem.cs
diff --git a/Content.Server/Nyanotrasen/Abilities/Psionics/Abilities/PsionicInvisibilityPowerSystem.cs b/Content.Server/Abilities/Psionics/Abilities/PsionicInvisibilityPowerSystem.cs
similarity index 100%
rename from Content.Server/Nyanotrasen/Abilities/Psionics/Abilities/PsionicInvisibilityPowerSystem.cs
rename to Content.Server/Abilities/Psionics/Abilities/PsionicInvisibilityPowerSystem.cs
diff --git a/Content.Server/Nyanotrasen/Abilities/Psionics/Abilities/PsionicRegenerationPowerSystem.cs b/Content.Server/Abilities/Psionics/Abilities/PsionicRegenerationPowerSystem.cs
similarity index 100%
rename from Content.Server/Nyanotrasen/Abilities/Psionics/Abilities/PsionicRegenerationPowerSystem.cs
rename to Content.Server/Abilities/Psionics/Abilities/PsionicRegenerationPowerSystem.cs
diff --git a/Content.Server/Nyanotrasen/Abilities/Psionics/Abilities/PyrokinesisPowerSystem.cs b/Content.Server/Abilities/Psionics/Abilities/PyrokinesisPowerSystem.cs
similarity index 100%
rename from Content.Server/Nyanotrasen/Abilities/Psionics/Abilities/PyrokinesisPowerSystem.cs
rename to Content.Server/Abilities/Psionics/Abilities/PyrokinesisPowerSystem.cs
diff --git a/Content.Server/Nyanotrasen/Abilities/Psionics/Abilities/TelegnosisPowerSystem.cs b/Content.Server/Abilities/Psionics/Abilities/TelegnosisPowerSystem.cs
similarity index 100%
rename from Content.Server/Nyanotrasen/Abilities/Psionics/Abilities/TelegnosisPowerSystem.cs
rename to Content.Server/Abilities/Psionics/Abilities/TelegnosisPowerSystem.cs
diff --git a/Content.Server/Nyanotrasen/Abilities/Psionics/PsionicAbilitiesSystem.cs b/Content.Server/Abilities/Psionics/PsionicAbilitiesSystem.cs
similarity index 100%
rename from Content.Server/Nyanotrasen/Abilities/Psionics/PsionicAbilitiesSystem.cs
rename to Content.Server/Abilities/Psionics/PsionicAbilitiesSystem.cs
diff --git a/Content.Server/Nyanotrasen/Audio/GlimmerSoundComponent.cs b/Content.Server/Audio/GlimmerSoundComponent.cs
similarity index 100%
rename from Content.Server/Nyanotrasen/Audio/GlimmerSoundComponent.cs
rename to Content.Server/Audio/GlimmerSoundComponent.cs
diff --git a/Content.Server/Nyanotrasen/CartridgeLoader/GlimmerMonitorCartridgeComponent.cs b/Content.Server/CartridgeLoader/Cartridges/GlimmerMonitorCartridgeComponent.cs
similarity index 100%
rename from Content.Server/Nyanotrasen/CartridgeLoader/GlimmerMonitorCartridgeComponent.cs
rename to Content.Server/CartridgeLoader/Cartridges/GlimmerMonitorCartridgeComponent.cs
diff --git a/Content.Server/Nyanotrasen/CartridgeLoader/GlimmerMonitorCartridgeSystem.cs b/Content.Server/CartridgeLoader/Cartridges/GlimmerMonitorCartridgeSystem.cs
similarity index 100%
rename from Content.Server/Nyanotrasen/CartridgeLoader/GlimmerMonitorCartridgeSystem.cs
rename to Content.Server/CartridgeLoader/Cartridges/GlimmerMonitorCartridgeSystem.cs
diff --git a/Content.Server/Nyanotrasen/Chat/TSayCommand.cs b/Content.Server/Chat/Commands/TSayCommand.cs
similarity index 100%
rename from Content.Server/Nyanotrasen/Chat/TSayCommand.cs
rename to Content.Server/Chat/Commands/TSayCommand.cs
diff --git a/Content.Server/Chat/Systems/ChatSystem.cs b/Content.Server/Chat/Systems/ChatSystem.cs
index b41d2deda6f..b4641928e48 100644
--- a/Content.Server/Chat/Systems/ChatSystem.cs
+++ b/Content.Server/Chat/Systems/ChatSystem.cs
@@ -8,7 +8,7 @@
using Content.Server.Language;
using Content.Server.Speech.Components;
using Content.Server.Speech.EntitySystems;
-using Content.Server.Nyanotrasen.Chat;
+using Content.Server.Chat;
using Content.Server.Station.Components;
using Content.Server.Station.Systems;
using Content.Shared.ActionBlocker;
@@ -69,9 +69,7 @@ public sealed partial class ChatSystem : SharedChatSystem
[Dependency] private readonly SharedInteractionSystem _interactionSystem = default!;
[Dependency] private readonly ReplacementAccentSystem _wordreplacement = default!;
[Dependency] private readonly LanguageSystem _language = default!;
-
- //Nyano - Summary: pulls in the nyano chat system for psionics.
- [Dependency] private readonly NyanoChatSystem _nyanoChatSystem = default!;
+ [Dependency] private readonly TelepathicChatSystem _telepath = default!;
public const int VoiceRange = 10; // how far voice goes in world units
public const int WhisperClearRange = 2; // how far whisper goes while still being understandable, in world units
@@ -277,7 +275,7 @@ public void TrySendInGameICMessage(
break;
//Nyano - Summary: case adds the telepathic chat sending ability.
case InGameICChatType.Telepathic:
- _nyanoChatSystem.SendTelepathicChat(source, message, range == ChatTransmitRange.HideChat);
+ _telepath.SendTelepathicChat(source, message, range == ChatTransmitRange.HideChat);
break;
}
}
diff --git a/Content.Server/Nyanotrasen/Chat/NyanoChatSystem.cs b/Content.Server/Chat/TelepathicChatSystem.cs
similarity index 97%
rename from Content.Server/Nyanotrasen/Chat/NyanoChatSystem.cs
rename to Content.Server/Chat/TelepathicChatSystem.cs
index 58ed1782741..8d44ead9d07 100644
--- a/Content.Server/Nyanotrasen/Chat/NyanoChatSystem.cs
+++ b/Content.Server/Chat/TelepathicChatSystem.cs
@@ -16,13 +16,13 @@
using System.Linq;
using System.Text;
-namespace Content.Server.Nyanotrasen.Chat
+namespace Content.Server.Chat
{
///
- /// Extensions for nyano's chat stuff
+ /// Extensions for Telepathic chat stuff
///
- public sealed class NyanoChatSystem : EntitySystem
+ public sealed class TelepathicChatSystem : EntitySystem
{
[Dependency] private readonly IAdminManager _adminManager = default!;
[Dependency] private readonly IChatManager _chatManager = default!;
diff --git a/Content.Server/Nyanotrasen/Chat/TelepathicRepeaterComponent.cs b/Content.Server/Chat/TelepathicRepeaterComponent.cs
similarity index 83%
rename from Content.Server/Nyanotrasen/Chat/TelepathicRepeaterComponent.cs
rename to Content.Server/Chat/TelepathicRepeaterComponent.cs
index fc199f4332a..2183fafd4d1 100644
--- a/Content.Server/Nyanotrasen/Chat/TelepathicRepeaterComponent.cs
+++ b/Content.Server/Chat/TelepathicRepeaterComponent.cs
@@ -1,4 +1,4 @@
-namespace Content.Server.Nyanotrasen.Chat
+namespace Content.Server.Chat
{
///
/// Repeats whatever is happening in telepathic chat.
diff --git a/Content.Server/Nyanotrasen/Psionics/AcceptPsionicsEui.cs b/Content.Server/Psionics/AcceptPsionicsEui.cs
similarity index 100%
rename from Content.Server/Nyanotrasen/Psionics/AcceptPsionicsEui.cs
rename to Content.Server/Psionics/AcceptPsionicsEui.cs
diff --git a/Content.Server/Nyanotrasen/Psionics/AntiPsychicWeaponComponent.cs b/Content.Server/Psionics/AntiPsychicWeaponComponent.cs
similarity index 100%
rename from Content.Server/Nyanotrasen/Psionics/AntiPsychicWeaponComponent.cs
rename to Content.Server/Psionics/AntiPsychicWeaponComponent.cs
diff --git a/Content.Server/Nyanotrasen/Psionics/Dreams/DreamSystem.cs b/Content.Server/Psionics/Dreams/DreamSystem.cs
similarity index 100%
rename from Content.Server/Nyanotrasen/Psionics/Dreams/DreamSystem.cs
rename to Content.Server/Psionics/Dreams/DreamSystem.cs
diff --git a/Content.Server/Nyanotrasen/Psionics/Glimmer/GlimmerCommands.cs b/Content.Server/Psionics/Glimmer/GlimmerCommands.cs
similarity index 100%
rename from Content.Server/Nyanotrasen/Psionics/Glimmer/GlimmerCommands.cs
rename to Content.Server/Psionics/Glimmer/GlimmerCommands.cs
diff --git a/Content.Server/Nyanotrasen/Psionics/Glimmer/GlimmerReactiveSystem.cs b/Content.Server/Psionics/Glimmer/GlimmerReactiveSystem.cs
similarity index 100%
rename from Content.Server/Nyanotrasen/Psionics/Glimmer/GlimmerReactiveSystem.cs
rename to Content.Server/Psionics/Glimmer/GlimmerReactiveSystem.cs
diff --git a/Content.Server/Nyanotrasen/Psionics/Glimmer/PassiveGlimmerReductionSystem.cs b/Content.Server/Psionics/Glimmer/PassiveGlimmerReductionSystem.cs
similarity index 100%
rename from Content.Server/Nyanotrasen/Psionics/Glimmer/PassiveGlimmerReductionSystem.cs
rename to Content.Server/Psionics/Glimmer/PassiveGlimmerReductionSystem.cs
diff --git a/Content.Server/Nyanotrasen/Psionics/Glimmer/Structures/GlimmerSourceComponent.cs b/Content.Server/Psionics/Glimmer/Structures/GlimmerSourceComponent.cs
similarity index 100%
rename from Content.Server/Nyanotrasen/Psionics/Glimmer/Structures/GlimmerSourceComponent.cs
rename to Content.Server/Psionics/Glimmer/Structures/GlimmerSourceComponent.cs
diff --git a/Content.Server/Nyanotrasen/Psionics/Glimmer/Structures/GlimmerStructuresSystem.cs b/Content.Server/Psionics/Glimmer/Structures/GlimmerStructuresSystem.cs
similarity index 100%
rename from Content.Server/Nyanotrasen/Psionics/Glimmer/Structures/GlimmerStructuresSystem.cs
rename to Content.Server/Psionics/Glimmer/Structures/GlimmerStructuresSystem.cs
diff --git a/Content.Server/Nyanotrasen/Psionics/Invisibility/PsionicInvisibilitySystem.cs b/Content.Server/Psionics/Invisibility/PsionicInvisibilitySystem.cs
similarity index 100%
rename from Content.Server/Nyanotrasen/Psionics/Invisibility/PsionicInvisibilitySystem.cs
rename to Content.Server/Psionics/Invisibility/PsionicInvisibilitySystem.cs
diff --git a/Content.Server/Nyanotrasen/Psionics/Invisibility/PsionicInvisibleContactsComponent.cs b/Content.Server/Psionics/Invisibility/PsionicInvisibleContactsComponent.cs
similarity index 100%
rename from Content.Server/Nyanotrasen/Psionics/Invisibility/PsionicInvisibleContactsComponent.cs
rename to Content.Server/Psionics/Invisibility/PsionicInvisibleContactsComponent.cs
diff --git a/Content.Server/Nyanotrasen/Psionics/Invisibility/PsionicInvisibleContactsSystem.cs b/Content.Server/Psionics/Invisibility/PsionicInvisibleContactsSystem.cs
similarity index 100%
rename from Content.Server/Nyanotrasen/Psionics/Invisibility/PsionicInvisibleContactsSystem.cs
rename to Content.Server/Psionics/Invisibility/PsionicInvisibleContactsSystem.cs
diff --git a/Content.Server/Nyanotrasen/Psionics/Invisibility/PsionicallyInvisibleComponent.cs b/Content.Server/Psionics/Invisibility/PsionicallyInvisibleComponent.cs
similarity index 100%
rename from Content.Server/Nyanotrasen/Psionics/Invisibility/PsionicallyInvisibleComponent.cs
rename to Content.Server/Psionics/Invisibility/PsionicallyInvisibleComponent.cs
diff --git a/Content.Server/Nyanotrasen/Psionics/PotentialPsionicComponent.cs b/Content.Server/Psionics/PotentialPsionicComponent.cs
similarity index 100%
rename from Content.Server/Nyanotrasen/Psionics/PotentialPsionicComponent.cs
rename to Content.Server/Psionics/PotentialPsionicComponent.cs
diff --git a/Content.Server/Nyanotrasen/Psionics/PsionicAwaitingPlayerComponent.cs b/Content.Server/Psionics/PsionicAwaitingPlayerComponent.cs
similarity index 100%
rename from Content.Server/Nyanotrasen/Psionics/PsionicAwaitingPlayerComponent.cs
rename to Content.Server/Psionics/PsionicAwaitingPlayerComponent.cs
diff --git a/Content.Server/Nyanotrasen/Psionics/PsionicBonusChanceComponent.cs b/Content.Server/Psionics/PsionicBonusChanceComponent.cs
similarity index 100%
rename from Content.Server/Nyanotrasen/Psionics/PsionicBonusChanceComponent.cs
rename to Content.Server/Psionics/PsionicBonusChanceComponent.cs
diff --git a/Content.Server/Nyanotrasen/Psionics/PsionicsCommands.cs b/Content.Server/Psionics/PsionicsCommands.cs
similarity index 100%
rename from Content.Server/Nyanotrasen/Psionics/PsionicsCommands.cs
rename to Content.Server/Psionics/PsionicsCommands.cs
diff --git a/Content.Server/Nyanotrasen/Psionics/PsionicsSystem.cs b/Content.Server/Psionics/PsionicsSystem.cs
similarity index 100%
rename from Content.Server/Nyanotrasen/Psionics/PsionicsSystem.cs
rename to Content.Server/Psionics/PsionicsSystem.cs
diff --git a/Content.Server/Nyanotrasen/StationEvents/Components/FreeProberRuleComponent.cs b/Content.Server/StationEvents/Components/FreeProberRuleComponent.cs
similarity index 100%
rename from Content.Server/Nyanotrasen/StationEvents/Components/FreeProberRuleComponent.cs
rename to Content.Server/StationEvents/Components/FreeProberRuleComponent.cs
diff --git a/Content.Server/Nyanotrasen/StationEvents/Components/GlimmerEventComponent.cs b/Content.Server/StationEvents/Components/GlimmerEventComponent.cs
similarity index 100%
rename from Content.Server/Nyanotrasen/StationEvents/Components/GlimmerEventComponent.cs
rename to Content.Server/StationEvents/Components/GlimmerEventComponent.cs
diff --git a/Content.Server/Nyanotrasen/StationEvents/Components/GlimmerRandomSentienceRuleComponent.cs b/Content.Server/StationEvents/Components/GlimmerRandomSentienceRuleComponent.cs
similarity index 100%
rename from Content.Server/Nyanotrasen/StationEvents/Components/GlimmerRandomSentienceRuleComponent.cs
rename to Content.Server/StationEvents/Components/GlimmerRandomSentienceRuleComponent.cs
diff --git a/Content.Server/Nyanotrasen/StationEvents/Components/GlimmerRevenantSpawnRuleComponent.cs b/Content.Server/StationEvents/Components/GlimmerRevenantSpawnRuleComponent.cs
similarity index 100%
rename from Content.Server/Nyanotrasen/StationEvents/Components/GlimmerRevenantSpawnRuleComponent.cs
rename to Content.Server/StationEvents/Components/GlimmerRevenantSpawnRuleComponent.cs
diff --git a/Content.Server/Nyanotrasen/StationEvents/Components/GlimmerWispRuleComponent.cs b/Content.Server/StationEvents/Components/GlimmerWispRuleComponent.cs
similarity index 100%
rename from Content.Server/Nyanotrasen/StationEvents/Components/GlimmerWispRuleComponent.cs
rename to Content.Server/StationEvents/Components/GlimmerWispRuleComponent.cs
diff --git a/Content.Server/Nyanotrasen/StationEvents/Components/MassMindSwapRuleComponent.cs b/Content.Server/StationEvents/Components/MassMindSwapRuleComponent.cs
similarity index 100%
rename from Content.Server/Nyanotrasen/StationEvents/Components/MassMindSwapRuleComponent.cs
rename to Content.Server/StationEvents/Components/MassMindSwapRuleComponent.cs
diff --git a/Content.Server/Nyanotrasen/StationEvents/Components/MundaneDischargeRuleComponent.cs b/Content.Server/StationEvents/Components/MundaneDischargeRuleComponent.cs
similarity index 100%
rename from Content.Server/Nyanotrasen/StationEvents/Components/MundaneDischargeRuleComponent.cs
rename to Content.Server/StationEvents/Components/MundaneDischargeRuleComponent.cs
diff --git a/Content.Server/Nyanotrasen/StationEvents/Components/NoosphericFryRuleComponent.cs b/Content.Server/StationEvents/Components/NoosphericFryRuleComponent.cs
similarity index 100%
rename from Content.Server/Nyanotrasen/StationEvents/Components/NoosphericFryRuleComponent.cs
rename to Content.Server/StationEvents/Components/NoosphericFryRuleComponent.cs
diff --git a/Content.Server/Nyanotrasen/StationEvents/Components/NoosphericStormRuleComponent.cs b/Content.Server/StationEvents/Components/NoosphericStormRuleComponent.cs
similarity index 100%
rename from Content.Server/Nyanotrasen/StationEvents/Components/NoosphericStormRuleComponent.cs
rename to Content.Server/StationEvents/Components/NoosphericStormRuleComponent.cs
diff --git a/Content.Server/Nyanotrasen/StationEvents/Components/NoosphericZapRuleComponent.cs b/Content.Server/StationEvents/Components/NoosphericZapRuleComponent.cs
similarity index 100%
rename from Content.Server/Nyanotrasen/StationEvents/Components/NoosphericZapRuleComponent.cs
rename to Content.Server/StationEvents/Components/NoosphericZapRuleComponent.cs
diff --git a/Content.Server/Nyanotrasen/StationEvents/Components/PsionicCatGotYourTongueRuleComponent.cs b/Content.Server/StationEvents/Components/PsionicCatGotYourTongueRuleComponent.cs
similarity index 100%
rename from Content.Server/Nyanotrasen/StationEvents/Components/PsionicCatGotYourTongueRuleComponent.cs
rename to Content.Server/StationEvents/Components/PsionicCatGotYourTongueRuleComponent.cs
diff --git a/Content.Server/Nyanotrasen/StationEvents/Events/FreeProberRule.cs b/Content.Server/StationEvents/Events/FreeProberRule.cs
similarity index 100%
rename from Content.Server/Nyanotrasen/StationEvents/Events/FreeProberRule.cs
rename to Content.Server/StationEvents/Events/FreeProberRule.cs
diff --git a/Content.Server/Nyanotrasen/StationEvents/Events/GlimmerEventSystem.cs b/Content.Server/StationEvents/Events/GlimmerEventSystem.cs
similarity index 100%
rename from Content.Server/Nyanotrasen/StationEvents/Events/GlimmerEventSystem.cs
rename to Content.Server/StationEvents/Events/GlimmerEventSystem.cs
diff --git a/Content.Server/Nyanotrasen/StationEvents/Events/GlimmerRandomSentienceRule.cs b/Content.Server/StationEvents/Events/GlimmerRandomSentienceRule.cs
similarity index 100%
rename from Content.Server/Nyanotrasen/StationEvents/Events/GlimmerRandomSentienceRule.cs
rename to Content.Server/StationEvents/Events/GlimmerRandomSentienceRule.cs
diff --git a/Content.Server/Nyanotrasen/StationEvents/Events/GlimmerRevenantSpawnRule.cs b/Content.Server/StationEvents/Events/GlimmerRevenantSpawnRule.cs
similarity index 100%
rename from Content.Server/Nyanotrasen/StationEvents/Events/GlimmerRevenantSpawnRule.cs
rename to Content.Server/StationEvents/Events/GlimmerRevenantSpawnRule.cs
diff --git a/Content.Server/Nyanotrasen/StationEvents/Events/GlimmerWispSpawnRule.cs b/Content.Server/StationEvents/Events/GlimmerWispSpawnRule.cs
similarity index 100%
rename from Content.Server/Nyanotrasen/StationEvents/Events/GlimmerWispSpawnRule.cs
rename to Content.Server/StationEvents/Events/GlimmerWispSpawnRule.cs
diff --git a/Content.Server/Nyanotrasen/StationEvents/Events/MassMindSwapRule.cs b/Content.Server/StationEvents/Events/MassMindSwapRule.cs
similarity index 100%
rename from Content.Server/Nyanotrasen/StationEvents/Events/MassMindSwapRule.cs
rename to Content.Server/StationEvents/Events/MassMindSwapRule.cs
diff --git a/Content.Server/Nyanotrasen/StationEvents/Events/MundaneDischargeRule.cs b/Content.Server/StationEvents/Events/MundaneDischargeRule.cs
similarity index 100%
rename from Content.Server/Nyanotrasen/StationEvents/Events/MundaneDischargeRule.cs
rename to Content.Server/StationEvents/Events/MundaneDischargeRule.cs
diff --git a/Content.Server/Nyanotrasen/StationEvents/Events/NoosphericFryRule.cs b/Content.Server/StationEvents/Events/NoosphericFryRule.cs
similarity index 100%
rename from Content.Server/Nyanotrasen/StationEvents/Events/NoosphericFryRule.cs
rename to Content.Server/StationEvents/Events/NoosphericFryRule.cs
diff --git a/Content.Server/Nyanotrasen/StationEvents/Events/NoosphericStormRule.cs b/Content.Server/StationEvents/Events/NoosphericStormRule.cs
similarity index 100%
rename from Content.Server/Nyanotrasen/StationEvents/Events/NoosphericStormRule.cs
rename to Content.Server/StationEvents/Events/NoosphericStormRule.cs
diff --git a/Content.Server/Nyanotrasen/StationEvents/Events/NoosphericZapRule.cs b/Content.Server/StationEvents/Events/NoosphericZapRule.cs
similarity index 100%
rename from Content.Server/Nyanotrasen/StationEvents/Events/NoosphericZapRule.cs
rename to Content.Server/StationEvents/Events/NoosphericZapRule.cs
diff --git a/Content.Server/Nyanotrasen/StationEvents/Events/PsionicCatGotYourTongueRule.cs b/Content.Server/StationEvents/Events/PsionicCatGotYourTongueRule.cs
similarity index 100%
rename from Content.Server/Nyanotrasen/StationEvents/Events/PsionicCatGotYourTongueRule.cs
rename to Content.Server/StationEvents/Events/PsionicCatGotYourTongueRule.cs
diff --git a/Content.Shared/Nyanotrasen/Actions/Events/DispelPowerActionEvent.cs b/Content.Shared/Actions/Events/DispelPowerActionEvent.cs
similarity index 100%
rename from Content.Shared/Nyanotrasen/Actions/Events/DispelPowerActionEvent.cs
rename to Content.Shared/Actions/Events/DispelPowerActionEvent.cs
diff --git a/Content.Shared/Nyanotrasen/Actions/Events/EatMouseActionEvent.cs b/Content.Shared/Actions/Events/EatMouseActionEvent.cs
similarity index 100%
rename from Content.Shared/Nyanotrasen/Actions/Events/EatMouseActionEvent.cs
rename to Content.Shared/Actions/Events/EatMouseActionEvent.cs
diff --git a/Content.Shared/Nyanotrasen/Actions/Events/HairballActionEvent.cs b/Content.Shared/Actions/Events/HairballActionEvent.cs
similarity index 100%
rename from Content.Shared/Nyanotrasen/Actions/Events/HairballActionEvent.cs
rename to Content.Shared/Actions/Events/HairballActionEvent.cs
diff --git a/Content.Shared/Nyanotrasen/Actions/Events/MassSleepPowerActionEvent.cs b/Content.Shared/Actions/Events/MassSleepPowerActionEvent.cs
similarity index 100%
rename from Content.Shared/Nyanotrasen/Actions/Events/MassSleepPowerActionEvent.cs
rename to Content.Shared/Actions/Events/MassSleepPowerActionEvent.cs
diff --git a/Content.Shared/Nyanotrasen/Actions/Events/MetapsionicPowerActionEvent.cs b/Content.Shared/Actions/Events/MetapsionicPowerActionEvent.cs
similarity index 100%
rename from Content.Shared/Nyanotrasen/Actions/Events/MetapsionicPowerActionEvent.cs
rename to Content.Shared/Actions/Events/MetapsionicPowerActionEvent.cs
diff --git a/Content.Shared/Nyanotrasen/Actions/Events/MindSwapPowerActionEvent.cs b/Content.Shared/Actions/Events/MindSwapPowerActionEvent.cs
similarity index 100%
rename from Content.Shared/Nyanotrasen/Actions/Events/MindSwapPowerActionEvent.cs
rename to Content.Shared/Actions/Events/MindSwapPowerActionEvent.cs
diff --git a/Content.Shared/Nyanotrasen/Actions/Events/NoosphericZapPowerActionEvent.cs b/Content.Shared/Actions/Events/NoosphericZapPowerActionEvent.cs
similarity index 100%
rename from Content.Shared/Nyanotrasen/Actions/Events/NoosphericZapPowerActionEvent.cs
rename to Content.Shared/Actions/Events/NoosphericZapPowerActionEvent.cs
diff --git a/Content.Shared/Nyanotrasen/Actions/Events/PsionicInvisibilityPowerActionEvent.cs b/Content.Shared/Actions/Events/PsionicInvisibilityPowerActionEvent.cs
similarity index 100%
rename from Content.Shared/Nyanotrasen/Actions/Events/PsionicInvisibilityPowerActionEvent.cs
rename to Content.Shared/Actions/Events/PsionicInvisibilityPowerActionEvent.cs
diff --git a/Content.Shared/Nyanotrasen/Actions/Events/PsionicRegenerationPowerActionEvent.cs b/Content.Shared/Actions/Events/PsionicRegenerationPowerActionEvent.cs
similarity index 100%
rename from Content.Shared/Nyanotrasen/Actions/Events/PsionicRegenerationPowerActionEvent.cs
rename to Content.Shared/Actions/Events/PsionicRegenerationPowerActionEvent.cs
diff --git a/Content.Shared/Nyanotrasen/Actions/Events/PyrokinesisPowerActionEvent.cs b/Content.Shared/Actions/Events/PyrokinesisPowerActionEvent.cs
similarity index 100%
rename from Content.Shared/Nyanotrasen/Actions/Events/PyrokinesisPowerActionEvent.cs
rename to Content.Shared/Actions/Events/PyrokinesisPowerActionEvent.cs
diff --git a/Content.Shared/Nyanotrasen/Actions/Events/RemovePsionicInvisibilityOffPowerActionEvent.cs b/Content.Shared/Actions/Events/RemovePsionicInvisibilityOffPowerActionEvent.cs
similarity index 100%
rename from Content.Shared/Nyanotrasen/Actions/Events/RemovePsionicInvisibilityOffPowerActionEvent.cs
rename to Content.Shared/Actions/Events/RemovePsionicInvisibilityOffPowerActionEvent.cs
diff --git a/Content.Shared/Nyanotrasen/Actions/Events/TelegnosisPowerActionEvent.cs b/Content.Shared/Actions/Events/TelegnosisPowerActionEvent.cs
similarity index 100%
rename from Content.Shared/Nyanotrasen/Actions/Events/TelegnosisPowerActionEvent.cs
rename to Content.Shared/Actions/Events/TelegnosisPowerActionEvent.cs
diff --git a/Content.Shared/Nyanotrasen/CartridgeLoader/Cartridges/GlimmerMonitorUiState.cs b/Content.Shared/CartridgeLoader/Cartridges/GlimmerMonitorUiState.cs
similarity index 100%
rename from Content.Shared/Nyanotrasen/CartridgeLoader/Cartridges/GlimmerMonitorUiState.cs
rename to Content.Shared/CartridgeLoader/Cartridges/GlimmerMonitorUiState.cs
diff --git a/Content.Shared/Nyanotrasen/Chapel/SacrificeDoAfterEvent.cs b/Content.Shared/Chapel/SacrificeDoAfterEvent.cs
similarity index 100%
rename from Content.Shared/Nyanotrasen/Chapel/SacrificeDoAfterEvent.cs
rename to Content.Shared/Chapel/SacrificeDoAfterEvent.cs
diff --git a/Content.Shared/Nyanotrasen/Abilities/Psionics/Abilities/AcceptPsionicsEuiMessage.cs b/Content.Shared/Psionics/Abilities/AcceptPsionicsEuiMessage.cs
similarity index 100%
rename from Content.Shared/Nyanotrasen/Abilities/Psionics/Abilities/AcceptPsionicsEuiMessage.cs
rename to Content.Shared/Psionics/Abilities/AcceptPsionicsEuiMessage.cs
diff --git a/Content.Shared/Nyanotrasen/Abilities/Psionics/Abilities/Dispel/DamageOnDispelComponent.cs b/Content.Shared/Psionics/Abilities/Dispel/DamageOnDispelComponent.cs
similarity index 100%
rename from Content.Shared/Nyanotrasen/Abilities/Psionics/Abilities/Dispel/DamageOnDispelComponent.cs
rename to Content.Shared/Psionics/Abilities/Dispel/DamageOnDispelComponent.cs
diff --git a/Content.Shared/Nyanotrasen/Abilities/Psionics/Abilities/Dispel/DispelPowerComponent.cs b/Content.Shared/Psionics/Abilities/Dispel/DispelPowerComponent.cs
similarity index 100%
rename from Content.Shared/Nyanotrasen/Abilities/Psionics/Abilities/Dispel/DispelPowerComponent.cs
rename to Content.Shared/Psionics/Abilities/Dispel/DispelPowerComponent.cs
diff --git a/Content.Shared/Nyanotrasen/Abilities/Psionics/Abilities/Dispel/DispellableComponent.cs b/Content.Shared/Psionics/Abilities/Dispel/DispellableComponent.cs
similarity index 100%
rename from Content.Shared/Nyanotrasen/Abilities/Psionics/Abilities/Dispel/DispellableComponent.cs
rename to Content.Shared/Psionics/Abilities/Dispel/DispellableComponent.cs
diff --git a/Content.Shared/Nyanotrasen/Abilities/Psionics/Abilities/MassSleep/MassSleepPowerComponent.cs b/Content.Shared/Psionics/Abilities/MassSleep/MassSleepPowerComponent.cs
similarity index 100%
rename from Content.Shared/Nyanotrasen/Abilities/Psionics/Abilities/MassSleep/MassSleepPowerComponent.cs
rename to Content.Shared/Psionics/Abilities/MassSleep/MassSleepPowerComponent.cs
diff --git a/Content.Shared/Nyanotrasen/Abilities/Psionics/Abilities/MassSleep/MassSleepPowerSystem.cs b/Content.Shared/Psionics/Abilities/MassSleep/MassSleepPowerSystem.cs
similarity index 100%
rename from Content.Shared/Nyanotrasen/Abilities/Psionics/Abilities/MassSleep/MassSleepPowerSystem.cs
rename to Content.Shared/Psionics/Abilities/MassSleep/MassSleepPowerSystem.cs
diff --git a/Content.Shared/Nyanotrasen/Abilities/Psionics/Abilities/Metapsionics/MetapsionicPowerComponent.cs b/Content.Shared/Psionics/Abilities/Metapsionics/MetapsionicPowerComponent.cs
similarity index 100%
rename from Content.Shared/Nyanotrasen/Abilities/Psionics/Abilities/Metapsionics/MetapsionicPowerComponent.cs
rename to Content.Shared/Psionics/Abilities/Metapsionics/MetapsionicPowerComponent.cs
diff --git a/Content.Shared/Nyanotrasen/Abilities/Psionics/Abilities/MindSwap/MindSwapPowerComponent.cs b/Content.Shared/Psionics/Abilities/MindSwap/MindSwapPowerComponent.cs
similarity index 100%
rename from Content.Shared/Nyanotrasen/Abilities/Psionics/Abilities/MindSwap/MindSwapPowerComponent.cs
rename to Content.Shared/Psionics/Abilities/MindSwap/MindSwapPowerComponent.cs
diff --git a/Content.Shared/Nyanotrasen/Abilities/Psionics/Abilities/NoosphericZap/NoosphericZapPowerComponent.cs b/Content.Shared/Psionics/Abilities/NoosphericZap/NoosphericZapPowerComponent.cs
similarity index 100%
rename from Content.Shared/Nyanotrasen/Abilities/Psionics/Abilities/NoosphericZap/NoosphericZapPowerComponent.cs
rename to Content.Shared/Psionics/Abilities/NoosphericZap/NoosphericZapPowerComponent.cs
diff --git a/Content.Shared/Nyanotrasen/Abilities/Psionics/Abilities/PsionicInvisibility/PsionicInvisibilityPowerComponent.cs b/Content.Shared/Psionics/Abilities/PsionicInvisibility/PsionicInvisibilityPowerComponent.cs
similarity index 100%
rename from Content.Shared/Nyanotrasen/Abilities/Psionics/Abilities/PsionicInvisibility/PsionicInvisibilityPowerComponent.cs
rename to Content.Shared/Psionics/Abilities/PsionicInvisibility/PsionicInvisibilityPowerComponent.cs
diff --git a/Content.Shared/Nyanotrasen/Abilities/Psionics/Abilities/PsionicInvisibility/PsionicInvisibilityUsedComponent.cs b/Content.Shared/Psionics/Abilities/PsionicInvisibility/PsionicInvisibilityUsedComponent.cs
similarity index 100%
rename from Content.Shared/Nyanotrasen/Abilities/Psionics/Abilities/PsionicInvisibility/PsionicInvisibilityUsedComponent.cs
rename to Content.Shared/Psionics/Abilities/PsionicInvisibility/PsionicInvisibilityUsedComponent.cs
diff --git a/Content.Shared/Nyanotrasen/Abilities/Psionics/Abilities/PsionicRegeneration/PsionicRegenerationPowerComponent.cs b/Content.Shared/Psionics/Abilities/PsionicRegeneration/PsionicRegenerationPowerComponent.cs
similarity index 100%
rename from Content.Shared/Nyanotrasen/Abilities/Psionics/Abilities/PsionicRegeneration/PsionicRegenerationPowerComponent.cs
rename to Content.Shared/Psionics/Abilities/PsionicRegeneration/PsionicRegenerationPowerComponent.cs
diff --git a/Content.Shared/Nyanotrasen/Abilities/Psionics/Abilities/Pyrokinesis/PyrokinesisPowerComponent.cs b/Content.Shared/Psionics/Abilities/Pyrokinesis/PyrokinesisPowerComponent.cs
similarity index 100%
rename from Content.Shared/Nyanotrasen/Abilities/Psionics/Abilities/Pyrokinesis/PyrokinesisPowerComponent.cs
rename to Content.Shared/Psionics/Abilities/Pyrokinesis/PyrokinesisPowerComponent.cs
diff --git a/Content.Shared/Nyanotrasen/Abilities/Psionics/Abilities/Telegnosis/TelegnosisPowerComponent.cs b/Content.Shared/Psionics/Abilities/Telegnosis/TelegnosisPowerComponent.cs
similarity index 100%
rename from Content.Shared/Nyanotrasen/Abilities/Psionics/Abilities/Telegnosis/TelegnosisPowerComponent.cs
rename to Content.Shared/Psionics/Abilities/Telegnosis/TelegnosisPowerComponent.cs
diff --git a/Content.Shared/Nyanotrasen/Abilities/Psionics/Abilities/Telegnosis/TelegnosticProjectionComponent.cs b/Content.Shared/Psionics/Abilities/Telegnosis/TelegnosticProjectionComponent.cs
similarity index 100%
rename from Content.Shared/Nyanotrasen/Abilities/Psionics/Abilities/Telegnosis/TelegnosticProjectionComponent.cs
rename to Content.Shared/Psionics/Abilities/Telegnosis/TelegnosticProjectionComponent.cs
diff --git a/Content.Shared/Nyanotrasen/Psionics/Events.cs b/Content.Shared/Psionics/Events.cs
similarity index 100%
rename from Content.Shared/Nyanotrasen/Psionics/Events.cs
rename to Content.Shared/Psionics/Events.cs
diff --git a/Content.Shared/Nyanotrasen/Psionics/Glimmer/GlimmerSystem.cs b/Content.Shared/Psionics/Glimmer/GlimmerSystem.cs
similarity index 100%
rename from Content.Shared/Nyanotrasen/Psionics/Glimmer/GlimmerSystem.cs
rename to Content.Shared/Psionics/Glimmer/GlimmerSystem.cs
diff --git a/Content.Shared/Nyanotrasen/Psionics/Glimmer/SharedGlimmerReactiveComponent.cs b/Content.Shared/Psionics/Glimmer/SharedGlimmerReactiveComponent.cs
similarity index 100%
rename from Content.Shared/Nyanotrasen/Psionics/Glimmer/SharedGlimmerReactiveComponent.cs
rename to Content.Shared/Psionics/Glimmer/SharedGlimmerReactiveComponent.cs
diff --git a/Content.Shared/Nyanotrasen/Psionics/Glimmer/SharedGlimmerReactiveVisuals.cs b/Content.Shared/Psionics/Glimmer/SharedGlimmerReactiveVisuals.cs
similarity index 100%
rename from Content.Shared/Nyanotrasen/Psionics/Glimmer/SharedGlimmerReactiveVisuals.cs
rename to Content.Shared/Psionics/Glimmer/SharedGlimmerReactiveVisuals.cs
diff --git a/Content.Shared/Nyanotrasen/Abilities/Psionics/Items/ClothingGrantPsionicPowerComponent.cs b/Content.Shared/Psionics/Items/ClothingGrantPsionicPowerComponent.cs
similarity index 100%
rename from Content.Shared/Nyanotrasen/Abilities/Psionics/Items/ClothingGrantPsionicPowerComponent.cs
rename to Content.Shared/Psionics/Items/ClothingGrantPsionicPowerComponent.cs
diff --git a/Content.Shared/Nyanotrasen/Abilities/Psionics/Items/HeadCageComponent.cs b/Content.Shared/Psionics/Items/HeadCageComponent.cs
similarity index 100%
rename from Content.Shared/Nyanotrasen/Abilities/Psionics/Items/HeadCageComponent.cs
rename to Content.Shared/Psionics/Items/HeadCageComponent.cs
diff --git a/Content.Shared/Nyanotrasen/Abilities/Psionics/Items/HeadCagedComponent.cs b/Content.Shared/Psionics/Items/HeadCagedComponent.cs
similarity index 100%
rename from Content.Shared/Nyanotrasen/Abilities/Psionics/Items/HeadCagedComponent.cs
rename to Content.Shared/Psionics/Items/HeadCagedComponent.cs
diff --git a/Content.Shared/Nyanotrasen/Abilities/Psionics/Items/PsionicItemsSystem.cs b/Content.Shared/Psionics/Items/PsionicItemsSystem.cs
similarity index 100%
rename from Content.Shared/Nyanotrasen/Abilities/Psionics/Items/PsionicItemsSystem.cs
rename to Content.Shared/Psionics/Items/PsionicItemsSystem.cs
diff --git a/Content.Shared/Nyanotrasen/Abilities/Psionics/Items/TinfoilHatComponent.cs b/Content.Shared/Psionics/Items/TinfoilHatComponent.cs
similarity index 100%
rename from Content.Shared/Nyanotrasen/Abilities/Psionics/Items/TinfoilHatComponent.cs
rename to Content.Shared/Psionics/Items/TinfoilHatComponent.cs
diff --git a/Content.Shared/Nyanotrasen/Abilities/Psionics/PsionicComponent.cs b/Content.Shared/Psionics/PsionicComponent.cs
similarity index 100%
rename from Content.Shared/Nyanotrasen/Abilities/Psionics/PsionicComponent.cs
rename to Content.Shared/Psionics/PsionicComponent.cs
diff --git a/Content.Shared/Nyanotrasen/Abilities/Psionics/PsionicInsulationComponent.cs b/Content.Shared/Psionics/PsionicInsulationComponent.cs
similarity index 100%
rename from Content.Shared/Nyanotrasen/Abilities/Psionics/PsionicInsulationComponent.cs
rename to Content.Shared/Psionics/PsionicInsulationComponent.cs
diff --git a/Content.Shared/Nyanotrasen/Abilities/Psionics/PsionicsDisabledComponent.cs b/Content.Shared/Psionics/PsionicsDisabledComponent.cs
similarity index 100%
rename from Content.Shared/Nyanotrasen/Abilities/Psionics/PsionicsDisabledComponent.cs
rename to Content.Shared/Psionics/PsionicsDisabledComponent.cs
diff --git a/Content.Shared/Nyanotrasen/Abilities/Psionics/SharedPsionicAbilitiesSystem.cs b/Content.Shared/Psionics/SharedPsionicAbilitiesSystem.cs
similarity index 100%
rename from Content.Shared/Nyanotrasen/Abilities/Psionics/SharedPsionicAbilitiesSystem.cs
rename to Content.Shared/Psionics/SharedPsionicAbilitiesSystem.cs
diff --git a/Content.Shared/Nyanotrasen/Soul/GolemMessages.cs b/Content.Shared/Soul/GolemMessages.cs
similarity index 100%
rename from Content.Shared/Nyanotrasen/Soul/GolemMessages.cs
rename to Content.Shared/Soul/GolemMessages.cs
diff --git a/Content.Shared/Nyanotrasen/Soul/GunHeldByGolemComponent.cs b/Content.Shared/Soul/GunHeldByGolemComponent.cs
similarity index 100%
rename from Content.Shared/Nyanotrasen/Soul/GunHeldByGolemComponent.cs
rename to Content.Shared/Soul/GunHeldByGolemComponent.cs
diff --git a/Content.Shared/Nyanotrasen/Soul/SharedGolemComponent.cs b/Content.Shared/Soul/SharedGolemComponent.cs
similarity index 100%
rename from Content.Shared/Nyanotrasen/Soul/SharedGolemComponent.cs
rename to Content.Shared/Soul/SharedGolemComponent.cs
diff --git a/Content.Shared/Nyanotrasen/Soul/SharedGolemSystem.cs b/Content.Shared/Soul/SharedGolemSystem.cs
similarity index 100%
rename from Content.Shared/Nyanotrasen/Soul/SharedGolemSystem.cs
rename to Content.Shared/Soul/SharedGolemSystem.cs
From f79c6db8c9549bb595423205004893ed59cb1f8d Mon Sep 17 00:00:00 2001
From: Angelo Fallaria
Date: Thu, 8 Aug 2024 07:38:33 +0800
Subject: [PATCH 19/57] New Trait: Sluggish / Snail-Paced (#692)
# Description
This PR adds two new negative traits that decrease your movement speed:
**Sluggish** and **Snail-Paced**.
- Sluggish (+1 points)
- 15% slower movement speed
- 35% slower climbing speed (for standard tables, from 1.5s to ~2.02
seconds)
- Cooldown on laying down/standing up increased from 2.5 seconds to 3
seconds
- Snail-Paced (+2 points)
- 30% slower movement speed
- 66% slower climbing speed (for standard tables, from 1.5s to ~2.48
seconds)
- Cooldown on laying down/standing up increased from 2.5 seconds to 4
seconds
## Media
Expand
**Trait entry**
![image](https://github.com/user-attachments/assets/cb483536-ec3e-4c28-a4b4-c431bb1b669e)
![image](https://github.com/user-attachments/assets/a251844e-7058-4d4b-b21d-a5637c39489f)
# Changelog
:cl: Skubman
- add: Add two new negative traits: Sluggish (+1) and Snail-Paced (+2)
that make you move slower, and climb tables slower.
---------
Signed-off-by: Angelo Fallaria
Co-authored-by: VMSolidus
---
.../Assorted/TraitSpeedModifierComponent.cs | 14 +++++++
.../Assorted/TraitSpeedModifierSystem.cs | 19 ++++++++++
Resources/Locale/en-US/traits/traits.ftl | 12 +++++-
Resources/Prototypes/Traits/disabilities.yml | 38 +++++++++++++++++++
Resources/Prototypes/Traits/skills.yml | 6 +++
5 files changed, 88 insertions(+), 1 deletion(-)
create mode 100644 Content.Server/Traits/Assorted/TraitSpeedModifierComponent.cs
create mode 100644 Content.Server/Traits/Assorted/TraitSpeedModifierSystem.cs
diff --git a/Content.Server/Traits/Assorted/TraitSpeedModifierComponent.cs b/Content.Server/Traits/Assorted/TraitSpeedModifierComponent.cs
new file mode 100644
index 00000000000..6acb32e6c1d
--- /dev/null
+++ b/Content.Server/Traits/Assorted/TraitSpeedModifierComponent.cs
@@ -0,0 +1,14 @@
+namespace Content.Server.Traits.Assorted;
+
+///
+/// This component is used for traits that modify movement speed.
+///
+[RegisterComponent]
+public sealed partial class TraitSpeedModifierComponent : Component
+{
+ [DataField(required: true)]
+ public float WalkModifier = 1.0f;
+
+ [DataField(required: true)]
+ public float SprintModifier = 1.0f;
+}
diff --git a/Content.Server/Traits/Assorted/TraitSpeedModifierSystem.cs b/Content.Server/Traits/Assorted/TraitSpeedModifierSystem.cs
new file mode 100644
index 00000000000..c804592347a
--- /dev/null
+++ b/Content.Server/Traits/Assorted/TraitSpeedModifierSystem.cs
@@ -0,0 +1,19 @@
+using Content.Shared.Movement.Systems;
+using Content.Server.Traits.Assorted;
+
+namespace Content.Shared.Traits.Assorted;
+
+public sealed class TraitSpeedModifierSystem : EntitySystem
+{
+ public override void Initialize()
+ {
+ base.Initialize();
+
+ SubscribeLocalEvent(OnRefreshMovementSpeed);
+ }
+
+ private void OnRefreshMovementSpeed(EntityUid uid, TraitSpeedModifierComponent component, RefreshMovementSpeedModifiersEvent args)
+ {
+ args.ModifySpeed(component.WalkModifier, component.SprintModifier);
+ }
+}
diff --git a/Resources/Locale/en-US/traits/traits.ftl b/Resources/Locale/en-US/traits/traits.ftl
index 3439ffcdc97..5fb361af01f 100644
--- a/Resources/Locale/en-US/traits/traits.ftl
+++ b/Resources/Locale/en-US/traits/traits.ftl
@@ -89,6 +89,16 @@ trait-description-ParkourTraining =
Whether as a hobby, lifestyle, or professional training, you are trained in the discipline of parkour.
You're faster with climbing, crawling, lying down, and getting up.
+trait-name-Sluggish = Sluggish
+trait-description-Sluggish =
+ You navigate the world slower than others, perhaps due to a medical condition, inactivity, or age.
+ You move slower, and it takes longer for you to climb, lie down and get up.
+
+trait-name-SnailPaced = Snail-Paced
+trait-description-SnailPaced =
+ You walk at a snail's pace, perhaps due to a medical condition, mobility impairment, or age.
+ You move substantially slower, and it takes far longer for you to climb, lie down and get up.
+
trait-name-LightStep = Light Step
trait-description-LightStep =
You move with a gentle step, making your footsteps quieter.
@@ -106,4 +116,4 @@ trait-description-Spearmaster =
trait-name-WeaponsGeneralist = Weapons Generalist
trait-description-WeaponsGeneralist =
You are a jack of all trades with melee weapons, enabling you to be versatile with your weapon arsenal.
- Your melee damage bonus for all Brute damage types (Blunt, Slash, Piercing) becomes 25%.
\ No newline at end of file
+ Your melee damage bonus for all Brute damage types (Blunt, Slash, Piercing) becomes 25%.
diff --git a/Resources/Prototypes/Traits/disabilities.yml b/Resources/Prototypes/Traits/disabilities.yml
index afdd27f339d..c47a673f84a 100644
--- a/Resources/Prototypes/Traits/disabilities.yml
+++ b/Resources/Prototypes/Traits/disabilities.yml
@@ -95,6 +95,44 @@
components:
- type: Snoring
+- type: trait
+ id: Sluggish
+ category: Physical
+ points: 1
+ requirements:
+ - !type:CharacterTraitRequirement
+ inverted: true
+ traits:
+ - ParkourTraining
+ - SnailPaced
+ components:
+ - type: TraitSpeedModifier
+ sprintModifier: 0.85
+ walkModifier: 0.85
+ - type: ClimbDelayModifier
+ climbDelayMultiplier: 1.35
+ - type: LayingDownModifier
+ layingDownCooldownMultiplier: 1.2
+
+- type: trait
+ id: SnailPaced
+ category: Physical
+ points: 2
+ requirements:
+ - !type:CharacterTraitRequirement
+ inverted: true
+ traits:
+ - ParkourTraining
+ - Sluggish
+ components:
+ - type: TraitSpeedModifier
+ sprintModifier: 0.7
+ walkModifier: 0.7
+ - type: ClimbDelayModifier
+ climbDelayMultiplier: 1.66
+ - type: LayingDownModifier
+ layingDownCooldownMultiplier: 1.6
+
- type: trait
id: BloodDeficiency
category: Physical
diff --git a/Resources/Prototypes/Traits/skills.yml b/Resources/Prototypes/Traits/skills.yml
index 1a4242aff80..0da622da3c9 100644
--- a/Resources/Prototypes/Traits/skills.yml
+++ b/Resources/Prototypes/Traits/skills.yml
@@ -91,6 +91,12 @@
id: ParkourTraining
category: Physical
points: -3
+ requirements:
+ - !type:CharacterTraitRequirement
+ inverted: true
+ traits:
+ - Sluggish
+ - SnailPaced
components:
- type: ClimbDelayModifier
climbDelayMultiplier: 0.70
From 04330a4cc89906508db781503f55a2ea8084b770 Mon Sep 17 00:00:00 2001
From: SimpleStation Changelogs
Date: Wed, 7 Aug 2024 23:38:58 +0000
Subject: [PATCH 20/57] Automatic Changelog Update (#692)
---
Resources/Changelog/Changelog.yml | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/Resources/Changelog/Changelog.yml b/Resources/Changelog/Changelog.yml
index b7ab981fc63..6de7dc7bf17 100644
--- a/Resources/Changelog/Changelog.yml
+++ b/Resources/Changelog/Changelog.yml
@@ -5073,3 +5073,11 @@ Entries:
message: Readded Psionic Relay Orb
id: 6235
time: '2024-08-07T23:16:30.0000000+00:00'
+- author: Skubman
+ changes:
+ - type: Add
+ message: >-
+ Add two new negative traits: Sluggish (+1) and Snail-Paced (+2) that
+ make you move slower, and climb tables slower.
+ id: 6236
+ time: '2024-08-07T23:38:33.0000000+00:00'
From 54e59822b6098df2f399c67d3fb7f7b6e2f1cbdd Mon Sep 17 00:00:00 2001
From: Angelo Fallaria
Date: Thu, 8 Aug 2024 07:39:52 +0800
Subject: [PATCH 21/57] New Trait: Hemophilia (#690)
# Description
**Hemophilia** is a +1 point negative Physical trait that makes you more
susceptible to bleeding. You bleed twice as long, and you take 10% more
Blunt damage.
## Media
Expand
![image](https://github.com/user-attachments/assets/ceb0e91e-73c8-4986-a566-40fb9cd0d32b)
---
# Changelog
:cl: Skubman
- add: Add the Hemophilia trait, a new negative trait for 1 point that
makes you bleed twice as long and makes you take 10% more Blunt damage.
---
.../Body/Components/BloodstreamComponent.cs | 2 +-
Content.Server/Traits/HemophiliaComponent.cs | 21 ++++++++++++++
Content.Server/Traits/HemophiliaSystem.cs | 28 +++++++++++++++++++
Resources/Locale/en-US/traits/traits.ftl | 5 ++++
Resources/Prototypes/Traits/disabilities.yml | 17 +++++++++++
5 files changed, 72 insertions(+), 1 deletion(-)
create mode 100644 Content.Server/Traits/HemophiliaComponent.cs
create mode 100644 Content.Server/Traits/HemophiliaSystem.cs
diff --git a/Content.Server/Body/Components/BloodstreamComponent.cs b/Content.Server/Body/Components/BloodstreamComponent.cs
index 76eadb99fd8..dd93da9598c 100644
--- a/Content.Server/Body/Components/BloodstreamComponent.cs
+++ b/Content.Server/Body/Components/BloodstreamComponent.cs
@@ -12,7 +12,7 @@
namespace Content.Server.Body.Components
{
- [RegisterComponent, Access(typeof(BloodstreamSystem), typeof(ReactionMixerSystem), typeof(BloodDeficiencySystem))]
+ [RegisterComponent, Access(typeof(BloodstreamSystem), typeof(ReactionMixerSystem), typeof(BloodDeficiencySystem), typeof(HemophiliaSystem))]
public sealed partial class BloodstreamComponent : Component
{
public static string DefaultChemicalsSolutionName = "chemicals";
diff --git a/Content.Server/Traits/HemophiliaComponent.cs b/Content.Server/Traits/HemophiliaComponent.cs
new file mode 100644
index 00000000000..e8f1f57c6e5
--- /dev/null
+++ b/Content.Server/Traits/HemophiliaComponent.cs
@@ -0,0 +1,21 @@
+using Content.Shared.Damage;
+namespace Content.Server.Traits.Assorted;
+
+///
+/// This is used for the Hemophilia trait.
+///
+[RegisterComponent]
+public sealed partial class HemophiliaComponent : Component
+{
+ //
+ // What the BleedReductionAmount should be multiplied by.
+ //
+ [DataField(required: true)]
+ public float BleedReductionModifier = 1f;
+
+ ///
+ /// The damage increase from this trait.
+ ///
+ [DataField(required: true)]
+ public DamageModifierSet DamageModifiers = default!;
+}
diff --git a/Content.Server/Traits/HemophiliaSystem.cs b/Content.Server/Traits/HemophiliaSystem.cs
new file mode 100644
index 00000000000..c70c7de37c0
--- /dev/null
+++ b/Content.Server/Traits/HemophiliaSystem.cs
@@ -0,0 +1,28 @@
+using Content.Server.Body.Systems;
+using Content.Server.Body.Components;
+using Content.Shared.Damage;
+
+namespace Content.Server.Traits.Assorted;
+
+public sealed class HemophiliaSystem : EntitySystem
+{
+ public override void Initialize()
+ {
+ base.Initialize();
+ SubscribeLocalEvent(OnStartup);
+ SubscribeLocalEvent(OnDamageModify);
+ }
+
+ private void OnStartup(EntityUid uid, HemophiliaComponent component, ComponentStartup args)
+ {
+ if (!TryComp(uid, out var bloodstream))
+ return;
+
+ bloodstream.BleedReductionAmount *= component.BleedReductionModifier;
+ }
+
+ private void OnDamageModify(EntityUid uid, HemophiliaComponent component, DamageModifyEvent args)
+ {
+ args.Damage = DamageSpecifier.ApplyModifierSet(args.Damage, component.DamageModifiers);
+ }
+}
diff --git a/Resources/Locale/en-US/traits/traits.ftl b/Resources/Locale/en-US/traits/traits.ftl
index 5fb361af01f..16cae663009 100644
--- a/Resources/Locale/en-US/traits/traits.ftl
+++ b/Resources/Locale/en-US/traits/traits.ftl
@@ -28,6 +28,11 @@ trait-description-BloodDeficiency =
Your body loses more blood than it can replenish.
You lose blood over time, and when left untreated you will eventually die from blood loss.
+trait-name-Hemophilia = Hemophilia
+trait-description-Hemophilia =
+ Your body's ability to form blood clots is impaired.
+ You bleed twice as long, and you have easy bruising, taking 10% more Blunt damage.
+
trait-name-Paracusia = Paracusia
trait-description-Paracusia = You hear sounds that aren't really there
diff --git a/Resources/Prototypes/Traits/disabilities.yml b/Resources/Prototypes/Traits/disabilities.yml
index c47a673f84a..915ea0bf674 100644
--- a/Resources/Prototypes/Traits/disabilities.yml
+++ b/Resources/Prototypes/Traits/disabilities.yml
@@ -146,3 +146,20 @@
components:
- type: BloodDeficiency # 0.07 = start taking bloodloss damage at around ~21.4 minutes,
bloodLossAmount: 0.07 # then become crit ~10 minutes later
+
+- type: trait
+ id: Hemophilia
+ category: Physical
+ points: 1
+ requirements:
+ - !type:CharacterJobRequirement
+ inverted: true
+ jobs:
+ - Borg
+ - MedicalBorg
+ components:
+ - type: Hemophilia
+ bleedReductionModifier: 0.5
+ damageModifiers:
+ coefficients:
+ Blunt: 1.1
From 0fc4051e4f1333da6d8b1ea57531230aa9e48b9b Mon Sep 17 00:00:00 2001
From: SimpleStation Changelogs
Date: Wed, 7 Aug 2024 23:40:16 +0000
Subject: [PATCH 22/57] Automatic Changelog Update (#690)
---
Resources/Changelog/Changelog.yml | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/Resources/Changelog/Changelog.yml b/Resources/Changelog/Changelog.yml
index 6de7dc7bf17..744677a1147 100644
--- a/Resources/Changelog/Changelog.yml
+++ b/Resources/Changelog/Changelog.yml
@@ -5081,3 +5081,11 @@ Entries:
make you move slower, and climb tables slower.
id: 6236
time: '2024-08-07T23:38:33.0000000+00:00'
+- author: Skubman
+ changes:
+ - type: Add
+ message: >-
+ Add the Hemophilia trait, a new negative trait for 1 point that makes
+ you bleed twice as long and makes you take 10% more Blunt damage.
+ id: 6237
+ time: '2024-08-07T23:39:52.0000000+00:00'
From c469961bf9944fdd37da2578f84211e51a075293 Mon Sep 17 00:00:00 2001
From: SleepyScarecrow <136123749+SleepyScarecrow@users.noreply.github.com>
Date: Wed, 7 Aug 2024 19:51:29 -0400
Subject: [PATCH 23/57] Aloe Cream Recipe Fix, Now 15 Seconds (#688)
# Description
Changed the cooking time for aloe cream, so now it doesn't interfere
with RegenerativeMesh any longer.
# Changelog
:cl:
- fix: Fixed the RegenMesh recipe
---
Resources/Prototypes/Recipes/Cooking/medical_recipes.yml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/Resources/Prototypes/Recipes/Cooking/medical_recipes.yml b/Resources/Prototypes/Recipes/Cooking/medical_recipes.yml
index 9d1947f03eb..03ca5203582 100644
--- a/Resources/Prototypes/Recipes/Cooking/medical_recipes.yml
+++ b/Resources/Prototypes/Recipes/Cooking/medical_recipes.yml
@@ -2,7 +2,7 @@
id: RecipeAloeCream
name: aloe cream recipe
result: AloeCream
- time: 10
+ time: 15
solids:
FoodAloe: 1
From 7ef43ac75251636175c535ea610118b9870704b8 Mon Sep 17 00:00:00 2001
From: SimpleStation Changelogs
Date: Wed, 7 Aug 2024 23:51:52 +0000
Subject: [PATCH 24/57] Automatic Changelog Update (#688)
---
Resources/Changelog/Changelog.yml | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/Resources/Changelog/Changelog.yml b/Resources/Changelog/Changelog.yml
index 744677a1147..bb19e08360c 100644
--- a/Resources/Changelog/Changelog.yml
+++ b/Resources/Changelog/Changelog.yml
@@ -5089,3 +5089,9 @@ Entries:
you bleed twice as long and makes you take 10% more Blunt damage.
id: 6237
time: '2024-08-07T23:39:52.0000000+00:00'
+- author: SleepyScarecrow
+ changes:
+ - type: Fix
+ message: Fixed the RegenMesh recipe
+ id: 6238
+ time: '2024-08-07T23:51:29.0000000+00:00'
From f2e6d1a657588be369a9ac0c2a19c9a4962170af Mon Sep 17 00:00:00 2001
From: dootythefrooty <137359445+dootythefrooty@users.noreply.github.com>
Date: Wed, 7 Aug 2024 16:54:13 -0700
Subject: [PATCH 25/57] New Plant Trait : Bluespace Slips (#674)
# Description
Adds a new trait which plants can mutate to have.
It teleports both the slippee and the produce to a random location
within a radius determined by how potent the produce is.
Inert unless the plant also has the slippery trait.
~~Probably very stinky code considering this is my first time dealing
with c#.~~
---
Media
https://github.com/user-attachments/assets/cd22756d-ea5e-4a30-8043-c991549c9019
---
# Changelog
:cl:
- add: Added Bluespace Slips, a plant trait that teleports you randomly
if you slip.
---
.../Components/TeleportingTraitComponent.cs | 31 +++++++++++
Content.Server/Botany/SeedPrototype.cs | 8 ++-
.../Botany/Systems/BotanySystem.Seed.cs | 5 ++
.../Botany/Systems/MutationSystem.cs | 6 ++-
.../Botany/Systems/TeleportingTraitSystem.cs | 51 +++++++++++++++++++
.../teleporting-trait-component.ftl | 1 +
6 files changed, 99 insertions(+), 3 deletions(-)
create mode 100644 Content.Server/Botany/Components/TeleportingTraitComponent.cs
create mode 100644 Content.Server/Botany/Systems/TeleportingTraitSystem.cs
create mode 100644 Resources/Locale/en-US/botany/components/teleporting-trait-component.ftl
diff --git a/Content.Server/Botany/Components/TeleportingTraitComponent.cs b/Content.Server/Botany/Components/TeleportingTraitComponent.cs
new file mode 100644
index 00000000000..b5f79ac8c7e
--- /dev/null
+++ b/Content.Server/Botany/Components/TeleportingTraitComponent.cs
@@ -0,0 +1,31 @@
+namespace Content.Server.Botany
+{
+ [RegisterComponent]
+
+ public sealed partial class TeleportingTraitComponent : Component
+ {
+ ///
+ /// Teleportation radius of produce.
+ ///
+ [DataField]
+ public float ProduceTeleportRadius;
+
+ ///
+ /// How much to divide the potency.
+ ///
+ [DataField]
+ public float PotencyDivide = 10f;
+
+ ///
+ /// Potency of fruit.
+ ///
+ [DataField]
+ public float Potency;
+
+ ///
+ /// Chance of deletion.
+ ///
+ [DataField]
+ public float DeletionChance = .5f;
+ }
+}
diff --git a/Content.Server/Botany/SeedPrototype.cs b/Content.Server/Botany/SeedPrototype.cs
index 1a3c0473a48..2644da2a3b0 100644
--- a/Content.Server/Botany/SeedPrototype.cs
+++ b/Content.Server/Botany/SeedPrototype.cs
@@ -205,6 +205,11 @@ public partial class SeedData
///
[DataField("ligneous")] public bool Ligneous;
+ ///
+ /// If true, teleports both fruit and player if slippable.
+ ///
+ [DataField] public bool Teleporting;
+
// No, I'm not removing these.
// if you re-add these, make sure that they get cloned.
//public PlantSpread Spread { get; set; }
@@ -215,7 +220,6 @@ public partial class SeedData
//public bool Hematophage { get; set; }
//public bool Thorny { get; set; }
//public bool Stinging { get; set; }
- // public bool Teleporting { get; set; }
// public PlantJuicy Juicy { get; set; }
#endregion
@@ -295,6 +299,7 @@ public SeedData Clone()
Slip = Slip,
Sentient = Sentient,
Ligneous = Ligneous,
+ Teleporting = Teleporting,
PlantRsi = PlantRsi,
PlantIconState = PlantIconState,
@@ -358,6 +363,7 @@ public SeedData SpeciesChange(SeedData other)
Slip = Slip,
Sentient = Sentient,
Ligneous = Ligneous,
+ Teleporting = Teleporting,
PlantRsi = other.PlantRsi,
PlantIconState = other.PlantIconState,
diff --git a/Content.Server/Botany/Systems/BotanySystem.Seed.cs b/Content.Server/Botany/Systems/BotanySystem.Seed.cs
index f64fcb3c43d..82190d1c443 100644
--- a/Content.Server/Botany/Systems/BotanySystem.Seed.cs
+++ b/Content.Server/Botany/Systems/BotanySystem.Seed.cs
@@ -207,6 +207,11 @@ public IEnumerable GenerateProduct(SeedData proto, EntityCoordinates
var collisionWake = EnsureComp(entity);
_colWakeSystem.SetEnabled(entity, false, collisionWake);
}
+ if (proto.Teleporting)
+ {
+ var teleporting = EnsureComp(entity);
+ TeleportingTraitSystem.SetPotencyRadius(proto.Potency, teleporting);
+ }
}
return products;
diff --git a/Content.Server/Botany/Systems/MutationSystem.cs b/Content.Server/Botany/Systems/MutationSystem.cs
index c7ce5d47efa..4780f8b3310 100644
--- a/Content.Server/Botany/Systems/MutationSystem.cs
+++ b/Content.Server/Botany/Systems/MutationSystem.cs
@@ -40,7 +40,7 @@ public void MutateSeed(ref SeedData seed, float severity)
}
// Add up everything in the bits column and put the number here.
- const int totalbits = 275;
+ const int totalbits = 285;
// Tolerances (55)
MutateFloat(ref seed.NutrientConsumption , 0.05f, 1.2f, 5, totalbits, severity);
@@ -66,11 +66,12 @@ public void MutateSeed(ref SeedData seed, float severity)
// Kill the plant (30)
MutateBool(ref seed.Viable , false, 30, totalbits, severity);
- // Fun (90)
+ // Fun (100)
MutateBool(ref seed.Seedless , true , 10, totalbits, severity);
MutateBool(ref seed.Slip , true , 10, totalbits, severity);
MutateBool(ref seed.Sentient , true , 10, totalbits, severity);
MutateBool(ref seed.Ligneous , true , 10, totalbits, severity);
+ MutateBool(ref seed.Teleporting , true , 10, totalbits, severity);
MutateBool(ref seed.Bioluminescent, true , 10, totalbits, severity);
MutateBool(ref seed.TurnIntoKudzu , true , 10, totalbits, severity);
MutateBool(ref seed.CanScream , true , 10, totalbits, severity);
@@ -120,6 +121,7 @@ public SeedData Cross(SeedData a, SeedData b)
CrossBool(ref result.Slip, a.Slip);
CrossBool(ref result.Sentient, a.Sentient);
CrossBool(ref result.Ligneous, a.Ligneous);
+ CrossBool(ref result.Teleporting, a.Teleporting);
CrossBool(ref result.Bioluminescent, a.Bioluminescent);
CrossBool(ref result.TurnIntoKudzu, a.TurnIntoKudzu);
CrossBool(ref result.CanScream, a.CanScream);
diff --git a/Content.Server/Botany/Systems/TeleportingTraitSystem.cs b/Content.Server/Botany/Systems/TeleportingTraitSystem.cs
new file mode 100644
index 00000000000..7aa9a6a82ab
--- /dev/null
+++ b/Content.Server/Botany/Systems/TeleportingTraitSystem.cs
@@ -0,0 +1,51 @@
+using Robust.Shared.Random;
+using Content.Shared.Slippery;
+using Content.Server.Fluids.EntitySystems;
+using Content.Shared.Chemistry.Components;
+using Content.Shared.Popups;
+
+namespace Content.Server.Botany.Systems;
+
+public sealed class TeleportingTraitSystem : EntitySystem
+{
+ [Dependency] private readonly SharedTransformSystem _xform = default!;
+ [Dependency] private readonly IRobustRandom _random = default!;
+ [Dependency] private readonly SharedPopupSystem _popup = default!;
+ [Dependency] private readonly PuddleSystem _puddle = default!;
+
+ public override void Initialize()
+ {
+ base.Initialize();
+
+ SubscribeLocalEvent(Teleport);
+ }
+
+ // sets the potency and the radius
+ public static void SetPotencyRadius(float seedPotency, TeleportingTraitComponent comp)
+ {
+ comp.Potency = seedPotency;
+ comp.ProduceTeleportRadius = comp.Potency / comp.PotencyDivide;
+ }
+
+ // teleports both the produce and the foolish fool who slipped on it to a random postion limited by the radius
+ private void Teleport(EntityUid uid, TeleportingTraitComponent comp, ref SlipEvent args)
+ {
+ var coordinates = Transform(uid).Coordinates;
+ _xform.SetCoordinates(uid, coordinates.Offset(_random.NextVector2(comp.ProduceTeleportRadius)));
+ _popup.PopupEntity(Loc.GetString("teleporting-trait-component-slipped"), args.Slipped, args.Slipped, PopupType.SmallCaution);
+ _xform.SetCoordinates(args.Slipped, coordinates.Offset(_random.NextVector2(comp.ProduceTeleportRadius)));
+ VanishProbablity(uid, comp);
+ }
+
+ // chance of being deleted and then spawnin the goop
+ private void VanishProbablity(EntityUid uid, TeleportingTraitComponent comp)
+ {
+ if (!_random.Prob(comp.DeletionChance))
+ return;
+ Solution vanishSolution = new();
+ vanishSolution.AddReagent("Slime", comp.Potency / 2);
+ _puddle.TrySpillAt(uid, vanishSolution, out _);
+ QueueDel(uid);
+ }
+}
+
diff --git a/Resources/Locale/en-US/botany/components/teleporting-trait-component.ftl b/Resources/Locale/en-US/botany/components/teleporting-trait-component.ftl
new file mode 100644
index 00000000000..c38b8605f2b
--- /dev/null
+++ b/Resources/Locale/en-US/botany/components/teleporting-trait-component.ftl
@@ -0,0 +1 @@
+teleporting-trait-component-slipped = You slip through bluespace!
From a243fca7063844cb2ec13bafce52e216f94f5cb9 Mon Sep 17 00:00:00 2001
From: SimpleStation Changelogs
Date: Wed, 7 Aug 2024 23:54:35 +0000
Subject: [PATCH 26/57] Automatic Changelog Update (#674)
---
Resources/Changelog/Changelog.yml | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/Resources/Changelog/Changelog.yml b/Resources/Changelog/Changelog.yml
index bb19e08360c..0aff29d638c 100644
--- a/Resources/Changelog/Changelog.yml
+++ b/Resources/Changelog/Changelog.yml
@@ -5095,3 +5095,11 @@ Entries:
message: Fixed the RegenMesh recipe
id: 6238
time: '2024-08-07T23:51:29.0000000+00:00'
+- author: dootythefrooty
+ changes:
+ - type: Add
+ message: >-
+ Added Bluespace Slips, a plant trait that teleports you randomly if you
+ slip.
+ id: 6239
+ time: '2024-08-07T23:54:13.0000000+00:00'
From 4c4b37aacca1448842155a9a1bafa0d002e1c890 Mon Sep 17 00:00:00 2001
From: VMSolidus
Date: Wed, 7 Aug 2024 20:09:41 -0400
Subject: [PATCH 27/57] 1984 Dresser Arbitrage 2, Electric Boogaloo (#682)
# Description
@DEATHB4DEFEAT
![image](https://github.com/user-attachments/assets/0ee6b468-7959-4ebd-8202-6fbc2794511c)
No changelog because this isn't player facing.
---
Resources/Prototypes/Entities/Structures/Furniture/dresser.yml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/Resources/Prototypes/Entities/Structures/Furniture/dresser.yml b/Resources/Prototypes/Entities/Structures/Furniture/dresser.yml
index 6c50b334091..1d0a25ed852 100644
--- a/Resources/Prototypes/Entities/Structures/Furniture/dresser.yml
+++ b/Resources/Prototypes/Entities/Structures/Furniture/dresser.yml
@@ -52,7 +52,7 @@
suffix: Filled
components:
- type: StaticPrice
- price: 5
+ price: 15
- type: StorageFill
contents:
- id: ClothingNeckLGBTPin
From 9b112609e009fedccf7adb70292af914752fcd2c Mon Sep 17 00:00:00 2001
From: VMSolidus
Date: Wed, 7 Aug 2024 20:10:21 -0400
Subject: [PATCH 28/57] Respace Psionics Audio & Localization Files (#700)
# Description
Effectively Part 2 of splitting up the Psionic Refactor. This PR is
partially respacing the non-C# side of Psionics code, such as
Localizations, Audio files, some entities. I'm not respacing all of them
in a single sitting because just finding them all is a complete pain in
the ass.
No media because there's nothing to show.
No changelog because this isn't player facing.
---
.../Ambience/Objects/prober_hum_dangerous.ogg | Bin
.../Ambience/Objects/prober_hum_high.ogg | Bin
.../Ambience/Objects/prober_hum_low.ogg | Bin
.../Ambience/Objects/prober_hum_moderate.ogg | Bin
.../Psionics/attributions.yml | 0
.../Psionics/heartbeat_fast.ogg | Bin
.../{nyanotrasen => }/abilities/psionic.ftl | 0
.../en-US/cartridge-loader/cartridges.ftl | 5 +
.../en-US/chemistry/reagent-effects.ftl | 2 +-
.../en-US/guidebook/chemistry/effects.ftl | 18 +++
Resources/Locale/en-US/guidebook/guides.ftl | 4 +
.../cartridge-loader/cartridges.ftl | 4 -
.../en-US/nyanotrasen/chemistry/effects.ftl | 18 ---
.../en-US/nyanotrasen/guidebook/guides.ftl | 3 -
.../en-US/nyanotrasen/reagents/toxins.ftl | 8 -
.../xenoarchaeology/artifact-hints.ftl | 1 -
.../paper => psionics}/book-epistemics.ftl | 0
.../cargo => psionics}/cargo-epistemics.ftl | 0
.../{nyanotrasen => }/psionics/death-gasp.ftl | 0
.../crates => psionics}/epistemics-crates.ftl | 0
.../events => psionics}/noospheric-storm.ftl | 0
.../objectives.ftl} | 0
.../research => psionics}/oracle.ftl | 0
.../psionics/psionic-chat.ftl | 0
.../psionics/psionic-commands.ftl | 0
.../paper => psionics}/stamp-component.ftl | 0
.../research => psionics}/technologies.ftl | 0
.../Locale/en-US/reagents/meta/toxins.ftl | 9 ++
.../{nyanotrasen => }/reagents/psionic.ftl | 0
.../en-US/xenoarchaeology/artifact-hints.ftl | 3 +
Resources/Prototypes/Actions/psionics.yml | 136 +++++++++++++++++
.../Prototypes/Nyanotrasen/Actions/types.yml | 139 +-----------------
.../Structures/Research/glimmer_prober.yml | 14 +-
.../Interface/VerbIcons/dispel.png | Bin
.../Interface/VerbIcons/dispel.png.yml | 0
.../Interface/VerbIcons/license.txt | 0
.../Interface/VerbIcons/mass_sleep.png | Bin
.../Interface/VerbIcons/mass_sleep.png.yml | 0
.../Interface/VerbIcons/metapsionic.png | Bin
.../Interface/VerbIcons/metapsionic.png.yml | 0
.../Interface/VerbIcons/mind_swap.png | Bin
.../Interface/VerbIcons/mind_swap.png.yml | 0
.../Interface/VerbIcons/mind_swap_return.png | Bin
.../VerbIcons/mind_swap_return.png.yml | 0
.../Interface/VerbIcons/noospheric_zap.png | Bin
.../VerbIcons/noospheric_zap.png.yml | 0
.../VerbIcons/psionic_invisibility.png | Bin
.../VerbIcons/psionic_invisibility.png.yml | 0
.../VerbIcons/psionic_invisibility_off.png | Bin
.../psionic_invisibility_off.png.yml | 0
.../VerbIcons/psionic_regeneration.png | Bin
.../VerbIcons/psionic_regeneration.png.yml | 0
.../Interface/VerbIcons/pyrokinesis.png | Bin
.../Interface/VerbIcons/pyrokinesis.png.yml | 0
.../Interface/VerbIcons/telegnosis.png | Bin
.../Interface/VerbIcons/telegnosis.png.yml | 0
56 files changed, 184 insertions(+), 180 deletions(-)
rename Resources/Audio/{Nyanotrasen => }/Ambience/Objects/prober_hum_dangerous.ogg (100%)
rename Resources/Audio/{Nyanotrasen => }/Ambience/Objects/prober_hum_high.ogg (100%)
rename Resources/Audio/{Nyanotrasen => }/Ambience/Objects/prober_hum_low.ogg (100%)
rename Resources/Audio/{Nyanotrasen => }/Ambience/Objects/prober_hum_moderate.ogg (100%)
rename Resources/Audio/{Nyanotrasen => }/Psionics/attributions.yml (100%)
rename Resources/Audio/{Nyanotrasen => }/Psionics/heartbeat_fast.ogg (100%)
rename Resources/Locale/en-US/{nyanotrasen => }/abilities/psionic.ftl (100%)
delete mode 100644 Resources/Locale/en-US/nyanotrasen/cartridge-loader/cartridges.ftl
delete mode 100644 Resources/Locale/en-US/nyanotrasen/guidebook/guides.ftl
delete mode 100644 Resources/Locale/en-US/nyanotrasen/reagents/toxins.ftl
delete mode 100644 Resources/Locale/en-US/nyanotrasen/xenoarchaeology/artifact-hints.ftl
rename Resources/Locale/en-US/{nyanotrasen/paper => psionics}/book-epistemics.ftl (100%)
rename Resources/Locale/en-US/{nyanotrasen/prototypes/catalog/cargo => psionics}/cargo-epistemics.ftl (100%)
rename Resources/Locale/en-US/{nyanotrasen => }/psionics/death-gasp.ftl (100%)
rename Resources/Locale/en-US/{nyanotrasen/prototypes/catalog/fills/crates => psionics}/epistemics-crates.ftl (100%)
rename Resources/Locale/en-US/{nyanotrasen/station-events/events => psionics}/noospheric-storm.ftl (100%)
rename Resources/Locale/en-US/{nyanotrasen/objectives/conditions/conditions.ftl => psionics/objectives.ftl} (100%)
rename Resources/Locale/en-US/{nyanotrasen/research => psionics}/oracle.ftl (100%)
rename Resources/Locale/en-US/{nyanotrasen => }/psionics/psionic-chat.ftl (100%)
rename Resources/Locale/en-US/{nyanotrasen => }/psionics/psionic-commands.ftl (100%)
rename Resources/Locale/en-US/{nyanotrasen/paper => psionics}/stamp-component.ftl (100%)
rename Resources/Locale/en-US/{nyanotrasen/research => psionics}/technologies.ftl (100%)
rename Resources/Locale/en-US/{nyanotrasen => }/reagents/psionic.ftl (100%)
create mode 100644 Resources/Prototypes/Actions/psionics.yml
rename Resources/Textures/{Nyanotrasen => }/Interface/VerbIcons/dispel.png (100%)
rename Resources/Textures/{Nyanotrasen => }/Interface/VerbIcons/dispel.png.yml (100%)
rename Resources/Textures/{Nyanotrasen => }/Interface/VerbIcons/license.txt (100%)
rename Resources/Textures/{Nyanotrasen => }/Interface/VerbIcons/mass_sleep.png (100%)
rename Resources/Textures/{Nyanotrasen => }/Interface/VerbIcons/mass_sleep.png.yml (100%)
rename Resources/Textures/{Nyanotrasen => }/Interface/VerbIcons/metapsionic.png (100%)
rename Resources/Textures/{Nyanotrasen => }/Interface/VerbIcons/metapsionic.png.yml (100%)
rename Resources/Textures/{Nyanotrasen => }/Interface/VerbIcons/mind_swap.png (100%)
rename Resources/Textures/{Nyanotrasen => }/Interface/VerbIcons/mind_swap.png.yml (100%)
rename Resources/Textures/{Nyanotrasen => }/Interface/VerbIcons/mind_swap_return.png (100%)
rename Resources/Textures/{Nyanotrasen => }/Interface/VerbIcons/mind_swap_return.png.yml (100%)
rename Resources/Textures/{Nyanotrasen => }/Interface/VerbIcons/noospheric_zap.png (100%)
rename Resources/Textures/{Nyanotrasen => }/Interface/VerbIcons/noospheric_zap.png.yml (100%)
rename Resources/Textures/{Nyanotrasen => }/Interface/VerbIcons/psionic_invisibility.png (100%)
rename Resources/Textures/{Nyanotrasen => }/Interface/VerbIcons/psionic_invisibility.png.yml (100%)
rename Resources/Textures/{Nyanotrasen => }/Interface/VerbIcons/psionic_invisibility_off.png (100%)
rename Resources/Textures/{Nyanotrasen => }/Interface/VerbIcons/psionic_invisibility_off.png.yml (100%)
rename Resources/Textures/{Nyanotrasen => }/Interface/VerbIcons/psionic_regeneration.png (100%)
rename Resources/Textures/{Nyanotrasen => }/Interface/VerbIcons/psionic_regeneration.png.yml (100%)
rename Resources/Textures/{Nyanotrasen => }/Interface/VerbIcons/pyrokinesis.png (100%)
rename Resources/Textures/{Nyanotrasen => }/Interface/VerbIcons/pyrokinesis.png.yml (100%)
rename Resources/Textures/{Nyanotrasen => }/Interface/VerbIcons/telegnosis.png (100%)
rename Resources/Textures/{Nyanotrasen => }/Interface/VerbIcons/telegnosis.png.yml (100%)
diff --git a/Resources/Audio/Nyanotrasen/Ambience/Objects/prober_hum_dangerous.ogg b/Resources/Audio/Ambience/Objects/prober_hum_dangerous.ogg
similarity index 100%
rename from Resources/Audio/Nyanotrasen/Ambience/Objects/prober_hum_dangerous.ogg
rename to Resources/Audio/Ambience/Objects/prober_hum_dangerous.ogg
diff --git a/Resources/Audio/Nyanotrasen/Ambience/Objects/prober_hum_high.ogg b/Resources/Audio/Ambience/Objects/prober_hum_high.ogg
similarity index 100%
rename from Resources/Audio/Nyanotrasen/Ambience/Objects/prober_hum_high.ogg
rename to Resources/Audio/Ambience/Objects/prober_hum_high.ogg
diff --git a/Resources/Audio/Nyanotrasen/Ambience/Objects/prober_hum_low.ogg b/Resources/Audio/Ambience/Objects/prober_hum_low.ogg
similarity index 100%
rename from Resources/Audio/Nyanotrasen/Ambience/Objects/prober_hum_low.ogg
rename to Resources/Audio/Ambience/Objects/prober_hum_low.ogg
diff --git a/Resources/Audio/Nyanotrasen/Ambience/Objects/prober_hum_moderate.ogg b/Resources/Audio/Ambience/Objects/prober_hum_moderate.ogg
similarity index 100%
rename from Resources/Audio/Nyanotrasen/Ambience/Objects/prober_hum_moderate.ogg
rename to Resources/Audio/Ambience/Objects/prober_hum_moderate.ogg
diff --git a/Resources/Audio/Nyanotrasen/Psionics/attributions.yml b/Resources/Audio/Psionics/attributions.yml
similarity index 100%
rename from Resources/Audio/Nyanotrasen/Psionics/attributions.yml
rename to Resources/Audio/Psionics/attributions.yml
diff --git a/Resources/Audio/Nyanotrasen/Psionics/heartbeat_fast.ogg b/Resources/Audio/Psionics/heartbeat_fast.ogg
similarity index 100%
rename from Resources/Audio/Nyanotrasen/Psionics/heartbeat_fast.ogg
rename to Resources/Audio/Psionics/heartbeat_fast.ogg
diff --git a/Resources/Locale/en-US/nyanotrasen/abilities/psionic.ftl b/Resources/Locale/en-US/abilities/psionic.ftl
similarity index 100%
rename from Resources/Locale/en-US/nyanotrasen/abilities/psionic.ftl
rename to Resources/Locale/en-US/abilities/psionic.ftl
diff --git a/Resources/Locale/en-US/cartridge-loader/cartridges.ftl b/Resources/Locale/en-US/cartridge-loader/cartridges.ftl
index f5cda2f2a18..cfa1b1424d2 100644
--- a/Resources/Locale/en-US/cartridge-loader/cartridges.ftl
+++ b/Resources/Locale/en-US/cartridge-loader/cartridges.ftl
@@ -19,3 +19,8 @@ log-probe-scan = Downloaded logs from {$device}!
log-probe-label-time = Time
log-probe-label-accessor = Accessed by
log-probe-label-number = #
+
+glimmer-monitor-program-name = Glimmer Monitor
+glimmer-monitor-current-glimmer = Current Glimmer: {$glimmer}Ψ
+glimmer-monitor-interval = Interval
+glimmer-monitor-sync = Sync
diff --git a/Resources/Locale/en-US/chemistry/reagent-effects.ftl b/Resources/Locale/en-US/chemistry/reagent-effects.ftl
index 537770b35a5..cb55db111d6 100644
--- a/Resources/Locale/en-US/chemistry/reagent-effects.ftl
+++ b/Resources/Locale/en-US/chemistry/reagent-effects.ftl
@@ -1 +1 @@
-effect-sleepy = You feel a bit sleepy.
+effect-sleepy = You feel a bit sleepy.
\ No newline at end of file
diff --git a/Resources/Locale/en-US/guidebook/chemistry/effects.ftl b/Resources/Locale/en-US/guidebook/chemistry/effects.ftl
index b6f45d23862..db2f3816f6b 100644
--- a/Resources/Locale/en-US/guidebook/chemistry/effects.ftl
+++ b/Resources/Locale/en-US/guidebook/chemistry/effects.ftl
@@ -344,3 +344,21 @@ reagent-effect-guidebook-missing =
[1] Causes
*[other] cause
} an unknown effect as nobody has written this effect yet
+
+reagent-effect-guidebook-change-glimmer-reaction-effect =
+ { $chance ->
+ [1] Modifies
+ *[other] modify
+ } the glimmer count by {$count} points
+
+reagent-effect-guidebook-chem-remove-psionic =
+ { $chance ->
+ [1] Removes
+ *[other] remove
+ } psionic powers
+
+reagent-effect-guidebook-chem-reroll-psionic =
+ { $chance ->
+ [1] Allows
+ *[other] allow
+ } a chance to get a different psionic power
\ No newline at end of file
diff --git a/Resources/Locale/en-US/guidebook/guides.ftl b/Resources/Locale/en-US/guidebook/guides.ftl
index 72746dbf51f..968d3b20038 100644
--- a/Resources/Locale/en-US/guidebook/guides.ftl
+++ b/Resources/Locale/en-US/guidebook/guides.ftl
@@ -70,3 +70,7 @@ guide-entry-space-ninja = Space Ninja
guide-entry-writing = Writing
guide-entry-glossary = Glossary
+
+guide-entry-altars-golemancy = Altars and Golemancy
+guide-entry-psionics = Psionics
+guide-entry-reverse-engineering = Reverse Engineering
diff --git a/Resources/Locale/en-US/nyanotrasen/cartridge-loader/cartridges.ftl b/Resources/Locale/en-US/nyanotrasen/cartridge-loader/cartridges.ftl
deleted file mode 100644
index 906466bc10f..00000000000
--- a/Resources/Locale/en-US/nyanotrasen/cartridge-loader/cartridges.ftl
+++ /dev/null
@@ -1,4 +0,0 @@
-glimmer-monitor-program-name = Glimmer Monitor
-glimmer-monitor-current-glimmer = Current Glimmer: {$glimmer}Ψ
-glimmer-monitor-interval = Interval
-glimmer-monitor-sync = Sync
diff --git a/Resources/Locale/en-US/nyanotrasen/chemistry/effects.ftl b/Resources/Locale/en-US/nyanotrasen/chemistry/effects.ftl
index 19aeebee69e..8d0c96f13c5 100644
--- a/Resources/Locale/en-US/nyanotrasen/chemistry/effects.ftl
+++ b/Resources/Locale/en-US/nyanotrasen/chemistry/effects.ftl
@@ -1,21 +1,3 @@
-reagent-effect-guidebook-change-glimmer-reaction-effect =
- { $chance ->
- [1] Modifies
- *[other] modify
- } the glimmer count by {$count} points
-
-reagent-effect-guidebook-chem-remove-psionic =
- { $chance ->
- [1] Removes
- *[other] remove
- } psionic powers
-
-reagent-effect-guidebook-chem-reroll-psionic =
- { $chance ->
- [1] Allows
- *[other] allow
- } a chance to get a different psionic power
-
## Disease System support
reagent-effect-guidebook-chem-miasma-pool =
diff --git a/Resources/Locale/en-US/nyanotrasen/guidebook/guides.ftl b/Resources/Locale/en-US/nyanotrasen/guidebook/guides.ftl
deleted file mode 100644
index 60166b82598..00000000000
--- a/Resources/Locale/en-US/nyanotrasen/guidebook/guides.ftl
+++ /dev/null
@@ -1,3 +0,0 @@
-guide-entry-altars-golemancy = Altars and Golemancy
-guide-entry-psionics = Psionics
-guide-entry-reverse-engineering = Reverse Engineering
diff --git a/Resources/Locale/en-US/nyanotrasen/reagents/toxins.ftl b/Resources/Locale/en-US/nyanotrasen/reagents/toxins.ftl
deleted file mode 100644
index 43e35c191c9..00000000000
--- a/Resources/Locale/en-US/nyanotrasen/reagents/toxins.ftl
+++ /dev/null
@@ -1,8 +0,0 @@
-reagent-name-soulbreaker-toxin = soulbreaker toxin
-reagent-desc-soulbreaker-toxin = An anti-psionic about 4 times as powerful as mindbreaker toxin.
-
-reagent-name-lotophagoi-oil = lotophagoi oil
-reagent-desc-lotophagoi-oil = A super potent drug that is much better at inducing psionics than normal hallucinogens, but with worse side effects.
-
-reagent-name-ectoplasm = ectoplasm
-reagent-desc-ectoplasm = The physical component of semi-corporeal spirits.
diff --git a/Resources/Locale/en-US/nyanotrasen/xenoarchaeology/artifact-hints.ftl b/Resources/Locale/en-US/nyanotrasen/xenoarchaeology/artifact-hints.ftl
deleted file mode 100644
index e07aa0a0322..00000000000
--- a/Resources/Locale/en-US/nyanotrasen/xenoarchaeology/artifact-hints.ftl
+++ /dev/null
@@ -1 +0,0 @@
-artifact-effect-hint-psionic = Noöspheric disturbance
diff --git a/Resources/Locale/en-US/nyanotrasen/paper/book-epistemics.ftl b/Resources/Locale/en-US/psionics/book-epistemics.ftl
similarity index 100%
rename from Resources/Locale/en-US/nyanotrasen/paper/book-epistemics.ftl
rename to Resources/Locale/en-US/psionics/book-epistemics.ftl
diff --git a/Resources/Locale/en-US/nyanotrasen/prototypes/catalog/cargo/cargo-epistemics.ftl b/Resources/Locale/en-US/psionics/cargo-epistemics.ftl
similarity index 100%
rename from Resources/Locale/en-US/nyanotrasen/prototypes/catalog/cargo/cargo-epistemics.ftl
rename to Resources/Locale/en-US/psionics/cargo-epistemics.ftl
diff --git a/Resources/Locale/en-US/nyanotrasen/psionics/death-gasp.ftl b/Resources/Locale/en-US/psionics/death-gasp.ftl
similarity index 100%
rename from Resources/Locale/en-US/nyanotrasen/psionics/death-gasp.ftl
rename to Resources/Locale/en-US/psionics/death-gasp.ftl
diff --git a/Resources/Locale/en-US/nyanotrasen/prototypes/catalog/fills/crates/epistemics-crates.ftl b/Resources/Locale/en-US/psionics/epistemics-crates.ftl
similarity index 100%
rename from Resources/Locale/en-US/nyanotrasen/prototypes/catalog/fills/crates/epistemics-crates.ftl
rename to Resources/Locale/en-US/psionics/epistemics-crates.ftl
diff --git a/Resources/Locale/en-US/nyanotrasen/station-events/events/noospheric-storm.ftl b/Resources/Locale/en-US/psionics/noospheric-storm.ftl
similarity index 100%
rename from Resources/Locale/en-US/nyanotrasen/station-events/events/noospheric-storm.ftl
rename to Resources/Locale/en-US/psionics/noospheric-storm.ftl
diff --git a/Resources/Locale/en-US/nyanotrasen/objectives/conditions/conditions.ftl b/Resources/Locale/en-US/psionics/objectives.ftl
similarity index 100%
rename from Resources/Locale/en-US/nyanotrasen/objectives/conditions/conditions.ftl
rename to Resources/Locale/en-US/psionics/objectives.ftl
diff --git a/Resources/Locale/en-US/nyanotrasen/research/oracle.ftl b/Resources/Locale/en-US/psionics/oracle.ftl
similarity index 100%
rename from Resources/Locale/en-US/nyanotrasen/research/oracle.ftl
rename to Resources/Locale/en-US/psionics/oracle.ftl
diff --git a/Resources/Locale/en-US/nyanotrasen/psionics/psionic-chat.ftl b/Resources/Locale/en-US/psionics/psionic-chat.ftl
similarity index 100%
rename from Resources/Locale/en-US/nyanotrasen/psionics/psionic-chat.ftl
rename to Resources/Locale/en-US/psionics/psionic-chat.ftl
diff --git a/Resources/Locale/en-US/nyanotrasen/psionics/psionic-commands.ftl b/Resources/Locale/en-US/psionics/psionic-commands.ftl
similarity index 100%
rename from Resources/Locale/en-US/nyanotrasen/psionics/psionic-commands.ftl
rename to Resources/Locale/en-US/psionics/psionic-commands.ftl
diff --git a/Resources/Locale/en-US/nyanotrasen/paper/stamp-component.ftl b/Resources/Locale/en-US/psionics/stamp-component.ftl
similarity index 100%
rename from Resources/Locale/en-US/nyanotrasen/paper/stamp-component.ftl
rename to Resources/Locale/en-US/psionics/stamp-component.ftl
diff --git a/Resources/Locale/en-US/nyanotrasen/research/technologies.ftl b/Resources/Locale/en-US/psionics/technologies.ftl
similarity index 100%
rename from Resources/Locale/en-US/nyanotrasen/research/technologies.ftl
rename to Resources/Locale/en-US/psionics/technologies.ftl
diff --git a/Resources/Locale/en-US/reagents/meta/toxins.ftl b/Resources/Locale/en-US/reagents/meta/toxins.ftl
index eb8422e66cf..fa2a813d1d6 100644
--- a/Resources/Locale/en-US/reagents/meta/toxins.ftl
+++ b/Resources/Locale/en-US/reagents/meta/toxins.ftl
@@ -75,3 +75,12 @@ reagent-desc-vestine = Has an adverse reaction within the body causing major jit
reagent-name-tazinide = tazinide
reagent-desc-tazinide = A highly dangerous metallic mixture which can interfere with most movement through an electrifying current.
+
+reagent-name-soulbreaker-toxin = soulbreaker toxin
+reagent-desc-soulbreaker-toxin = An anti-psionic about 4 times as powerful as mindbreaker toxin.
+
+reagent-name-lotophagoi-oil = lotophagoi oil
+reagent-desc-lotophagoi-oil = A super potent drug that is much better at inducing psionics than normal hallucinogens, but with worse side effects.
+
+reagent-name-ectoplasm = ectoplasm
+reagent-desc-ectoplasm = The physical component of semi-corporeal spirits.
diff --git a/Resources/Locale/en-US/nyanotrasen/reagents/psionic.ftl b/Resources/Locale/en-US/reagents/psionic.ftl
similarity index 100%
rename from Resources/Locale/en-US/nyanotrasen/reagents/psionic.ftl
rename to Resources/Locale/en-US/reagents/psionic.ftl
diff --git a/Resources/Locale/en-US/xenoarchaeology/artifact-hints.ftl b/Resources/Locale/en-US/xenoarchaeology/artifact-hints.ftl
index 98dfa89fa9f..a139c2036e1 100644
--- a/Resources/Locale/en-US/xenoarchaeology/artifact-hints.ftl
+++ b/Resources/Locale/en-US/xenoarchaeology/artifact-hints.ftl
@@ -40,3 +40,6 @@ artifact-trigger-hint-regular-gases = Standard atmospheric gases
artifact-trigger-hint-plasma = Gaseous plasma
artifact-trigger-hint-land = Active deceleration
artifact-trigger-hint-examine = Examination
+
+# Psionic Effects
+artifact-effect-hint-psionic = Noöspheric disturbance
diff --git a/Resources/Prototypes/Actions/psionics.yml b/Resources/Prototypes/Actions/psionics.yml
new file mode 100644
index 00000000000..62a7fc014cd
--- /dev/null
+++ b/Resources/Prototypes/Actions/psionics.yml
@@ -0,0 +1,136 @@
+- type: entity
+ id: ActionDispel
+ name: action-name-dispel
+ description: action-description-dispel
+ noSpawn: true
+ components:
+ - type: EntityTargetAction
+ icon: Interface/VerbIcons/dispel.png
+ useDelay: 45
+ checkCanAccess: false
+ range: 6
+ itemIconStyle: BigAction
+ canTargetSelf: false
+ event: !type:DispelPowerActionEvent
+
+- type: entity
+ id: ActionMassSleep
+ name: action-name-mass-sleep
+ description: action-description-mass-sleep
+ noSpawn: true
+ components:
+ - type: WorldTargetAction
+ icon: Interface/VerbIcons/mass_sleep.png
+ useDelay: 60
+ checkCanAccess: false
+ range: 8
+ itemIconStyle: BigAction
+ event: !type:MassSleepPowerActionEvent
+
+- type: entity
+ id: ActionMindSwap
+ name: action-name-mind-swap
+ description: action-description-mind-swap
+ noSpawn: true
+ components:
+ - type: EntityTargetAction
+ icon: Interface/VerbIcons/mind_swap.png
+ useDelay: 240
+ checkCanAccess: false
+ range: 8
+ itemIconStyle: BigAction
+ event: !type:MindSwapPowerActionEvent
+
+- type: entity
+ id: ActionMindSwapReturn
+ name: action-name-mind-swap-return
+ description: action-description-mind-swap-return
+ noSpawn: true
+ components:
+ - type: InstantAction
+ icon: Interface/VerbIcons/mind_swap_return.png
+ useDelay: 20
+ checkCanInteract: false
+ event: !type:MindSwapPowerReturnActionEvent
+
+- type: entity
+ id: ActionNoosphericZap
+ name: action-name-noospheric-zap
+ description: action-description-noospheric-zap
+ noSpawn: true
+ components:
+ - type: EntityTargetAction
+ icon: Interface/VerbIcons/noospheric_zap.png
+ useDelay: 100
+ range: 5
+ itemIconStyle: BigAction
+ event: !type:NoosphericZapPowerActionEvent
+
+- type: entity
+ id: ActionPyrokinesis
+ name: action-name-pyrokinesis
+ description: action-description-pyrokinesis
+ noSpawn: true
+ components:
+ - type: EntityTargetAction
+ icon: Interface/VerbIcons/pyrokinesis.png
+ useDelay: 50
+ range: 6
+ checkCanAccess: false
+ itemIconStyle: BigAction
+ event: !type:PyrokinesisPowerActionEvent
+
+- type: entity
+ id: ActionMetapsionic
+ name: action-name-metapsionic
+ description: action-description-metapsionic
+ noSpawn: true
+ components:
+ - type: InstantAction
+ icon: Interface/VerbIcons/metapsionic.png
+ useDelay: 45
+ event: !type:MetapsionicPowerActionEvent
+
+- type: entity
+ id: ActionPsionicRegeneration
+ name: action-name-psionic-regeneration
+ description: action-description-psionic-regeneration
+ noSpawn: true
+ components:
+ - type: InstantAction
+ icon: Interface/VerbIcons/psionic_regeneration.png
+ useDelay: 120
+ event: !type:PsionicRegenerationPowerActionEvent
+
+- type: entity
+ id: ActionTelegnosis
+ name: action-name-telegnosis
+ description: action-description-telegnosis
+ noSpawn: true
+ components:
+ - type: InstantAction
+ icon: Interface/VerbIcons/telegnosis.png
+ useDelay: 150
+ event: !type:TelegnosisPowerActionEvent
+
+- type: entity
+ id: ActionPsionicInvisibility
+ name: action-name-psionic-invisibility
+ description: action-description-psionic-invisibility
+ noSpawn: true
+ components:
+ - type: InstantAction
+ icon: Interface/VerbIcons/psionic_invisibility.png
+ useDelay: 120
+ event: !type:PsionicInvisibilityPowerActionEvent
+
+- type: entity
+ id: ActionPsionicInvisibilityUsed
+ name: action-name-psionic-invisibility-off
+ description: action-description-psionic-invisibility-off
+ noSpawn: true
+ components:
+ - type: InstantAction
+ icon: Interface/VerbIcons/psionic_invisibility_off.png
+ event: !type:RemovePsionicInvisibilityOffPowerActionEvent
+
diff --git a/Resources/Prototypes/Nyanotrasen/Actions/types.yml b/Resources/Prototypes/Nyanotrasen/Actions/types.yml
index 04002f5755d..cab8f4a1f4e 100644
--- a/Resources/Prototypes/Nyanotrasen/Actions/types.yml
+++ b/Resources/Prototypes/Nyanotrasen/Actions/types.yml
@@ -18,141 +18,4 @@
charges: 1
icon: { sprite: Nyanotrasen/Objects/Specific/Species/felinid.rsi, state: icon }
useDelay: 30
- event: !type:HairballActionEvent
-
-- type: entity
- id: ActionDispel
- name: action-name-dispel
- description: action-description-dispel
- noSpawn: true
- components:
- - type: EntityTargetAction
- icon: Nyanotrasen/Interface/VerbIcons/dispel.png
- useDelay: 45
- checkCanAccess: false
- range: 6
- itemIconStyle: BigAction
- canTargetSelf: false
- event: !type:DispelPowerActionEvent
-
-- type: entity
- id: ActionMassSleep
- name: action-name-mass-sleep
- description: action-description-mass-sleep
- noSpawn: true
- components:
- - type: WorldTargetAction
- icon: Nyanotrasen/Interface/VerbIcons/mass_sleep.png
- useDelay: 60
- checkCanAccess: false
- range: 8
- itemIconStyle: BigAction
- event: !type:MassSleepPowerActionEvent
-
-- type: entity
- id: ActionMindSwap
- name: action-name-mind-swap
- description: action-description-mind-swap
- noSpawn: true
- components:
- - type: EntityTargetAction
- icon: Nyanotrasen/Interface/VerbIcons/mind_swap.png
- useDelay: 240
- checkCanAccess: false
- range: 8
- itemIconStyle: BigAction
- event: !type:MindSwapPowerActionEvent
-
-- type: entity
- id: ActionMindSwapReturn
- name: action-name-mind-swap-return
- description: action-description-mind-swap-return
- noSpawn: true
- components:
- - type: InstantAction
- icon: Nyanotrasen/Interface/VerbIcons/mind_swap_return.png
- useDelay: 20
- checkCanInteract: false
- event: !type:MindSwapPowerReturnActionEvent
-
-- type: entity
- id: ActionNoosphericZap
- name: action-name-noospheric-zap
- description: action-description-noospheric-zap
- noSpawn: true
- components:
- - type: EntityTargetAction
- icon: Nyanotrasen/Interface/VerbIcons/noospheric_zap.png
- useDelay: 100
- range: 5
- itemIconStyle: BigAction
- event: !type:NoosphericZapPowerActionEvent
-
-- type: entity
- id: ActionPyrokinesis
- name: action-name-pyrokinesis
- description: action-description-pyrokinesis
- noSpawn: true
- components:
- - type: EntityTargetAction
- icon: Nyanotrasen/Interface/VerbIcons/pyrokinesis.png
- useDelay: 50
- range: 6
- checkCanAccess: false
- itemIconStyle: BigAction
- event: !type:PyrokinesisPowerActionEvent
-
-- type: entity
- id: ActionMetapsionic
- name: action-name-metapsionic
- description: action-description-metapsionic
- noSpawn: true
- components:
- - type: InstantAction
- icon: Nyanotrasen/Interface/VerbIcons/metapsionic.png
- useDelay: 45
- event: !type:MetapsionicPowerActionEvent
-
-- type: entity
- id: ActionPsionicRegeneration
- name: action-name-psionic-regeneration
- description: action-description-psionic-regeneration
- noSpawn: true
- components:
- - type: InstantAction
- icon: Nyanotrasen/Interface/VerbIcons/psionic_regeneration.png
- useDelay: 120
- event: !type:PsionicRegenerationPowerActionEvent
-
-- type: entity
- id: ActionTelegnosis
- name: action-name-telegnosis
- description: action-description-telegnosis
- noSpawn: true
- components:
- - type: InstantAction
- icon: Nyanotrasen/Interface/VerbIcons/telegnosis.png
- useDelay: 150
- event: !type:TelegnosisPowerActionEvent
-
-- type: entity
- id: ActionPsionicInvisibility
- name: action-name-psionic-invisibility
- description: action-description-psionic-invisibility
- noSpawn: true
- components:
- - type: InstantAction
- icon: Nyanotrasen/Interface/VerbIcons/psionic_invisibility.png
- useDelay: 120
- event: !type:PsionicInvisibilityPowerActionEvent
-
-- type: entity
- id: ActionPsionicInvisibilityUsed
- name: action-name-psionic-invisibility-off
- description: action-description-psionic-invisibility-off
- noSpawn: true
- components:
- - type: InstantAction
- icon: Nyanotrasen/Interface/VerbIcons/psionic_invisibility_off.png
- event: !type:RemovePsionicInvisibilityOffPowerActionEvent
-
+ event: !type:HairballActionEvent
\ No newline at end of file
diff --git a/Resources/Prototypes/Nyanotrasen/Entities/Structures/Research/glimmer_prober.yml b/Resources/Prototypes/Nyanotrasen/Entities/Structures/Research/glimmer_prober.yml
index e157f8b7ff4..102000f8b26 100644
--- a/Resources/Prototypes/Nyanotrasen/Entities/Structures/Research/glimmer_prober.yml
+++ b/Resources/Prototypes/Nyanotrasen/Entities/Structures/Research/glimmer_prober.yml
@@ -67,22 +67,22 @@
- type: AmbientSound
range: 6
volume: -6
- sound: /Audio/Nyanotrasen/Ambience/Objects/prober_hum_low.ogg
+ sound: /Audio/Ambience/Objects/prober_hum_low.ogg
- type: AmbientOnPowered
- type: GlimmerSound
glimmerTier:
Minimal:
- path: /Audio/Nyanotrasen/Ambience/Objects/prober_hum_low.ogg
+ path: /Audio/Ambience/Objects/prober_hum_low.ogg
Low:
- path: /Audio/Nyanotrasen/Ambience/Objects/prober_hum_low.ogg
+ path: /Audio/Ambience/Objects/prober_hum_low.ogg
Moderate:
- path: /Audio/Nyanotrasen/Ambience/Objects/prober_hum_moderate.ogg
+ path: /Audio/Ambience/Objects/prober_hum_moderate.ogg
High:
- path: /Audio/Nyanotrasen/Ambience/Objects/prober_hum_high.ogg
+ path: /Audio/Ambience/Objects/prober_hum_high.ogg
Dangerous:
- path: /Audio/Nyanotrasen/Ambience/Objects/prober_hum_dangerous.ogg
+ path: /Audio/Ambience/Objects/prober_hum_dangerous.ogg
Critical:
- path: /Audio/Nyanotrasen/Ambience/Objects/prober_hum_dangerous.ogg
+ path: /Audio/Ambience/Objects/prober_hum_dangerous.ogg
- type: entity
parent: BaseMachinePowered
diff --git a/Resources/Textures/Nyanotrasen/Interface/VerbIcons/dispel.png b/Resources/Textures/Interface/VerbIcons/dispel.png
similarity index 100%
rename from Resources/Textures/Nyanotrasen/Interface/VerbIcons/dispel.png
rename to Resources/Textures/Interface/VerbIcons/dispel.png
diff --git a/Resources/Textures/Nyanotrasen/Interface/VerbIcons/dispel.png.yml b/Resources/Textures/Interface/VerbIcons/dispel.png.yml
similarity index 100%
rename from Resources/Textures/Nyanotrasen/Interface/VerbIcons/dispel.png.yml
rename to Resources/Textures/Interface/VerbIcons/dispel.png.yml
diff --git a/Resources/Textures/Nyanotrasen/Interface/VerbIcons/license.txt b/Resources/Textures/Interface/VerbIcons/license.txt
similarity index 100%
rename from Resources/Textures/Nyanotrasen/Interface/VerbIcons/license.txt
rename to Resources/Textures/Interface/VerbIcons/license.txt
diff --git a/Resources/Textures/Nyanotrasen/Interface/VerbIcons/mass_sleep.png b/Resources/Textures/Interface/VerbIcons/mass_sleep.png
similarity index 100%
rename from Resources/Textures/Nyanotrasen/Interface/VerbIcons/mass_sleep.png
rename to Resources/Textures/Interface/VerbIcons/mass_sleep.png
diff --git a/Resources/Textures/Nyanotrasen/Interface/VerbIcons/mass_sleep.png.yml b/Resources/Textures/Interface/VerbIcons/mass_sleep.png.yml
similarity index 100%
rename from Resources/Textures/Nyanotrasen/Interface/VerbIcons/mass_sleep.png.yml
rename to Resources/Textures/Interface/VerbIcons/mass_sleep.png.yml
diff --git a/Resources/Textures/Nyanotrasen/Interface/VerbIcons/metapsionic.png b/Resources/Textures/Interface/VerbIcons/metapsionic.png
similarity index 100%
rename from Resources/Textures/Nyanotrasen/Interface/VerbIcons/metapsionic.png
rename to Resources/Textures/Interface/VerbIcons/metapsionic.png
diff --git a/Resources/Textures/Nyanotrasen/Interface/VerbIcons/metapsionic.png.yml b/Resources/Textures/Interface/VerbIcons/metapsionic.png.yml
similarity index 100%
rename from Resources/Textures/Nyanotrasen/Interface/VerbIcons/metapsionic.png.yml
rename to Resources/Textures/Interface/VerbIcons/metapsionic.png.yml
diff --git a/Resources/Textures/Nyanotrasen/Interface/VerbIcons/mind_swap.png b/Resources/Textures/Interface/VerbIcons/mind_swap.png
similarity index 100%
rename from Resources/Textures/Nyanotrasen/Interface/VerbIcons/mind_swap.png
rename to Resources/Textures/Interface/VerbIcons/mind_swap.png
diff --git a/Resources/Textures/Nyanotrasen/Interface/VerbIcons/mind_swap.png.yml b/Resources/Textures/Interface/VerbIcons/mind_swap.png.yml
similarity index 100%
rename from Resources/Textures/Nyanotrasen/Interface/VerbIcons/mind_swap.png.yml
rename to Resources/Textures/Interface/VerbIcons/mind_swap.png.yml
diff --git a/Resources/Textures/Nyanotrasen/Interface/VerbIcons/mind_swap_return.png b/Resources/Textures/Interface/VerbIcons/mind_swap_return.png
similarity index 100%
rename from Resources/Textures/Nyanotrasen/Interface/VerbIcons/mind_swap_return.png
rename to Resources/Textures/Interface/VerbIcons/mind_swap_return.png
diff --git a/Resources/Textures/Nyanotrasen/Interface/VerbIcons/mind_swap_return.png.yml b/Resources/Textures/Interface/VerbIcons/mind_swap_return.png.yml
similarity index 100%
rename from Resources/Textures/Nyanotrasen/Interface/VerbIcons/mind_swap_return.png.yml
rename to Resources/Textures/Interface/VerbIcons/mind_swap_return.png.yml
diff --git a/Resources/Textures/Nyanotrasen/Interface/VerbIcons/noospheric_zap.png b/Resources/Textures/Interface/VerbIcons/noospheric_zap.png
similarity index 100%
rename from Resources/Textures/Nyanotrasen/Interface/VerbIcons/noospheric_zap.png
rename to Resources/Textures/Interface/VerbIcons/noospheric_zap.png
diff --git a/Resources/Textures/Nyanotrasen/Interface/VerbIcons/noospheric_zap.png.yml b/Resources/Textures/Interface/VerbIcons/noospheric_zap.png.yml
similarity index 100%
rename from Resources/Textures/Nyanotrasen/Interface/VerbIcons/noospheric_zap.png.yml
rename to Resources/Textures/Interface/VerbIcons/noospheric_zap.png.yml
diff --git a/Resources/Textures/Nyanotrasen/Interface/VerbIcons/psionic_invisibility.png b/Resources/Textures/Interface/VerbIcons/psionic_invisibility.png
similarity index 100%
rename from Resources/Textures/Nyanotrasen/Interface/VerbIcons/psionic_invisibility.png
rename to Resources/Textures/Interface/VerbIcons/psionic_invisibility.png
diff --git a/Resources/Textures/Nyanotrasen/Interface/VerbIcons/psionic_invisibility.png.yml b/Resources/Textures/Interface/VerbIcons/psionic_invisibility.png.yml
similarity index 100%
rename from Resources/Textures/Nyanotrasen/Interface/VerbIcons/psionic_invisibility.png.yml
rename to Resources/Textures/Interface/VerbIcons/psionic_invisibility.png.yml
diff --git a/Resources/Textures/Nyanotrasen/Interface/VerbIcons/psionic_invisibility_off.png b/Resources/Textures/Interface/VerbIcons/psionic_invisibility_off.png
similarity index 100%
rename from Resources/Textures/Nyanotrasen/Interface/VerbIcons/psionic_invisibility_off.png
rename to Resources/Textures/Interface/VerbIcons/psionic_invisibility_off.png
diff --git a/Resources/Textures/Nyanotrasen/Interface/VerbIcons/psionic_invisibility_off.png.yml b/Resources/Textures/Interface/VerbIcons/psionic_invisibility_off.png.yml
similarity index 100%
rename from Resources/Textures/Nyanotrasen/Interface/VerbIcons/psionic_invisibility_off.png.yml
rename to Resources/Textures/Interface/VerbIcons/psionic_invisibility_off.png.yml
diff --git a/Resources/Textures/Nyanotrasen/Interface/VerbIcons/psionic_regeneration.png b/Resources/Textures/Interface/VerbIcons/psionic_regeneration.png
similarity index 100%
rename from Resources/Textures/Nyanotrasen/Interface/VerbIcons/psionic_regeneration.png
rename to Resources/Textures/Interface/VerbIcons/psionic_regeneration.png
diff --git a/Resources/Textures/Nyanotrasen/Interface/VerbIcons/psionic_regeneration.png.yml b/Resources/Textures/Interface/VerbIcons/psionic_regeneration.png.yml
similarity index 100%
rename from Resources/Textures/Nyanotrasen/Interface/VerbIcons/psionic_regeneration.png.yml
rename to Resources/Textures/Interface/VerbIcons/psionic_regeneration.png.yml
diff --git a/Resources/Textures/Nyanotrasen/Interface/VerbIcons/pyrokinesis.png b/Resources/Textures/Interface/VerbIcons/pyrokinesis.png
similarity index 100%
rename from Resources/Textures/Nyanotrasen/Interface/VerbIcons/pyrokinesis.png
rename to Resources/Textures/Interface/VerbIcons/pyrokinesis.png
diff --git a/Resources/Textures/Nyanotrasen/Interface/VerbIcons/pyrokinesis.png.yml b/Resources/Textures/Interface/VerbIcons/pyrokinesis.png.yml
similarity index 100%
rename from Resources/Textures/Nyanotrasen/Interface/VerbIcons/pyrokinesis.png.yml
rename to Resources/Textures/Interface/VerbIcons/pyrokinesis.png.yml
diff --git a/Resources/Textures/Nyanotrasen/Interface/VerbIcons/telegnosis.png b/Resources/Textures/Interface/VerbIcons/telegnosis.png
similarity index 100%
rename from Resources/Textures/Nyanotrasen/Interface/VerbIcons/telegnosis.png
rename to Resources/Textures/Interface/VerbIcons/telegnosis.png
diff --git a/Resources/Textures/Nyanotrasen/Interface/VerbIcons/telegnosis.png.yml b/Resources/Textures/Interface/VerbIcons/telegnosis.png.yml
similarity index 100%
rename from Resources/Textures/Nyanotrasen/Interface/VerbIcons/telegnosis.png.yml
rename to Resources/Textures/Interface/VerbIcons/telegnosis.png.yml
From e9e10f29b69cef5b79114caec0786de3b801d757 Mon Sep 17 00:00:00 2001
From: BlueHNT <79374236+BlueHNT@users.noreply.github.com>
Date: Thu, 8 Aug 2024 02:16:02 +0200
Subject: [PATCH 29/57] Updates WelderRefinable Component (#687)
# Description
I have made this originally for N14 as there was a heavy need for junk
items to be list instead of a hash. It created a few issues where you
were unable to put down 2 pieces of steel without making a new defined
entity which spawns a stack of 2.
I thought this was quite annoying so I decided to instead make it into a
`EntitySpawnEntry` from a `string` which would also give it options of
`amount` `prob` `maxAmount` and `orGroup` which would definitely aid in
the scrapping needs there as you could randomize the refined amounts.
I believe this could be useful upstream. As well as cleaning up code
which is more modifiable than before.
The new example of how it can be typed in yaml is also simpler in my
opinion as it is self-explanatory and used in various places like
StorageFill contents for one.
```YAML
- type: WelderRefinable
refineResult:
- id: SheetGlass1
amount: 1
maxAmount: 2
prob: 0.5
orGroup: Glass
```
---
:cl:
refactor: Refactors WelderRefinableComponent.cs and RefiningSystem.cs
tweak: Tweaked the formatting for WelderRefinable refineResult to use
EntitySpawnEntry format
---
.../Components/WelderRefinableComponent.cs | 13 +++++-----
Content.Server/Construction/RefiningSystem.cs | 15 +++--------
.../Entities/Objects/Materials/shards.yml | 18 ++++++-------
.../Entities/Objects/Misc/broken_bottle.yml | 2 +-
.../Entities/Objects/Power/lights.yml | 26 +++++++++----------
5 files changed, 33 insertions(+), 41 deletions(-)
diff --git a/Content.Server/Construction/Components/WelderRefinableComponent.cs b/Content.Server/Construction/Components/WelderRefinableComponent.cs
index 9d8958f7614..dc3074f1958 100644
--- a/Content.Server/Construction/Components/WelderRefinableComponent.cs
+++ b/Content.Server/Construction/Components/WelderRefinableComponent.cs
@@ -1,5 +1,6 @@
using Content.Shared.Tools;
-using Robust.Shared.Serialization.TypeSerializers.Implementations.Custom.Prototype;
+using Content.Shared.Storage;
+using Robust.Shared.Prototypes;
namespace Content.Server.Construction.Components
{
@@ -10,13 +11,13 @@ namespace Content.Server.Construction.Components
[RegisterComponent]
public sealed partial class WelderRefinableComponent : Component
{
- [DataField("refineResult")]
- public HashSet? RefineResult = new();
+ [DataField]
+ public List RefineResult = new();
- [DataField("refineTime")]
+ [DataField]
public float RefineTime = 2f;
- [DataField("qualityNeeded", customTypeSerializer:typeof(PrototypeIdSerializer))]
- public string QualityNeeded = "Welding";
+ [DataField]
+ public ProtoId QualityNeeded = "Welding";
}
}
diff --git a/Content.Server/Construction/RefiningSystem.cs b/Content.Server/Construction/RefiningSystem.cs
index b9d80c7170a..d4df8b0916b 100644
--- a/Content.Server/Construction/RefiningSystem.cs
+++ b/Content.Server/Construction/RefiningSystem.cs
@@ -1,11 +1,8 @@
using Content.Server.Construction.Components;
using Content.Server.Stack;
using Content.Shared.Construction;
-using Content.Shared.DoAfter;
using Content.Shared.Interaction;
-using Content.Shared.Stacks;
-using Content.Shared.Tools;
-using Robust.Shared.Serialization;
+using Content.Shared.Storage;
using SharedToolSystem = Content.Shared.Tools.Systems.SharedToolSystem;
namespace Content.Server.Construction
@@ -13,7 +10,6 @@ namespace Content.Server.Construction
public sealed class RefiningSystem : EntitySystem
{
[Dependency] private readonly SharedToolSystem _toolSystem = default!;
- [Dependency] private readonly StackSystem _stackSystem = default!;
public override void Initialize()
{
base.Initialize();
@@ -39,14 +35,9 @@ private void OnDoAfter(EntityUid uid, WelderRefinableComponent component, Welder
EntityManager.DeleteEntity(uid);
// spawn each result after refine
- foreach (var result in component.RefineResult!)
+ foreach (var ent in EntitySpawnCollection.GetSpawns(component.RefineResult))
{
- var droppedEnt = EntityManager.SpawnEntity(result, resultPosition);
-
- // TODO: If something has a stack... Just use a prototype with a single thing in the stack.
- // This is not a good way to do it.
- if (TryComp(droppedEnt, out var stack))
- _stackSystem.SetCount(droppedEnt, 1, stack);
+ Spawn(ent, resultPosition);
}
}
}
diff --git a/Resources/Prototypes/Entities/Objects/Materials/shards.yml b/Resources/Prototypes/Entities/Objects/Materials/shards.yml
index 5fcb006cfa5..6cdc066cf10 100644
--- a/Resources/Prototypes/Entities/Objects/Materials/shards.yml
+++ b/Resources/Prototypes/Entities/Objects/Materials/shards.yml
@@ -89,7 +89,7 @@
color: "#bbeeff"
- type: WelderRefinable
refineResult:
- - SheetGlass1
+ - id: SheetGlass1
- type: DamageUserOnTrigger
damage:
types:
@@ -120,8 +120,8 @@
color: "#96cdef"
- type: WelderRefinable
refineResult:
- - SheetGlass1
- - PartRodMetal1
+ - id: SheetGlass1
+ - id: PartRodMetal1
- type: DamageUserOnTrigger
damage:
types:
@@ -152,8 +152,8 @@
color: "#FF72E7"
- type: WelderRefinable
refineResult:
- - SheetGlass1
- - SheetPlasma1
+ - id: SheetGlass1
+ - id: SheetPlasma1
- type: DamageUserOnTrigger
damage:
types:
@@ -186,8 +186,8 @@
color: "#8eff7a"
- type: WelderRefinable
refineResult:
- - SheetGlass1
- - SheetUranium1
+ - id: SheetGlass1
+ - id: SheetUranium1
- type: DamageUserOnTrigger
damage:
types:
@@ -221,8 +221,8 @@
color: "#e0aa36"
- type: WelderRefinable
refineResult:
- - SheetGlass1
- - SheetBrass1
+ - id: SheetGlass1
+ - id: SheetBrass1
- type: DamageUserOnTrigger
damage:
types:
diff --git a/Resources/Prototypes/Entities/Objects/Misc/broken_bottle.yml b/Resources/Prototypes/Entities/Objects/Misc/broken_bottle.yml
index b7c73f5e0cc..32222d0036c 100644
--- a/Resources/Prototypes/Entities/Objects/Misc/broken_bottle.yml
+++ b/Resources/Prototypes/Entities/Objects/Misc/broken_bottle.yml
@@ -28,4 +28,4 @@
- type: SpaceGarbage
- type: WelderRefinable
refineResult:
- - SheetGlass1
+ - id: SheetGlass1
diff --git a/Resources/Prototypes/Entities/Objects/Power/lights.yml b/Resources/Prototypes/Entities/Objects/Power/lights.yml
index c8089cd22d3..b18a0feaa52 100644
--- a/Resources/Prototypes/Entities/Objects/Power/lights.yml
+++ b/Resources/Prototypes/Entities/Objects/Power/lights.yml
@@ -68,7 +68,7 @@
- type: SpaceGarbage
- type: WelderRefinable
refineResult:
- - SheetGlass1
+ - id: SheetGlass1
- type: entity
parent: BaseLightbulb
@@ -276,8 +276,8 @@
node: icon
- type: WelderRefinable
refineResult:
- - SheetGlass1
- - ShardCrystalCyan
+ - id: SheetGlass1
+ - id: ShardCrystalCyan
- type: entity
parent: LightTubeCrystalCyan
@@ -296,8 +296,8 @@
node: icon
- type: WelderRefinable
refineResult:
- - SheetGlass1
- - ShardCrystalBlue
+ - id: SheetGlass1
+ - id: ShardCrystalBlue
- type: entity
parent: LightTubeCrystalCyan
@@ -316,8 +316,8 @@
node: icon
- type: WelderRefinable
refineResult:
- - SheetGlass1
- - ShardCrystalPink
+ - id: SheetGlass1
+ - id: ShardCrystalPink
- type: entity
parent: LightTubeCrystalCyan
@@ -336,8 +336,8 @@
node: icon
- type: WelderRefinable
refineResult:
- - SheetGlass1
- - ShardCrystalOrange
+ - id: SheetGlass1
+ - id: ShardCrystalOrange
- type: entity
parent: LightTubeCrystalCyan
@@ -356,8 +356,8 @@
node: icon
- type: WelderRefinable
refineResult:
- - SheetGlass1
- - ShardCrystalRed
+ - id: SheetGlass1
+ - id: ShardCrystalRed
- type: entity
parent: LightTubeCrystalCyan
@@ -376,5 +376,5 @@
node: icon
- type: WelderRefinable
refineResult:
- - SheetGlass1
- - ShardCrystalGreen
+ - id: SheetGlass1
+ - id: ShardCrystalGreen
From 844218c8180d2e4439642717ad1c91e1d7229381 Mon Sep 17 00:00:00 2001
From: SimpleStation Changelogs
Date: Thu, 8 Aug 2024 00:16:23 +0000
Subject: [PATCH 30/57] Automatic Changelog Update (#687)
---
Resources/Changelog/Changelog.yml | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/Resources/Changelog/Changelog.yml b/Resources/Changelog/Changelog.yml
index 0aff29d638c..45e36fa3f08 100644
--- a/Resources/Changelog/Changelog.yml
+++ b/Resources/Changelog/Changelog.yml
@@ -5103,3 +5103,11 @@ Entries:
slip.
id: 6239
time: '2024-08-07T23:54:13.0000000+00:00'
+- author: BlueHNT
+ changes:
+ - type: Tweak
+ message: >-
+ Tweaked the formatting for WelderRefinable refineResult to use
+ EntitySpawnEntry format
+ id: 6240
+ time: '2024-08-08T00:16:02.0000000+00:00'
From 75d2ea8f35c9be1b76a6b6c15531fc2cf5592fe9 Mon Sep 17 00:00:00 2001
From: VMSolidus
Date: Wed, 7 Aug 2024 20:18:08 -0400
Subject: [PATCH 31/57] 1984 Shit Colored Moths (#681)
# Description
I'll let google image search make my case.
![image](https://github.com/user-attachments/assets/c8fe9ec7-0292-4d77-bc94-f890219349e3)
![image](https://github.com/user-attachments/assets/1d871bff-4a18-4ce9-a121-d0282821c48c)
![image](https://github.com/user-attachments/assets/2375fe34-691c-49ab-b9d7-a16a17b2a3ce)
Done. By popular request, I'm bringing back RGB Moths.
# Changelog
:cl:
- fix: Moths can now once again be colorful.
---
Content.Shared/Humanoid/SkinColor.cs | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/Content.Shared/Humanoid/SkinColor.cs b/Content.Shared/Humanoid/SkinColor.cs
index 55fab4af5ba..dcc5c2d7645 100644
--- a/Content.Shared/Humanoid/SkinColor.cs
+++ b/Content.Shared/Humanoid/SkinColor.cs
@@ -136,7 +136,7 @@ public static Color TintedHues(Color color)
/// The skin color to blend with
/// Blending factor (0.0 to 1.0)
/// Tinted hue color
- public static Color TintedHuesSkin(Color color, Color skinColor, float blendFactor = 0.5f)
+ public static Color TintedHuesSkin(Color color, Color skinColor, float blendFactor = 0.0f)
{
blendFactor = MathHelper.Clamp(blendFactor, 0.0f, 1.0f);
From ba9a93707855c63dcbbbdc5cf5fe0931f196c9b0 Mon Sep 17 00:00:00 2001
From: SimpleStation Changelogs
Date: Thu, 8 Aug 2024 00:18:30 +0000
Subject: [PATCH 32/57] Automatic Changelog Update (#681)
---
Resources/Changelog/Changelog.yml | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/Resources/Changelog/Changelog.yml b/Resources/Changelog/Changelog.yml
index 45e36fa3f08..f6fba8d64b5 100644
--- a/Resources/Changelog/Changelog.yml
+++ b/Resources/Changelog/Changelog.yml
@@ -5111,3 +5111,9 @@ Entries:
EntitySpawnEntry format
id: 6240
time: '2024-08-08T00:16:02.0000000+00:00'
+- author: VMSolidus
+ changes:
+ - type: Fix
+ message: Moths can now once again be colorful.
+ id: 6241
+ time: '2024-08-08T00:18:08.0000000+00:00'
From d1c8bf10953b63c675eb8629b119fb06f66b1ea5 Mon Sep 17 00:00:00 2001
From: Mnemotechnican <69920617+Mnemotechnician@users.noreply.github.com>
Date: Fri, 9 Aug 2024 13:52:49 +0300
Subject: [PATCH 33/57] Tweak Skeleton Description (#707)
# Description
Cherry-picks https://github.com/Fansana/floofstation1/pull/88 from
Floofstation - changes skeleton description to match with Delta-v.
Credit to ShatteredSwords.
# Changelog
:cl: ShatteredSwords
- tweak: Skeleton ghost role description has been adjusted to be less
evil.
---------
Signed-off-by: Mnemotechnican <69920617+Mnemotechnician@users.noreply.github.com>
Co-authored-by: ShatteredSwords <135023515+ShatteredSwords@users.noreply.github.com>
---
Resources/Locale/en-US/ghost/roles/ghost-role-component.ftl | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/Resources/Locale/en-US/ghost/roles/ghost-role-component.ftl b/Resources/Locale/en-US/ghost/roles/ghost-role-component.ftl
index 7b25eb660bc..9260db903fc 100644
--- a/Resources/Locale/en-US/ghost/roles/ghost-role-component.ftl
+++ b/Resources/Locale/en-US/ghost/roles/ghost-role-component.ftl
@@ -161,7 +161,7 @@ ghost-role-information-skeleton-biker-name = Skeleton Biker
ghost-role-information-skeleton-biker-description = Ride around on your sweet ride.
ghost-role-information-closet-skeleton-name = Closet Skeleton
-ghost-role-information-closet-skeleton-description = Wreak havoc! You are a primordial force with no allegiance. Live happily with the crew or wage sweet skeletal war.
+ghost-role-information-closet-skeleton-description = You are a closet skeleton! You are a primordial force of chaos with no allegiance! You can either join the crew and use your skeletal antics to help them, or be a a prankster, and hinder their efforts!
ghost-role-information-onestar-mecha-name = Onestar Mecha
ghost-role-information-onestar-mecha-description = You are an experimental mecha created by who-knows-what, all you know is that you have weapons and you detect fleshy moving targets nearby...
From 892f1e04c9861e04b2b1e7fc6c2279e80f1b53fa Mon Sep 17 00:00:00 2001
From: SimpleStation Changelogs
Date: Fri, 9 Aug 2024 10:53:11 +0000
Subject: [PATCH 34/57] Automatic Changelog Update (#707)
---
Resources/Changelog/Changelog.yml | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/Resources/Changelog/Changelog.yml b/Resources/Changelog/Changelog.yml
index f6fba8d64b5..6e9745ffd8b 100644
--- a/Resources/Changelog/Changelog.yml
+++ b/Resources/Changelog/Changelog.yml
@@ -5117,3 +5117,9 @@ Entries:
message: Moths can now once again be colorful.
id: 6241
time: '2024-08-08T00:18:08.0000000+00:00'
+- author: ShatteredSwords
+ changes:
+ - type: Tweak
+ message: Skeleton ghost role description has been adjusted to be less evil.
+ id: 6242
+ time: '2024-08-09T10:52:49.0000000+00:00'
From 7d92c3e69f2347fe4616600698f63e6d23280282 Mon Sep 17 00:00:00 2001
From: VMSolidus
Date: Fri, 9 Aug 2024 07:13:13 -0400
Subject: [PATCH 35/57] Soft-Refactor Geiger Counters (#615)
# Description
This refactors Geiger Counters so that their behavior of "Only making
sound to a person holding them" is no longer hardcoded. The
GeigerCounterComponent now can define how loud it ticks, how far away
people can hear the ticks, and whether it plays only for the person
holding it or for anyone nearby. This PR partially fulfills one of the
"Nice To Have" features requested for
https://github.com/Simple-Station/Einstein-Engines/pull/341 by making it
possible to create stationary radiation alarm objects. It also serves as
a substantial quality of life improvement for Engineering and Science
crew, since it's now possible to place an active Geiger counter in the
artifact lab, and then be able to audibly hear if the lab becomes
radioactive due to an artifact.
Media
https://github.com/user-attachments/assets/74122135-7345-4995-bb0e-d1216e1d53b6
https://github.com/user-attachments/assets/de79db6f-e1c1-471f-88b5-0a47ff4bfa16
# Changelog
:cl:
- add: Geiger Counters other than ones installed in Hardsuits now
generate an audible sound when active and exposed to radiation.
- add: Wall mounted geiger counters have been added to the game.
---------
Signed-off-by: VMSolidus
---
.../Radiation/Systems/GeigerSystem.cs | 28 +++++-----
.../Radiation/Components/GeigerComponent.cs | 19 +++++--
.../OuterClothing/base_clothingouter.yml | 3 ++
.../Structures/Wallmounts/radalarm.yml | 51 ++++++++++++++++++
.../Wallmounts/radalarm.rsi/geiger_base.png | Bin 0 -> 1283 bytes
.../Wallmounts/radalarm.rsi/geiger_on_ext.png | Bin 0 -> 375 bytes
.../radalarm.rsi/geiger_on_high.png | Bin 0 -> 375 bytes
.../radalarm.rsi/geiger_on_idle.png | Bin 0 -> 326 bytes
.../Wallmounts/radalarm.rsi/geiger_on_low.png | Bin 0 -> 363 bytes
.../Wallmounts/radalarm.rsi/geiger_on_med.png | Bin 0 -> 368 bytes
.../Wallmounts/radalarm.rsi/meta.json | 35 ++++++++++++
11 files changed, 117 insertions(+), 19 deletions(-)
create mode 100644 Resources/Prototypes/Entities/Structures/Wallmounts/radalarm.yml
create mode 100644 Resources/Textures/Structures/Wallmounts/radalarm.rsi/geiger_base.png
create mode 100644 Resources/Textures/Structures/Wallmounts/radalarm.rsi/geiger_on_ext.png
create mode 100644 Resources/Textures/Structures/Wallmounts/radalarm.rsi/geiger_on_high.png
create mode 100644 Resources/Textures/Structures/Wallmounts/radalarm.rsi/geiger_on_idle.png
create mode 100644 Resources/Textures/Structures/Wallmounts/radalarm.rsi/geiger_on_low.png
create mode 100644 Resources/Textures/Structures/Wallmounts/radalarm.rsi/geiger_on_med.png
create mode 100644 Resources/Textures/Structures/Wallmounts/radalarm.rsi/meta.json
diff --git a/Content.Server/Radiation/Systems/GeigerSystem.cs b/Content.Server/Radiation/Systems/GeigerSystem.cs
index f889336a068..06e5911cb7c 100644
--- a/Content.Server/Radiation/Systems/GeigerSystem.cs
+++ b/Content.Server/Radiation/Systems/GeigerSystem.cs
@@ -6,8 +6,8 @@
using Content.Shared.Radiation.Components;
using Content.Shared.Radiation.Systems;
using Robust.Server.Audio;
-using Robust.Server.GameObjects;
using Robust.Server.Player;
+using Robust.Shared.Player;
namespace Content.Server.Radiation.Systems;
@@ -152,19 +152,19 @@ private void UpdateSound(EntityUid uid, GeigerComponent? component = null)
component.Stream = _audio.Stop(component.Stream);
- if (!component.Sounds.TryGetValue(component.DangerLevel, out var sounds))
- return;
-
- if (component.User == null)
- return;
-
- if (!_player.TryGetSessionByEntity(component.User.Value, out var session))
- return;
-
- var sound = _audio.GetSound(sounds);
- var param = sounds.Params.WithLoop(true).WithVolume(-4f);
-
- component.Stream = _audio.PlayGlobal(sound, session, param)?.Entity;
+ if (component.Sounds.TryGetValue(component.DangerLevel, out var sounds))
+ {
+ var sound = _audio.GetSound(sounds);
+
+ if (component.LocalSoundOnly
+ && component.User is not null
+ && _player.TryGetSessionByEntity(component.User.Value, out var session))
+ {
+ component.Stream = _audio.PlayGlobal(sound, session, component.AudioParameters)?.Entity;
+ return;
+ }
+ component.Stream = _audio.PlayEntity(sound, Filter.Pvs(uid), uid, true, component.AudioParameters)?.Entity;
+ }
}
public static GeigerDangerLevel RadsToLevel(float rads)
diff --git a/Content.Shared/Radiation/Components/GeigerComponent.cs b/Content.Shared/Radiation/Components/GeigerComponent.cs
index 71edb70b37c..710d74d9b38 100644
--- a/Content.Shared/Radiation/Components/GeigerComponent.cs
+++ b/Content.Shared/Radiation/Components/GeigerComponent.cs
@@ -29,14 +29,12 @@ public sealed partial class GeigerComponent : Component
///
/// Should it shows examine message with current radiation level?
///
- [ViewVariables(VVAccess.ReadWrite)]
[DataField]
public bool ShowExamine;
///
/// Should it shows item control when equipped by player?
///
- [ViewVariables(VVAccess.ReadWrite)]
[DataField]
public bool ShowControl;
@@ -55,7 +53,7 @@ public sealed partial class GeigerComponent : Component
///
/// Current radiation level in rad per second.
///
- [ViewVariables(VVAccess.ReadOnly), AutoNetworkedField]
+ [DataField, AutoNetworkedField]
public float CurrentRadiation;
///
@@ -66,8 +64,6 @@ public sealed partial class GeigerComponent : Component
///
/// Current player that equipped geiger counter.
- /// Because sound is annoying, geiger counter clicks will play
- /// only for player that equipped it.
///
[ViewVariables(VVAccess.ReadOnly), AutoNetworkedField]
public EntityUid? User;
@@ -83,6 +79,19 @@ public sealed partial class GeigerComponent : Component
/// Played only for current user.
///
public EntityUid? Stream;
+
+ ///
+ /// Controls whether the geiger counter plays only for the local player, or plays for everyone nearby.
+ /// Useful for things like hardsuits with integrated geigers. Alternatively, to create stationary radiation alarm objects.
+ ///
+ [DataField]
+ public bool LocalSoundOnly = false;
+
+ ///
+ /// Used for all geiger counter audio controls, allowing entities to override default audio parameters.
+ ///
+ [DataField]
+ public AudioParams AudioParameters;
}
[Serializable, NetSerializable]
diff --git a/Resources/Prototypes/Entities/Clothing/OuterClothing/base_clothingouter.yml b/Resources/Prototypes/Entities/Clothing/OuterClothing/base_clothingouter.yml
index d6a2cd446be..358f91d2971 100644
--- a/Resources/Prototypes/Entities/Clothing/OuterClothing/base_clothingouter.yml
+++ b/Resources/Prototypes/Entities/Clothing/OuterClothing/base_clothingouter.yml
@@ -142,6 +142,9 @@
- type: Clothing
equipDelay: 2.5 # Hardsuits are heavy and take a while to put on/off.
unequipDelay: 2.5
+ - type: Geiger
+ attachedToSuit: true
+ localSoundOnly: true
- type: StaminaDamageResistance
coefficient: 0.75 # 25%
diff --git a/Resources/Prototypes/Entities/Structures/Wallmounts/radalarm.yml b/Resources/Prototypes/Entities/Structures/Wallmounts/radalarm.yml
new file mode 100644
index 00000000000..44bbe3e6170
--- /dev/null
+++ b/Resources/Prototypes/Entities/Structures/Wallmounts/radalarm.yml
@@ -0,0 +1,51 @@
+- type: entity
+ id: GeigerCounterWallMount
+ name: wall-mounted Geiger counter
+ description: A stationary device that emits a warning tone when it detects radiation pulses.
+ placement:
+ mode: SnapgridCenter
+ snap:
+ - Wallmount
+ components:
+ - type: InteractionOutline
+ - type: Clickable
+ - type: Rotatable
+ rotateWhileAnchored: false
+ rotateWhilePulling: true
+ - type: WallMount
+ - type: Transform
+ noRot: false
+ anchored: true
+ - type: Sprite
+ noRot: true
+ drawdepth: WallMountedItems
+ sprite: Structures/Wallmounts/radalarm.rsi
+ layers:
+ - state: geiger_base
+ - state: geiger_on_idle
+ map: ["enum.GeigerLayers.Screen"]
+ shader: unshaded
+ visible: false
+ - type: Geiger
+ showControl: true
+ showExamine: true
+ localSoundOnly: false
+ audioParameters:
+ volume: -4
+ maxDistance: 10
+ rolloffFactor: 4
+ - type: Appearance
+ - type: GenericVisualizer
+ visuals:
+ enum.GeigerVisuals.IsEnabled:
+ GeigerLayers.Screen:
+ True: { visible: True }
+ False: { visible: False }
+ enum.GeigerVisuals.DangerLevel:
+ GeigerLayers.Screen:
+ None: {state: geiger_on_idle}
+ Low: {state: geiger_on_low}
+ Med: {state: geiger_on_med}
+ High: {state: geiger_on_high}
+ Extreme: {state: geiger_on_ext}
+
diff --git a/Resources/Textures/Structures/Wallmounts/radalarm.rsi/geiger_base.png b/Resources/Textures/Structures/Wallmounts/radalarm.rsi/geiger_base.png
new file mode 100644
index 0000000000000000000000000000000000000000..778c427735012720fbd093e0a7f54b9adb5b5dcb
GIT binary patch
literal 1283
zcmV+e1^oJnP)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!~g&e!~vBn4jTXf1ei%gK~#8N?VC+#
z6fqRXr&cSaqWD?6t)*JE2zpUb#DgLhKMo?O^ybN1p$8GygRlx-R>Xs_7x5&5hzjDt
z4+L=!A{9I-i1nkTe$-ZrRV-3vsr%35)tF6YGP|?0vzi|~l1aBS$;-=|yq8_aVzF5M
zXKHxqNhXt-)ae3=Hzx9}m3orr8fTS8Qwg6KOt$g=a8F#c!aQnthlTd=_
z1XXMP!^a_3mdgpQT(z!f=V|iHKo)?(%2F;c@KOeEiqUHj`+y*O00Mgf>;sCi02+MW
zf>Ql2-ZKCtEQI1vn8Vm~zJm}zqAjc-ky^6=K*2n@X
zfoK8PRbJ?8nJUQwyyB3Tub#!j0>S`;7R#V`SwK}N05eHa3|?_fRVY9Q%p7kWS%wN|%+zQ5a5bql8YVO2tzFVm4M5nXo!!3YGv&
zzf?RGK(ntB5qB*{;{*vf-!S}+kq_{5Dj2-UYbZ?QwO=g03eY(f5pqaTLf&6SPK&G3
z|+1`002ovPDHLkV1lQfLi_*#
literal 0
HcmV?d00001
diff --git a/Resources/Textures/Structures/Wallmounts/radalarm.rsi/geiger_on_ext.png b/Resources/Textures/Structures/Wallmounts/radalarm.rsi/geiger_on_ext.png
new file mode 100644
index 0000000000000000000000000000000000000000..7b7f3f4e767822a0454026ece50fdf8aa63daccc
GIT binary patch
literal 375
zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I3?%1nZ+ru!7>k44ofy`glX(f`u%tWsIx;Y9
z?C1WI$O`0(2Ka=yo-qubspz*wJ?a07p8pOJ|MxEk${c^8m;$8OOM?7@|APU8lsB^*
zP>8d@BeIx*f$sJOGwXs7uI@pgKH7q$8)q86K*i9cof7b<0cat^NPii2}sJdh|QQQw?qxU9i%sA7!F7P~0;<4II9;|murgH5Pcbli+x?k44ofy`glX(f`u%tWsIx;Y9
z?C1WI$O`0(2Ka=yo-qubspz*wJ?a07p8pOJ|MxEk${c^8m;$8OOM?7@|APU8lsB^*
zP>8d@BeIx*f$sJOGwXs7uI@pgKH7q$8)q86K*i9cof7b<0cat^NPii2}sJdh|QQQw?qxU9i%sA7!F7P~0;<4II9;|murgH5Pcbli+x?k44ofy`glX(f`u%tWsIx;Y9
z?C1WI$O_~O1^9%x+S`|Sc~6vEk-F}i@#+7YfWj|k1jGO-wvr&f;Qt`NuzCNI{Xh}U
z0*}aI1_r((Aj~*bn@<`jxZ2ajF(ktM?X=r`4GJ6%d;k5{Hy4xSoVh*9^qlvtXMz)@
z)c6)P-RI?228@qvIwE(XyR3@?Nurq^Y~6x>W|$yl@f_MtwG
zd)f+}n#D>H@zbP4no78RnGQW?=_|GO45;UJFLPAa3SczQ=qO~I8t?n@t65k9(Af;0
Lu6{1-oD!Mk44ofy`glX(f`u%tWsIx;Y9
z?C1WI$O_~O1^9%xcKM4hij)2SKj*;`&i@}b0fpa6e^LQbY$ZW{!T&*kVe|ea`+*{y
z1s;*b3=DinK$vl=HlH+5@Pem{V@QPi+i4fYniV)4m_ProuUw&1I>|Xx-}=t;{(1YYCyj+c)I$ztaD0e0swKOgqZ*U
literal 0
HcmV?d00001
diff --git a/Resources/Textures/Structures/Wallmounts/radalarm.rsi/geiger_on_med.png b/Resources/Textures/Structures/Wallmounts/radalarm.rsi/geiger_on_med.png
new file mode 100644
index 0000000000000000000000000000000000000000..33d354a6a6ecd6f9b410c95d9aa80557712694e8
GIT binary patch
literal 368
zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I3?%1nZ+ru!7>k44ofy`glX(f`u%tWsIx;Y9
z?C1WI$O_~O1^9%xPBP(H=Fb27kpHGeqyK07fx=#U>Y9KQTS<^#@P80s*t~zqexL|v
zfk$L90|Va?5N4dJ%_j{Myz1%V7!u+BcABG5vjUH+r_%TRMT$$fR9zKv#pmwnJtjHt
zBez$FTg->@rU?^2XRcywa9~ilsx!60z&Yq_Q27KY2XFRgJl|HZxI1dGn$DZb7tqH$
zzov!zYgm2&YxB+vtY7E4OMJA73}X!l>j~)$b=;nC&H90;a_FPyk|jG1uu6*WP}r>K
zVc+^CaJ#dg`o4EQNM|}nc>gTe~DWM4f
D7!iXk
literal 0
HcmV?d00001
diff --git a/Resources/Textures/Structures/Wallmounts/radalarm.rsi/meta.json b/Resources/Textures/Structures/Wallmounts/radalarm.rsi/meta.json
new file mode 100644
index 00000000000..2ef22994bc0
--- /dev/null
+++ b/Resources/Textures/Structures/Wallmounts/radalarm.rsi/meta.json
@@ -0,0 +1,35 @@
+{
+ "version": 1,
+ "size": {
+ "x": 32,
+ "y": 32
+ },
+ "license": "CC-BY-SA-3.0",
+ "copyright": "Made by @dootythefrooty (Discord)",
+ "states": [
+ {
+ "name": "geiger_base",
+ "directions": 4
+ },
+ {
+ "name": "geiger_on_idle",
+ "directions": 4
+ },
+ {
+ "name": "geiger_on_low",
+ "directions": 4
+ },
+ {
+ "name": "geiger_on_med",
+ "directions": 4
+ },
+ {
+ "name": "geiger_on_high",
+ "directions": 4
+ },
+ {
+ "name": "geiger_on_ext",
+ "directions": 4
+ }
+ ]
+}
From f0340314ad062d4bf7e2bfbfd7dc9efb67a62ce3 Mon Sep 17 00:00:00 2001
From: SimpleStation Changelogs
Date: Fri, 9 Aug 2024 11:13:38 +0000
Subject: [PATCH 36/57] Automatic Changelog Update (#615)
---
Resources/Changelog/Changelog.yml | 10 ++++++++++
1 file changed, 10 insertions(+)
diff --git a/Resources/Changelog/Changelog.yml b/Resources/Changelog/Changelog.yml
index 6e9745ffd8b..f571aeb6bbf 100644
--- a/Resources/Changelog/Changelog.yml
+++ b/Resources/Changelog/Changelog.yml
@@ -5123,3 +5123,13 @@ Entries:
message: Skeleton ghost role description has been adjusted to be less evil.
id: 6242
time: '2024-08-09T10:52:49.0000000+00:00'
+- author: VMSolidus
+ changes:
+ - type: Add
+ message: >-
+ Geiger Counters other than ones installed in Hardsuits now generate an
+ audible sound when active and exposed to radiation.
+ - type: Add
+ message: Wall mounted geiger counters have been added to the game.
+ id: 6243
+ time: '2024-08-09T11:13:13.0000000+00:00'
From f4d2e3551b78203cfa5bb4a068ebfbdc515a2c23 Mon Sep 17 00:00:00 2001
From: Angelo Fallaria
Date: Sat, 10 Aug 2024 01:28:01 +0800
Subject: [PATCH 37/57] Make Dionas Slow And Steady (#704)
# Description
Dionas now have 25% slower movement speed in exchange for total slip
immunity and slow immunity (except lying down).
Note that this also prevents slowdowns from hunger and thirst.
This also fixes an existing bug with Sluggish and Snail-Paced related to
`TraitSpeedModifierSystem`, as it was not applying the reduced movement
speed upon spawning, only when the movement speed has been modified by
another source. `TraitSpeedModifierSystem` has been moved from
`Content.Server` to `Content.Shared`.
This used to be a trait costing 3 points, but is now given for free to
all Dionas per request of @VMSolidus.
## Media
Expand
**Speed with no items**
![image](https://github.com/user-attachments/assets/b723614a-79fe-401c-ae53-2ad98ff9a6d3)
**Speed wearing a jugsuit, wearing a duffel bag, holding one duffel bag
in each arm, and walking through a puddle of glue covered in spider
webs.**
![image](https://github.com/user-attachments/assets/a934d2c1-437f-463c-8fe3-63b7b54a1f58)
# Changelog
:cl: Skubman
- add: Dionas have been given a 25% slower movement speed. In exchange
for that, they gain absolute slip immunity and movement speed modifier
immunity. This makes them immune to slowdown from things like
duffelbags, hardsuits, and spider webs.
- fix: Sluggish and Snail-Paced will now properly apply their movement
penalties upon joining.
---
Content.Server/Standing/LayingDownSystem.cs | 2 +-
.../Assorted/TraitSpeedModifierSystem.cs | 19 ------------
.../Systems/MovementSpeedModifierSystem.cs | 23 ++++++++++++--
.../SpeedModifierImmunityComponent.cs | 12 +++++++
.../TraitSpeedModifierComponent.cs | 10 +++---
.../Systems/TraitSpeedModifierSystem.cs | 31 +++++++++++++++++++
.../Entities/Mobs/Species/diona.yml | 5 +++
Resources/Prototypes/Traits/disabilities.yml | 8 +++++
Resources/Prototypes/Traits/skills.yml | 4 +++
9 files changed, 88 insertions(+), 26 deletions(-)
delete mode 100644 Content.Server/Traits/Assorted/TraitSpeedModifierSystem.cs
create mode 100644 Content.Shared/Traits/Assorted/Components/SpeedModifierImmunityComponent.cs
rename {Content.Server/Traits/Assorted => Content.Shared/Traits/Assorted/Components}/TraitSpeedModifierComponent.cs (52%)
create mode 100644 Content.Shared/Traits/Assorted/Systems/TraitSpeedModifierSystem.cs
diff --git a/Content.Server/Standing/LayingDownSystem.cs b/Content.Server/Standing/LayingDownSystem.cs
index 69787ae8308..73a929fdfc4 100644
--- a/Content.Server/Standing/LayingDownSystem.cs
+++ b/Content.Server/Standing/LayingDownSystem.cs
@@ -48,7 +48,7 @@ private void OnRefreshMovementSpeed(EntityUid uid, LayingDownComponent component
if (TryComp(uid, out var standingState) && standingState.Standing)
return;
- args.ModifySpeed(component.DownedSpeedMultiplier, component.DownedSpeedMultiplier);
+ args.ModifySpeed(component.DownedSpeedMultiplier, component.DownedSpeedMultiplier, bypassImmunity: true);
}
private void OnParentChanged(EntityUid uid, LayingDownComponent component, EntParentChangedMessage args)
diff --git a/Content.Server/Traits/Assorted/TraitSpeedModifierSystem.cs b/Content.Server/Traits/Assorted/TraitSpeedModifierSystem.cs
deleted file mode 100644
index c804592347a..00000000000
--- a/Content.Server/Traits/Assorted/TraitSpeedModifierSystem.cs
+++ /dev/null
@@ -1,19 +0,0 @@
-using Content.Shared.Movement.Systems;
-using Content.Server.Traits.Assorted;
-
-namespace Content.Shared.Traits.Assorted;
-
-public sealed class TraitSpeedModifierSystem : EntitySystem
-{
- public override void Initialize()
- {
- base.Initialize();
-
- SubscribeLocalEvent(OnRefreshMovementSpeed);
- }
-
- private void OnRefreshMovementSpeed(EntityUid uid, TraitSpeedModifierComponent component, RefreshMovementSpeedModifiersEvent args)
- {
- args.ModifySpeed(component.WalkModifier, component.SprintModifier);
- }
-}
diff --git a/Content.Shared/Movement/Systems/MovementSpeedModifierSystem.cs b/Content.Shared/Movement/Systems/MovementSpeedModifierSystem.cs
index 7c793d5eb89..67a238cf60f 100644
--- a/Content.Shared/Movement/Systems/MovementSpeedModifierSystem.cs
+++ b/Content.Shared/Movement/Systems/MovementSpeedModifierSystem.cs
@@ -1,5 +1,6 @@
using Content.Shared.Inventory;
using Content.Shared.Movement.Components;
+using Content.Shared.Traits.Assorted.Components;
using Robust.Shared.Timing;
namespace Content.Shared.Movement.Systems
@@ -16,7 +17,11 @@ public void RefreshMovementSpeedModifiers(EntityUid uid, MovementSpeedModifierCo
if (_timing.ApplyingState)
return;
- var ev = new RefreshMovementSpeedModifiersEvent();
+ var isImmune = false;
+ if (HasComp(uid))
+ isImmune = true;
+
+ var ev = new RefreshMovementSpeedModifiersEvent(isImmune);
RaiseLocalEvent(uid, ev);
if (MathHelper.CloseTo(ev.WalkSpeedModifier, move.WalkSpeedModifier) &&
@@ -64,10 +69,24 @@ public sealed class RefreshMovementSpeedModifiersEvent : EntityEventArgs, IInven
public float WalkSpeedModifier { get; private set; } = 1.0f;
public float SprintSpeedModifier { get; private set; } = 1.0f;
- public void ModifySpeed(float walk, float sprint)
+ ///
+ /// Whether this entity is immune to most movement speed modifiers.
+ /// Bypassable by setting bypassImmunity to true.
+ ///
+/// This is used to make an entity's movement speed constant and
+/// never affected by almost all movement speed modifiers.
+///