Adds more customization to robotic internal organs but it is not broken (#13068)

This commit is contained in:
Alberyk
2022-02-06 18:07:42 -03:00
committed by GitHub
parent ea5f66fa4c
commit f42edd018e
30 changed files with 130 additions and 60 deletions
@@ -253,7 +253,12 @@ var/global/list/valid_bloodtypes = list("A+", "A-", "B+", "B-", "AB+", "AB-", "O
++ind
if(ind > 1)
out += ", "
out += "\tMechanical [organ_name]"
var/datum/robolimb/R
if(pref.rlimb_data[name] && all_robolimbs[pref.rlimb_data[name]])
R = all_robolimbs[pref.rlimb_data[name]]
else
R = basic_robolimb
out += "\t[R.company] Mechanical [organ_name]"
else if(status == "nymph")
++ind
if(ind > 1)
@@ -732,7 +737,28 @@ var/global/list/valid_bloodtypes = list("A+", "A-", "B+", "B-", "AB+", "AB-", "O
if("Assisted")
pref.organ_data[organ_name] = "assisted"
if("Mechanical")
var/tmp_species = pref.species ? pref.species : SPECIES_HUMAN
var/list/usable_manufacturers = list()
for(var/company in internal_robolimbs)
var/datum/robolimb/M = chargen_robolimbs[company]
if(!(tmp_species in M.species_can_use))
continue
usable_manufacturers[company] = M
if(!usable_manufacturers.len)
return
var/choice = input(user, "Which manufacturer do you wish to use for this organ?") as null|anything in usable_manufacturers
if(!choice)
return
var/datum/robolimb/R = all_robolimbs[choice]
if(!(organ_name in R.allowed_internal_organs))
alert(user, "You can not select this manufacturer for this organ.")
return
pref.rlimb_data[organ_name] = choice
pref.organ_data[organ_name] = "mechanical"
if("Removed")
pref.organ_data[organ_name] = "removed"