From 2698e8922bb441136aa91cc475cf4fd4c8245efe Mon Sep 17 00:00:00 2001 From: Radezolid Date: Fri, 6 Dec 2024 16:33:55 -0300 Subject: [PATCH] Add a foam sabre (#2310) * Added sabre + sheath * Can't forget the filled sheath * Fix comment + fun StaminaDamageOnHit * Add the sabre to the maints loot pool * Add the sword to the mime loadout * Let's add a sharp version! * Why not add it to the syndicate catalog? * Conventions! * Grammar! * Fix indent * Fix indent on the sabre * Now in mail! * Indent! --------- Co-authored-by: Milon Co-authored-by: deltanedas <39013340+deltanedas@users.noreply.github.com> --- .../en-US/deltav/store/uplink-catalog.ftl | 3 ++ .../Catalog/Fills/Items/Belts/belts.yml | 20 ++++++++++++ .../DeltaV/Catalog/uplink_catalog.yml | 15 +++++++++ .../DeltaV/Entities/Clothing/Belt/belts.yml | 11 +++++++ .../DeltaV/Entities/Objects/Fun/toys.yml | 30 ++++++++++++++++++ .../Entities/Objects/Specific/Mail/mail.yml | 9 ++++++ .../Objects/Weapons/Melee/foam_blade.yml | 15 +++++++++ .../DeltaV/Loadouts/Jobs/Civilian/mime.yml | 5 +++ .../Prototypes/DeltaV/Mail/mailDeliveries.yml | 3 +- .../Markers/Spawners/Random/maintenance.yml | 1 + .../Prototypes/Loadouts/loadout_groups.yml | 1 + .../Belt/foamsheath.rsi/equipped-BELT.png | Bin 0 -> 444 bytes .../Clothing/Belt/foamsheath.rsi/meta.json | 25 +++++++++++++++ .../sheath-sabre-equipped-BELT.png | Bin 0 -> 537 bytes .../Belt/foamsheath.rsi/sheath-sabre.png | Bin 0 -> 424 bytes .../Clothing/Belt/foamsheath.rsi/sheath.png | Bin 0 -> 219 bytes .../Objects/Fun/Toys/foam_sabre.rsi/icon.png | Bin 0 -> 408 bytes .../Fun/Toys/foam_sabre.rsi/inhand-left.png | Bin 0 -> 362 bytes .../Fun/Toys/foam_sabre.rsi/inhand-right.png | Bin 0 -> 363 bytes .../Objects/Fun/Toys/foam_sabre.rsi/meta.json | 22 +++++++++++++ 20 files changed, 159 insertions(+), 1 deletion(-) create mode 100644 Resources/Prototypes/DeltaV/Entities/Objects/Weapons/Melee/foam_blade.yml create mode 100644 Resources/Prototypes/DeltaV/Loadouts/Jobs/Civilian/mime.yml create mode 100644 Resources/Textures/DeltaV/Clothing/Belt/foamsheath.rsi/equipped-BELT.png create mode 100644 Resources/Textures/DeltaV/Clothing/Belt/foamsheath.rsi/meta.json create mode 100644 Resources/Textures/DeltaV/Clothing/Belt/foamsheath.rsi/sheath-sabre-equipped-BELT.png create mode 100644 Resources/Textures/DeltaV/Clothing/Belt/foamsheath.rsi/sheath-sabre.png create mode 100644 Resources/Textures/DeltaV/Clothing/Belt/foamsheath.rsi/sheath.png create mode 100644 Resources/Textures/DeltaV/Objects/Fun/Toys/foam_sabre.rsi/icon.png create mode 100644 Resources/Textures/DeltaV/Objects/Fun/Toys/foam_sabre.rsi/inhand-left.png create mode 100644 Resources/Textures/DeltaV/Objects/Fun/Toys/foam_sabre.rsi/inhand-right.png create mode 100644 Resources/Textures/DeltaV/Objects/Fun/Toys/foam_sabre.rsi/meta.json diff --git a/Resources/Locale/en-US/deltav/store/uplink-catalog.ftl b/Resources/Locale/en-US/deltav/store/uplink-catalog.ftl index 4b860e6efdd..4cf03df5f92 100644 --- a/Resources/Locale/en-US/deltav/store/uplink-catalog.ftl +++ b/Resources/Locale/en-US/deltav/store/uplink-catalog.ftl @@ -20,3 +20,6 @@ uplink-doorjack-desc = A specialized cryptographic sequencer, designed solely to uplink-home-run-bat-name = Home Run Bat uplink-home-run-bat-desc = Rigged bat pre-coated in blood for Syndicate tee-ball practice. Launch your foes! + +uplink-foam-sabre-name = Sharp Foam Sabre +uplink-foam-sabre-desc = A blade disguised as a toy foam sabre. Perfect for assassins that pretend playing around. diff --git a/Resources/Prototypes/DeltaV/Catalog/Fills/Items/Belts/belts.yml b/Resources/Prototypes/DeltaV/Catalog/Fills/Items/Belts/belts.yml index b563757acb5..cbdee1d05fa 100644 --- a/Resources/Prototypes/DeltaV/Catalog/Fills/Items/Belts/belts.yml +++ b/Resources/Prototypes/DeltaV/Catalog/Fills/Items/Belts/belts.yml @@ -22,3 +22,23 @@ - id: Bloodpack - id: SyringeEphedrine - id: EmergencyMedipen + +- type: entity + id: ClothingBeltFoamSheathFilled + parent: ClothingBeltFoamSheath + suffix: Filled + components: + - type: ContainerFill + containers: + item: + - FoamSabre + +- type: entity + id: ClothingBeltRealFoamSheathFilled + parent: ClothingBeltFoamSheath + suffix: Filled, Real + components: + - type: ContainerFill + containers: + item: + - RealFoamSabre diff --git a/Resources/Prototypes/DeltaV/Catalog/uplink_catalog.yml b/Resources/Prototypes/DeltaV/Catalog/uplink_catalog.yml index f8c317772ae..f03c88af6b5 100644 --- a/Resources/Prototypes/DeltaV/Catalog/uplink_catalog.yml +++ b/Resources/Prototypes/DeltaV/Catalog/uplink_catalog.yml @@ -102,3 +102,18 @@ Telecrystal: 16 categories: - UplinkWeaponry + +- type: listing + id: UplinkRealFoamSabre + name: uplink-foam-sabre-name + description: uplink-foam-sabre-desc + productEntity: ClothingBeltRealFoamSheathFilled + icon: + entity: RealFoamSabre + discountCategory: usualDiscounts + discountDownTo: + Telecrystal: 4 + cost: + Telecrystal: 6 + categories: + - UplinkWeaponry diff --git a/Resources/Prototypes/DeltaV/Entities/Clothing/Belt/belts.yml b/Resources/Prototypes/DeltaV/Entities/Clothing/Belt/belts.yml index cef0cf394c1..a609238d9be 100644 --- a/Resources/Prototypes/DeltaV/Entities/Clothing/Belt/belts.yml +++ b/Resources/Prototypes/DeltaV/Entities/Clothing/Belt/belts.yml @@ -73,3 +73,14 @@ ents: [] medkit: !type:ContainerSlot {} - type: Appearance + +- type: entity + parent: ClothingBeltSheath + id: ClothingBeltFoamSheath + name: foam sheath + description: A foam sheath to cosplay as the captain! It seems to be able to fit a real sabre in it. + components: + - type: Sprite + sprite: DeltaV/Clothing/Belt/foamsheath.rsi + - type: Clothing + sprite: DeltaV/Clothing/Belt/foamsheath.rsi diff --git a/Resources/Prototypes/DeltaV/Entities/Objects/Fun/toys.yml b/Resources/Prototypes/DeltaV/Entities/Objects/Fun/toys.yml index 2a22e6fd938..39593702130 100644 --- a/Resources/Prototypes/DeltaV/Entities/Objects/Fun/toys.yml +++ b/Resources/Prototypes/DeltaV/Entities/Objects/Fun/toys.yml @@ -45,3 +45,33 @@ - type: Sprite sprite: DeltaV/Objects/Fun/Toys/zerotoy.rsi state: icon + +- type: entity + parent: BaseItem + id: FoamSabre + name: foam sabre + description: Cosplay as a captain and command your group of friends! + components: + - type: Sprite + sprite: DeltaV/Objects/Fun/Toys/foam_sabre.rsi + state: icon + - type: MeleeWeapon + wideAnimationRotation: -135 + attackRate: 1.5 + range: 2.0 + damage: + types: + Blunt: 0 + - type: Reflect # Imitation of captain's sword, 1% chance of reflecting a projectile for the fun chance of it happening. + reflectProb: .01 + spread: 90 + - type: Item + size: Normal + sprite: DeltaV/Objects/Fun/Toys/foam_sabre.rsi + - type: Tag + tags: + - CaptainSabre # To be able to store it a captain's sheath if you get your hands on one. + - type: StaminaDamageOnHit + damage: 5 + - type: Execution + doAfterDuration: 3.0 diff --git a/Resources/Prototypes/DeltaV/Entities/Objects/Specific/Mail/mail.yml b/Resources/Prototypes/DeltaV/Entities/Objects/Specific/Mail/mail.yml index 2fa02ebc002..9bb228637a3 100644 --- a/Resources/Prototypes/DeltaV/Entities/Objects/Specific/Mail/mail.yml +++ b/Resources/Prototypes/DeltaV/Entities/Objects/Specific/Mail/mail.yml @@ -1732,3 +1732,12 @@ amount: 1 - id: PaperMailHydroCoTrial amount: 1 + +- type: entity + parent: BaseMailLarge + id: MailFoamSabre + suffix: Foam sabre + components: + - type: Mail + contents: + - id: ClothingBeltFoamSheathFilled diff --git a/Resources/Prototypes/DeltaV/Entities/Objects/Weapons/Melee/foam_blade.yml b/Resources/Prototypes/DeltaV/Entities/Objects/Weapons/Melee/foam_blade.yml new file mode 100644 index 00000000000..ac47fed7992 --- /dev/null +++ b/Resources/Prototypes/DeltaV/Entities/Objects/Weapons/Melee/foam_blade.yml @@ -0,0 +1,15 @@ +- type: entity + parent: FoamSabre + id: RealFoamSabre + name: foam sabre + suffix: Real + components: + - type: MeleeWeapon + attackRate: 1.5 + damage: + types: + Slash: 14 + soundHit: + path: /Audio/Weapons/bladeslice.ogg + - type: StaminaDamageOnHit + damage: 0 diff --git a/Resources/Prototypes/DeltaV/Loadouts/Jobs/Civilian/mime.yml b/Resources/Prototypes/DeltaV/Loadouts/Jobs/Civilian/mime.yml new file mode 100644 index 00000000000..43740a3097a --- /dev/null +++ b/Resources/Prototypes/DeltaV/Loadouts/Jobs/Civilian/mime.yml @@ -0,0 +1,5 @@ +# Belt +- type: loadout + id: FoamSabre + equipment: + belt: ClothingBeltFoamSheathFilled diff --git a/Resources/Prototypes/DeltaV/Mail/mailDeliveries.yml b/Resources/Prototypes/DeltaV/Mail/mailDeliveries.yml index c951d09986e..d7cd57d75bf 100644 --- a/Resources/Prototypes/DeltaV/Mail/mailDeliveries.yml +++ b/Resources/Prototypes/DeltaV/Mail/mailDeliveries.yml @@ -51,7 +51,7 @@ MailNFSodaSpaceUp: 0.2 #End Soda MailNFSmoke: 0.4 - MailSpaceVillainDIY: 0.5 + MailSpaceVillainDIY: 0.4 # Lowered to accommodate the foam sabre MailSignallerKit: 0.5 MailSunglasses: 1 MailNFSoaps: 0.5 @@ -63,6 +63,7 @@ MailNFUnusualFood: 1.09 # DeltaV: increased to offset throngler toy MailNFUnusualProduce: 1 MailNFVagueThreat: 0.5 + MailFoamSabre: 0.1 # Mainly for Glacier MailWinterCoat: 1.5 diff --git a/Resources/Prototypes/Entities/Markers/Spawners/Random/maintenance.yml b/Resources/Prototypes/Entities/Markers/Spawners/Random/maintenance.yml index 2ef16c6ec18..93194945ee3 100644 --- a/Resources/Prototypes/Entities/Markers/Spawners/Random/maintenance.yml +++ b/Resources/Prototypes/Entities/Markers/Spawners/Random/maintenance.yml @@ -165,6 +165,7 @@ - id: CigarGold - id: ClothingUniformJumpsuitFamilyGuy - id: WristwatchGold + - id: ClothingBeltFoamSheathFilled # DeltaV - Add small chance of it spawning in maints locker. #- id: RubberStampGreytide # Delta-V: prevent greytide stamp from spawning - type: entity diff --git a/Resources/Prototypes/Loadouts/loadout_groups.yml b/Resources/Prototypes/Loadouts/loadout_groups.yml index 0a167aca0c7..d801a9fce93 100644 --- a/Resources/Prototypes/Loadouts/loadout_groups.yml +++ b/Resources/Prototypes/Loadouts/loadout_groups.yml @@ -634,6 +634,7 @@ loadouts: - MimeSuspendersRed - MimeSuspendersBlack + - FoamSabre # DeltaV - Add foam sabre to the mime's loadout. - type: loadoutGroup id: SurvivalMime diff --git a/Resources/Textures/DeltaV/Clothing/Belt/foamsheath.rsi/equipped-BELT.png b/Resources/Textures/DeltaV/Clothing/Belt/foamsheath.rsi/equipped-BELT.png new file mode 100644 index 0000000000000000000000000000000000000000..d404e4143e0137ca1a7d523153d7af2fd8068f7d GIT binary patch literal 444 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I1|(Ny7T#lEU~KkuaSW-L^Y)gZ-(dp@)(7cF z4jgDva-Aw=RlqPo!XkFrJw^5t4*G|Jmhi|l9AsLlps2>S?YIEbN{tok>Zh~aQ%}v* zK3=);Ki_^vK^V9x^87*mdBrPrC;Gc>lo@1X<#cN6imTs8G-mLme`~%x`Q!8j^W)hg@y*SuHhry(b)vz?tl$Rlb@1V<}?ffbn3-q@s zEYn&MZMgdNi>|X=bFO|Za29|$Qc#fj+TVkYiJVpMGp`!ns?)y7;4Prc@Z2GX-)M*N zmAQfpx9n=mMJtc}D_<#6d2I7(!?3OQ!{$o=xE#^6#%}u|HT{GM(F^p;tXc9K>mKb^ z*rqBk!k{hCeIa^@xbUG{jBj2YE;r*%T+6WMyFCB=R|}e2MbtwWwzQ^s)c$&RKk)*) iPEw@I1%aRJ_ZV0l)~POH<~#?C6$VdNKbLh*2~7Y8daefm literal 0 HcmV?d00001 diff --git a/Resources/Textures/DeltaV/Clothing/Belt/foamsheath.rsi/meta.json b/Resources/Textures/DeltaV/Clothing/Belt/foamsheath.rsi/meta.json new file mode 100644 index 00000000000..6383a3c4561 --- /dev/null +++ b/Resources/Textures/DeltaV/Clothing/Belt/foamsheath.rsi/meta.json @@ -0,0 +1,25 @@ +{ + "version": 1, + "license": "CC-BY-SA-3.0", + "copyright": "Taken from tgstation at commit https://github.com/tgstation/tgstation/commit/555fa0ed9f380509156d94131bd8a3f1c1fee1cf , edited by Skarletto (github), modified by Radezolid for foam sheath", + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "equipped-BELT", + "directions": 4 + }, + { + "name": "sheath-sabre-equipped-BELT", + "directions": 4 + }, + { + "name": "sheath-sabre" + }, + { + "name": "sheath" + } + ] +} diff --git a/Resources/Textures/DeltaV/Clothing/Belt/foamsheath.rsi/sheath-sabre-equipped-BELT.png b/Resources/Textures/DeltaV/Clothing/Belt/foamsheath.rsi/sheath-sabre-equipped-BELT.png new file mode 100644 index 0000000000000000000000000000000000000000..94674c9adb2be33ff61b40abf76bb0d5bc4fbdff GIT binary patch literal 537 zcmV+!0_OdRP)&&Q|{~rh{I=lX7#)bVpfQX2Qh=^zhsW>0bXVL-y$A;r0ArOJ({A{jW^~h&d*MM z1^xc<2>^J0eT#K`?UNnUA-DIz^M}VQdXpg>$1xs)bRd`q&sE!8$l6<=)`hB+g00Y- z3~~D6m^iNma%XRA8J#Ip)dz9GB;~BXCE*e0I(Q> z5hK9X>;o18i1K}3YxZ=%zfpb96KUx!U+F;lo|oJZh=_=Yh=_=Yh=_F9s6-pTEk3Bj zT9w#FCE9oZZZ(HW$@Hj!S{Lg2W*Fy`dNPat8ZZK*4Zv2tzadDucMQ*ti(4s>XzhVZ-Hpy z+d#J@A1i=po60uP31R5~w)Mw{Rt;gP0DRxK(x7CTjSdw6!5>YM>h$5&A<+#Mx=b`^ b5bc0(<_p3`BgGBa00000NkvXXu0mjfe{%Eo literal 0 HcmV?d00001 diff --git a/Resources/Textures/DeltaV/Clothing/Belt/foamsheath.rsi/sheath-sabre.png b/Resources/Textures/DeltaV/Clothing/Belt/foamsheath.rsi/sheath-sabre.png new file mode 100644 index 0000000000000000000000000000000000000000..22f7868918888cea5d95ee0a60815baa75cf92e4 GIT binary patch literal 424 zcmV;Z0ayNsP)N4{ zB}>N+LYHt3H6^qa3#O?<4&HEq8QUQEwh$sH$|A>+o%K+4wKa*bf)4=p zw&CQC*g)eQI6E&;uP|=8>S`+-M_Byoz7|*A>F``+*r`br;goEtSCF?>L57{0crJ_G zi6|mG(cIKgfvFoSQ;W6M~X-hDI!Ir zh!pV`gi=c2hYQJ~5aFe!cWMC8S|xNY^I S6XRY00000B>ArY-_uWjT!Y#`A3&_2>t zxuW~bMAIH)*JC^Hxw-`uItthv^-f%JOVO>Yke@}1<@?KZ6BL9xUFtg0On6_+c%*zu zIMXd{oAjeyPXl&;Wv_7b>a-P{ZN%%LT=ae0uKvSkQqqdPoAo&hNL|m9XtkYzf7@cJ&){ur(5Kaj3L7*WJxMkPaQh#KA96h*;f9+#ITdL%O-f4%MY~aL~m< z6@-*RH^IS09v5>awQjvDNNx%Vq`RP67OQGU;1j)vk%7lyp2E5RV8tJvDd~U>9?A3gDob6%jJ< zUuQy+bV_+FFJ-_?4qju3up40ez(lK}&HOl>2#Dh^ub+5)%i!T%hu0X+(wrVJ4R7}c zX!i#IfUq0L3-}AyG)Njfrd0Qdsx88+zf&~R=5000015QgDN4iO0J!Y4=}Fa(0i+{2&)_)4mE1y?S80~ab%2n0HTyKxZ)goA%1jkHL4 zpGpRMcfU`nJQ4u_000000Du9COw_K+Jm|geKBK)xdu=bT-U}vakRlT;^PsEG??ENB z*C;a4Bn_TN9Z#7DJ)gE()s5~C$KD0(4@a%)M$f0MdOS^&vb)x|1PedL*(TSughhon z&z7*r@a9noiwOLHeF~i$!)|#Y2zCM1Y-ukZ?gUr5n-<`)qxU2SFW4u4m$#S2j>7GSTSauZ>;8 zEJkT#l`xC&#=C@Bg*RR$%rd<3dSA%%Op~kXrdNo*zXO0rE;V!=`+1ylC;$Ke07*qo IM6N<$f_Ax^)&Kwi literal 0 HcmV?d00001 diff --git a/Resources/Textures/DeltaV/Objects/Fun/Toys/foam_sabre.rsi/inhand-right.png b/Resources/Textures/DeltaV/Objects/Fun/Toys/foam_sabre.rsi/inhand-right.png new file mode 100644 index 0000000000000000000000000000000000000000..44f5e32a29136e504512ac8e7e8a465598e1d5ca GIT binary patch literal 363 zcmV-x0hIoUP)2OX0RR9100000PhC2-E}gD_{-iFQR)uJmyD4Uz zRhB!c3Q>Rd;D;TKCvDnJFXx?(dQfC_>GX2mY14LkIG)1hw(!>G#4|<{RDy+{X{P8N zDq(5i&0QrdHM|)tVd>#bZwc=b-uNY~Ecp8CbM@S@;(DhK4gdfE0001Bg#C7-DQt=F zHMkw_^ZWfTS?*-N-9#_pWp=K%hyKGr*LstVDnka7F>2fXyE ze(n;ISli82LK5N4)FmVp-b__OlHtwR5|R#YnzjoH5qckhU{`RvA+N;zR8If^002ov JPDHLkV1g)pq?!N# literal 0 HcmV?d00001 diff --git a/Resources/Textures/DeltaV/Objects/Fun/Toys/foam_sabre.rsi/meta.json b/Resources/Textures/DeltaV/Objects/Fun/Toys/foam_sabre.rsi/meta.json new file mode 100644 index 00000000000..e9322bc4d34 --- /dev/null +++ b/Resources/Textures/DeltaV/Objects/Fun/Toys/foam_sabre.rsi/meta.json @@ -0,0 +1,22 @@ +{ + "version": 1, + "license": "CC-BY-SA-3.0", + "copyright": "Taken from tgstation at commit https://github.com/tgstation/tgstation/commit/555fa0ed9f380509156d94131bd8a3f1c1fee1cf, modified by Radezolid for foam sabre", + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "icon" + }, + { + "name": "inhand-left", + "directions": 4 + }, + { + "name": "inhand-right", + "directions": 4 + } + ] +}