Some Robotic Things (#11406)

This commit is contained in:
Geeves
2021-03-19 16:22:48 +02:00
committed by GitHub
parent f3b350e6d4
commit e086a96993
4 changed files with 29 additions and 5 deletions
@@ -12,7 +12,8 @@
/obj/item/device/mmi/digital/posibrain/Initialize()
. = ..()
brainmob.name = "[pick(list("PBU","HIU","SINA","ARMA","OSI"))]-[rand(100, 999)]"
var/datum/language/L = all_languages[LANGUAGE_EAL]
brainmob.name = L.get_random_name()
brainmob.real_name = brainmob.name
/obj/item/device/mmi/digital/posibrain/attack_self(mob/user)
@@ -255,7 +255,11 @@
return
var/mob/living/carbon/human/new_shell = new(get_turf(src), chest.linked_frame)
forceMove(new_shell) //so people won't mess around with the chassis until it is deleted
// replace the IPC's microbattery cell with the one that was in the robot chest
var/obj/item/organ/internal/cell/C = new_shell.internal_organs_by_name[BP_CELL]
C.replace_cell(chest.cell)
//so people won't mess around with the chassis until it is deleted
forceMove(new_shell)
M.brainmob.mind.transfer_to(new_shell)
qdel(M)
new_shell.add_language(LANGUAGE_EAL)
@@ -265,6 +269,8 @@
newname = L.get_random_name()
new_shell.real_name = newname
new_shell.name = new_shell.real_name
var/obj/item/organ/internal/mmi_holder/posibrain/P = new_shell.internal_organs_by_name[BP_BRAIN]
P.setup_brain()
new_shell.change_appearance(APPEARANCE_ALL_HAIR | APPEARANCE_SKIN | APPEARANCE_EYE_COLOR, new_shell)
qdel(src)
return
@@ -431,4 +437,4 @@
/obj/item/robot_parts/chest/industrial
name = "Hephaestus industrial torso"
linked_frame = SPECIES_IPC_G1
linked_frame = SPECIES_IPC_G1
+10 -2
View File
@@ -74,7 +74,7 @@
/obj/item/organ/internal/cell/Initialize()
robotize()
cell = new cell(src)
replace_cell(new cell(src))
. = ..()
/obj/item/organ/internal/cell/proc/percent()
@@ -142,9 +142,17 @@
if(cell)
to_chat(user, SPAN_WARNING("There is a power cell already installed."))
else if(user.unEquip(W, src))
cell = W
replace_cell(W)
to_chat(user, SPAN_NOTICE("You insert \the [cell]."))
/obj/item/organ/internal/cell/proc/replace_cell(var/obj/item/cell/C)
if(istype(cell))
qdel(cell)
if(C.loc != src)
C.forceMove(src)
cell = C
name = "[initial(name)] ([C.name])"
/obj/item/organ/internal/cell/listen()
if(get_charge())
return "faint hum of the power bank"
@@ -0,0 +1,9 @@
author: Geeves
delete-after: True
changes:
- tweak: "Making an IPC at robotics will give its microbattery the cell you used when you made the endoskeleton."
- bugfix: "IPCs made at robotics will now have posibrains designations that match their names."
- rscadd: "Microbatteries will now have the class of cell installed next to its name, which allows self-diagnostics to show which cell you have as an IPC."
- tweak: "Posibrains can now get any names from the EAL language selection options."