From dd0ab19c964481a6bd462972ee7990a9e9e3c5b1 Mon Sep 17 00:00:00 2001 From: LordEclipse <106132477+LordEclipse@users.noreply.github.com> Date: Sun, 5 Nov 2023 22:38:00 -0500 Subject: [PATCH] Freelance Radio Channel and Encryption Key (#20904) * Freelance Radio Channel * Freelance Radio Channel --- .../en-US/headset/headset-component.ftl | 1 + .../Entities/Clothing/Ears/headsets.yml | 14 ++++++++++ .../Entities/Clothing/Ears/headsets_alt.yml | 17 ++++++++++++ .../Objects/Devices/encryption_keys.yml | 16 +++++++++++ Resources/Prototypes/radio_channels.yml | 9 +++++++ .../freelance.rsi/alt-equipped-EARS.png | Bin 0 -> 857 bytes .../Headsets/freelance.rsi/equipped-EARS.png | Bin 0 -> 645 bytes .../Ears/Headsets/freelance.rsi/icon.png | Bin 0 -> 799 bytes .../Ears/Headsets/freelance.rsi/icon_alt.png | Bin 0 -> 991 bytes .../Ears/Headsets/freelance.rsi/meta.json | 25 ++++++++++++++++++ 10 files changed, 82 insertions(+) create mode 100644 Resources/Textures/Clothing/Ears/Headsets/freelance.rsi/alt-equipped-EARS.png create mode 100644 Resources/Textures/Clothing/Ears/Headsets/freelance.rsi/equipped-EARS.png create mode 100644 Resources/Textures/Clothing/Ears/Headsets/freelance.rsi/icon.png create mode 100644 Resources/Textures/Clothing/Ears/Headsets/freelance.rsi/icon_alt.png create mode 100644 Resources/Textures/Clothing/Ears/Headsets/freelance.rsi/meta.json diff --git a/Resources/Locale/en-US/headset/headset-component.ftl b/Resources/Locale/en-US/headset/headset-component.ftl index 70b83c1e66..5bacf512ea 100644 --- a/Resources/Locale/en-US/headset/headset-component.ftl +++ b/Resources/Locale/en-US/headset/headset-component.ftl @@ -14,6 +14,7 @@ chat-radio-security = Security chat-radio-service = Service chat-radio-supply = Supply chat-radio-syndicate = Syndicate +chat-radio-freelance = Freelance # not headset but whatever chat-radio-handheld = Handheld diff --git a/Resources/Prototypes/Entities/Clothing/Ears/headsets.yml b/Resources/Prototypes/Entities/Clothing/Ears/headsets.yml index 858ec6f0db..a2e18d99aa 100644 --- a/Resources/Prototypes/Entities/Clothing/Ears/headsets.yml +++ b/Resources/Prototypes/Entities/Clothing/Ears/headsets.yml @@ -274,3 +274,17 @@ - type: Clothing sprite: Clothing/Ears/Headsets/service.rsi +- type: entity + parent: ClothingHeadset + id: ClothingHeadsetFreelance + name: freelancer headset + description: This is used by a roaming group of freelancers + components: + - type: ContainerFill + containers: + key_slots: + - EncryptionKeyFreelance + - type: Sprite + sprite: Clothing/Ears/Headsets/freelance.rsi + - type: Clothing + sprite: Clothing/Ears/Headsets/freelance.rsi diff --git a/Resources/Prototypes/Entities/Clothing/Ears/headsets_alt.yml b/Resources/Prototypes/Entities/Clothing/Ears/headsets_alt.yml index bff46beda2..7981fc2b9e 100644 --- a/Resources/Prototypes/Entities/Clothing/Ears/headsets_alt.yml +++ b/Resources/Prototypes/Entities/Clothing/Ears/headsets_alt.yml @@ -146,3 +146,20 @@ sprite: Clothing/Ears/Headsets/syndicate.rsi - type: Clothing sprite: Clothing/Ears/Headsets/syndicate.rsi + +- type: entity + parent: ClothingHeadsetAlt + id: ClothingHeadsetAltFreelancer + name: freelancer's over-ear headset + components: + - type: Headset + - type: EncryptionKeyHolder + keySlots: 5 + - type: ContainerFill + containers: + key_slots: + - EncryptionKeyFreelance + - type: Sprite + sprite: Clothing/Ears/Headsets/freelance.rsi + - type: Clothing + sprite: Clothing/Ears/Headsets/freelance.rsi diff --git a/Resources/Prototypes/Entities/Objects/Devices/encryption_keys.yml b/Resources/Prototypes/Entities/Objects/Devices/encryption_keys.yml index edee1dbb2c..df9954eb15 100644 --- a/Resources/Prototypes/Entities/Objects/Devices/encryption_keys.yml +++ b/Resources/Prototypes/Entities/Objects/Devices/encryption_keys.yml @@ -228,3 +228,19 @@ layers: - state: crypt_silver - state: rd_label + +- type: entity + parent: EncryptionKey + id: EncryptionKeyFreelance + name: freelancer encryption key + description: An encryption key used by freelancers, who may or may not have an affiliation. It looks like its worn out. + components: + - type: EncryptionKey + channels: + - Freelance + defaultChannel: Freelance + - type: Sprite + layers: + - state: crypt_rusted + - state: pirate_label + diff --git a/Resources/Prototypes/radio_channels.yml b/Resources/Prototypes/radio_channels.yml index 232fd41772..48cc0872a1 100644 --- a/Resources/Prototypes/radio_channels.yml +++ b/Resources/Prototypes/radio_channels.yml @@ -86,3 +86,12 @@ color: "#2ed2fd" # long range since otherwise it'd defeat the point of a handheld radio independent of telecomms longRange: true + +- type: radioChannel + id: Freelance + name: chat-radio-freelance + keycode: 'f' + frequency: 1984 + color: "#f6ce64" + # long range since otherwise it'd defeat the point of a handheld radio independent of telecomms + longRange: true diff --git a/Resources/Textures/Clothing/Ears/Headsets/freelance.rsi/alt-equipped-EARS.png b/Resources/Textures/Clothing/Ears/Headsets/freelance.rsi/alt-equipped-EARS.png new file mode 100644 index 0000000000000000000000000000000000000000..33931255341035ba8320cde963523ada077827c4 GIT binary patch literal 857 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I1|(Ny7T#lEV9d*Ob`Ho)PG(@xm{>Y-xA)-y zkz@6_wIcEwFBBeKa6IbhC~_oF>qU_4Ev~TGNi()MMLSPYdZe|(f`e~S_xgkX9l{TW zItqw59yxpWx{}cOTrSaz(s}3l-`{&*@QL+M=bpfV>|+Z8zRY=&Vq-RYX7^S5%MQw= zTZFFiT%YIVyX0qi?H!?@uW1fnfBnBVe|6!-5?&71R(GD;A6rtTgtX_atq9(6_e5s* zA@)Om`*<{JR+iX4P(OOJ;l7CV%O@5sq30vMvA?#zal(@Iq20rGPWw_qo(0BVN)byB z3bIZue>f>+l7(T3m(IlF$qre8M!#>HM||_$tRv@q&uq2DqZ5;a^Y^b%eVOI8)y4ej z$<3>Z{?A>W&CAbvclM)z-!Fczw+-0O8y~&zf8~qc@$LeZ4WE;)?$@#G-PgS@^y;qf z3sYtN^jFQ=$DA&Gp)fzYFKn99ro+=%_0=!TY222bF@t~8syW3q>@Q7!x`uDq&Azv2 zf9gZ&yh`oLPKY+o4?S?@4j&G`Q75LL%z89d{OPM zX_&n7v&268dljbJB6QaLsnT1$w?tDd>i&BEZ`s>-7Oj;&{xR{a z^`hcIbbM-g*P+m398C-?3Ji=K4h&2J4Op249uH);tvXgEvDMOQ{`u%R$-P^gnDch+ z+$G1>va43rbJF3ojN;PO_tsx~B6EB4f_JYncskD7oWE-IH}%{3uJ+%z{foE%{4w>< z-*;*=rnd3CbpLR7hM}Y8E|E=Qdu(H?-+ErK{4Ar|S}yK%{^f*rtWE$stkK^20sHh{ W`9?mP4-0@X#^CAd=d#Wzp$Py0Rem!7 literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Ears/Headsets/freelance.rsi/equipped-EARS.png b/Resources/Textures/Clothing/Ears/Headsets/freelance.rsi/equipped-EARS.png new file mode 100644 index 0000000000000000000000000000000000000000..30188f5e38d546fd4c45bcc490fca9c04583258b GIT binary patch literal 645 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I1|(Ny7T#lEV9d*Ob`Ho)PG(@xm{>Y-xA)-y zkz@6_wIcEwFBBeKa6IbhC~_oF>qU_4Ev~TGNi()MMLSPYdZe|(f`e~S_xgkX9l{TW zItqw59yxpWx{}cOTrSaz(s}3l-`{&*@QL+M=bpfV>|+Z8zRY=&Vq-RYX7^S5%MQw= zTZFFiT%YIVyX0qi?H!?@uW1fnfBnBVe|6!-5?&71R(GD;A6rtTgtX_atq9(6_e5s* zA@)Om`*<{JR+iX4P(OOJ;l7CV%O@5sq30vMvA?#zal(@Iq20rGPWw_qo(0BVN)byB z3bIZue>f>+l7(T3m(IlF$qre8M!#>HM||_$tRv@q&uq2DqZ5;a^Y^b%eVOI8)y4ej z$<3>Z{?A>W&CAbvclM)z-!Fczw+-0O8y~&zf8~qc@$LeZ4WE;)?$@#G-PgS@^y;qf z3sYtN^jFQ=$DA&Gp)fzYFKn99ro+=%_0=!TY222bF@t~8syW3q>@Q7!x`uDq&Azv2 zf9gZ&yd$)SOPkx8-fW#LTcgUwF&tLMKf zKUMO#XS>gz_cy0-#42JYD@< J);T3K0RU3`7I^>w literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/Ears/Headsets/freelance.rsi/icon.png b/Resources/Textures/Clothing/Ears/Headsets/freelance.rsi/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..0ff3f2c989362d67e30f45835f939895d8ce6e62 GIT binary patch literal 799 zcmV+)1K|9LP)Et+sRnJ)V2kSrB$TL*6#4IO52X6K}t$CFyEPwL~}N$+N0* z|DC664G#s~o8nOW==-ldP`?ddTfYB!==)zs5P5*}V%5JaIgP%HzE#z__n~DSPA{sO zz5{0)&~a~Tj#ic;vcr}IFDKBPfwpUCm=Ch5oO65!={5O9SFpPWy>h>0;Tyg5XX{zG ztycg5010qNS#tmY3labT3lag+-G2N400CD?L_t(o31eUw1*0J_8UiCd1QN#1Mv=kTF1o53T81gP$vx%?Esi}S^jBIeT~7$M2CT!i;Kb3M33Rv*^3OHK7AtFVwgsvBT`LG z?SHoJb8x`_V*JlA_p&6z^_#a*^oxs&!?VWAmoHJ|U=~tDgYy04U|yVs5Xb?@jv&S| zqN4z07%0wLj&R|Pdz$zh*(bPsh)WzC*fS}q z9kM&|NHRf!7&=9ku_(|d)t1cu_6?MM)2xWckhen#R~%V#;_Vf+C|xsBP0=&*Sd>)m zzw`9Wp~0YgQv&K9egCx!BHQq_<@=w9zW;RuwGVJ^SN$uJ)5yE%TU9N-4=w9(dQsK% z9XQ*7_IpQjwX#$zJ7k*hasthB(0UDx3qe+ubB^yIy(Yit3U>FPTkf|kegpOfXa#yR zMz#O|010qNS#tmY3labT3lag+-G2N400I|DL_t(o3GGxpOCv!Te#S&%1S3|7h=PJv zA_ro1CxU{VT%-TMQb{3dVPkuRi2eNmIYGVa4lW4V21P8yoTSj0jYh->>j&!IzN2p# zZ+Ej3Q`{9hu=~!;`|&*U%m)y(K!HGkf2@G07Qd&v+oGI?NTi&)e{fKB9Zs$)v9GsR zf^+iS{k?eIy`Kd zx3@Si7T@eU6;UN;5;R|p3U!oFsr^i)L}N7S0FN~_fyi+#5iH%@$d3;y`zl#q1-z1J z#YBSI?`#&|lU*42^jVHuCze4z9VL7fkQH5iEI)y7+TdZU4*khh+&va?^le%y;gaT< zdN%>8MBp3AP8(cca?M0KoyNzRU#N$`;o1}ui9~se9LTQ|VK0ZyJjt9tG0@T82GcZg zwKXU0?#>THtdLF#)T96*M1(;8G$+AY9>b^)2{hQ?x`(S~0>*jK277_C#EarIdV1|k zW)*%l6ClXEO=4-}0fV#aSR67dz&Twt5uj_fu-ypDW|1{6aQWPfs0iUKcZRW*V;F|v zyA!?v@p!y^k_&}`Ydk$X^B)SJKnnP>7uR|NoO*c75DArtTNquruj4UG=jy5Xt}9Xl zxK9L{V=>p2@zZ-