From bb5e9c78aa062a0b53801b66393cb71fa4a22151 Mon Sep 17 00:00:00 2001 From: wshuwshuwshi <91352251+wshuwshuwshi@users.noreply.github.com> Date: Sun, 26 Jul 2026 14:07:04 -0400 Subject: [PATCH] MY FAT FUCKIN ROBOT HANDS (Gives Bulwarks prosthetics) (#22744) Adds a new prosthetic type for Bulwarks in the style of the other vaurcae prosthetics https://github.com/user-attachments/assets/b71d45e1-a850-4b80-9208-ed3965274939 ### Asset Licenses The following assets that **have not** been created by myself are included in this PR: N/A --------- Signed-off-by: wshuwshuwshi <91352251+wshuwshuwshi@users.noreply.github.com> --- code/__DEFINES/mobs.dm | 1 + .../station/vaurca/vaurca_subspecies.dm | 3 +- code/modules/organs/robolimbs.dm | 7 +++ html/changelogs/bulwark_prosthetic.yml | 58 ++++++++++++++++++ .../vaurca/r_vaurcabulwarklimbs.dmi | Bin 0 -> 1437 bytes 5 files changed, 67 insertions(+), 2 deletions(-) create mode 100644 html/changelogs/bulwark_prosthetic.yml create mode 100644 icons/mob/human_races/vaurca/r_vaurcabulwarklimbs.dmi diff --git a/code/__DEFINES/mobs.dm b/code/__DEFINES/mobs.dm index a7364896b8d..15fb6f1f49a 100644 --- a/code/__DEFINES/mobs.dm +++ b/code/__DEFINES/mobs.dm @@ -555,6 +555,7 @@ #define PROSTHETIC_TESLA_BODY "Industrial Tesla Powered Prosthetics" #define PROSTHETIC_VAURCA "Vaurca Robotic Limb" #define PROSTHETIC_VAURCA_WARRIOR "Vaurca Warrior Robotic Limb" +#define PROSTHETIC_VAURCA_BULWARK "Vaurca Bulwark Robotic Limb" #define PROSTHETIC_UNBRANDED "Unbranded" #define PROSTHETIC_UNBRANDED_EMISSIVE "Unbranded Emissive" #define PROSTHETIC_HOPLAN "Hoplan Head" diff --git a/code/modules/mob/living/carbon/human/species/station/vaurca/vaurca_subspecies.dm b/code/modules/mob/living/carbon/human/species/station/vaurca/vaurca_subspecies.dm index ed8a9cd522b..7f3ac951b4f 100644 --- a/code/modules/mob/living/carbon/human/species/station/vaurca/vaurca_subspecies.dm +++ b/code/modules/mob/living/carbon/human/species/station/vaurca/vaurca_subspecies.dm @@ -388,8 +388,7 @@ Bulwarks are much larger and have significantly thicker carapaces than most Vaur sprint_speed_factor = 1.0 stamina = 50 - possible_external_organs_modifications = list("Normal", "Amputated") //We don't have any limb modfications for this species, yet - valid_prosthetics = null + valid_prosthetics = list(PROSTHETIC_VAURCA_BULWARK) flags = NO_SLIP | NO_CHUBBY | NO_ARTERIES | PHORON_IMMUNE | NO_COLD_SLOWDOWN | NO_EQUIP_SPEEDMODS diff --git a/code/modules/organs/robolimbs.dm b/code/modules/organs/robolimbs.dm index be8bb42b583..9891e0b7ab1 100644 --- a/code/modules/organs/robolimbs.dm +++ b/code/modules/organs/robolimbs.dm @@ -217,6 +217,13 @@ GLOBAL_DATUM(basic_robolimb, /datum/robolimb) allowed_external_organs = list(BP_L_HAND, BP_R_HAND) paintable = TRUE +/datum/robolimb/vaurca/bulwark + company = PROSTHETIC_VAURCA_BULWARK + desc = "An adaptation of designs from old Sedantis, it has been redesigned to accomodate larger bioforms." + icon = 'icons/mob/human_races/vaurca/r_vaurcabulwarklimbs.dmi' + species_can_use = list(SPECIES_VAURCA_BULWARK) + paintable = TRUE + /datum/robolimb/hoplan company = PROSTHETIC_HOPLAN desc = "A refined helmet with an industrial lean. Extra plating seems to be applied to the top surface while the rest of the head features \ diff --git a/html/changelogs/bulwark_prosthetic.yml b/html/changelogs/bulwark_prosthetic.yml new file mode 100644 index 00000000000..b50d7ecd9e2 --- /dev/null +++ b/html/changelogs/bulwark_prosthetic.yml @@ -0,0 +1,58 @@ +################################ +# Example Changelog File +# +# Note: This file, and files beginning with ".", and files that don't end in ".yml" will not be read. If you change this file, you will look really dumb. +# +# Your changelog will be merged with a master changelog. (New stuff added only, and only on the date entry for the day it was merged.) +# When it is, any changes listed below will disappear. +# +# Valid Prefixes: +# bugfix +# - (fixes bugs) +# wip +# - (work in progress) +# qol +# - (quality of life) +# soundadd +# - (adds a sound) +# sounddel +# - (removes a sound) +# rscadd +# - (adds a feature) +# rscdel +# - (removes a feature) +# imageadd +# - (adds an image or sprite) +# imagedel +# - (removes an image or sprite) +# spellcheck +# - (fixes spelling or grammar) +# experiment +# - (experimental change) +# balance +# - (balance changes) +# code_imp +# - (misc internal code change) +# refactor +# - (refactors code) +# config +# - (makes a change to the config files) +# admin +# - (makes changes to administrator tools) +# server +# - (miscellaneous changes to server) +################################# + +# Your name. +author: Whitewolftamer + +# Optional: Remove this file after generating master changelog. Useful for PR changelogs that won't get used again. +delete-after: True + +# Any changes you've made. See valid prefix list above. +# INDENT WITH TWO SPACES. NOT TABS. SPACES. +# SCREW THIS UP AND IT WON'T WORK. +# Also, this gets changed to [] after reading. Just remove the brackets when you add new shit. +# Please surround your changes in double quotes ("). It works without them, but if you use certain characters it screws up compiling. The quotes will not show up in the changelog. +changes: + - rscadd: "Adds new prosthetic limbs for Vaurca bulwarks." diff --git a/icons/mob/human_races/vaurca/r_vaurcabulwarklimbs.dmi b/icons/mob/human_races/vaurca/r_vaurcabulwarklimbs.dmi new file mode 100644 index 0000000000000000000000000000000000000000..2f0a557d62e7eadb0ee6974978aa4796195d4a2c GIT binary patch literal 1437 zcmZ8g3p5jY7@u+xx?D=GF^}f`n&VaS$VJS&-(@56$mTK2!rD|Wi8y&vo?(?ace3Gl zw5AXdOUaN&$3o1=v#{A+_nzB1-TyiN^L^j>|Np=5`~AM}pXuS|cvM_L8~^|ug*w@L z0RTcO-?!Ld003|j5kwIfe-9TQhpw(J5C|kECzqX_t)Za-g+db(6XW9Iuvo0VzJ79Y zaz;jmnVDHqQW6*pMk0|wAP|K@+1c4ySXc-!TwPsNRaN!$^o)#*Fc^%Qnp#*`m;f_- z0qG|=7E17P^9Gz<7>^JHIXIty1pDwSmoQQ2gs8Y!03fN{+YgPwe%fuVvk&<)3-SSe^P<9^Bh| z&#$nwOgt2*<})u%BxzZnG%`#V>%Q&fcdV-5zFS&I&tsh|_d$lC>I(>dpzt`H2k*Km z2?%`~k(oL++yVdy2SV*_eUi#K)6ZVsDw=8Qdx_(Bh{y44|8O5yK8EsB`N7GW&RZFKytjy^GV&nW17*q zfs^9qq|wRVUZ(Ge36={#qdORy11!>B2@i2Xm<}Q=%lATIO0%l9gB19<5|(Aqq=O?> z5Vwh1A3ncpCJqdw2ds=%4=!ExShg6YIaDpUMk4ENNlmR3=I8dS#bfU|AVTqeXVCIp zwg(~*+aaPJH4AQH29%lbFsoDY#9RIMDjz82E9X7>mM57C(q-24XI7p(0O?yfa)B}e zFK)^7Ktc2exqqBf=AKEYUsBT;vPFDS44uNs>(*Wljw!8)+2@X5m^N|1j&n=22l{4R zpN;!&1Rq+hz5MG3m0H-fWFI)981;z`et3I6L^dtvJbc;F-|IpIGM!tJMpJCFjjLcY zSR(Z$8W2+?xR)tPo( z*kxlKw1vx=z>kUV8vf1%#jht@Bot-#^eC!h3{B7n4j!j7C@+Y4j1l=WQx(p>CY?f~{YDhgS z=vk$z{_~*2ux_maeR#im_6%F%RfeM6^NEg>@Q!%J@JrKO23po{b9Oi6#3kZm5cJNd zoC^G%tF=eOdPrl~%khP%-0KG@_FmE3b9Xn6oHL*5wDY!Z2t3H8zP91FB=gRpOw}9H zWZQgoIK1L4?J9LtZsGxIbFXM;c627AfAjpzZsQQ!AGh?ijgMI;L#OKsnu%-bt;xKO zFZd!S#5bGI`_4N%4{j(jcebzNo?UDBwgu$RYh0`Mk^2HlM=bwujJ_*$AXWKWyB$wq zv2adC_uaabF^hRXW8(?s9PMb+*ywChag$_v5ZC0xEw@ z@MqcjyONnD?SIC;$b2?zsKoX4oC_{!u6(n7=;sCqqKl@H!&hQrODvi7ocu)#Dq;h! Zxh`RO7K||Kog#j}4s~#|C;xFV^>6%*pm6{I literal 0 HcmV?d00001