diff --git a/code/game/jobs/job_controller.dm b/code/game/jobs/job_controller.dm index d0600b4cca..580d4f0fac 100644 --- a/code/game/jobs/job_controller.dm +++ b/code/game/jobs/job_controller.dm @@ -355,7 +355,7 @@ var/global/datum/controller/occupations/job_master if(job) //Equip custom gear loadout. - if(H.client.prefs.gear && H.client.prefs.gear.len) + if(H.client.prefs.gear && H.client.prefs.gear.len && job.title != "Cyborg" && job.title != "AI") for(var/thing in H.client.prefs.gear) var/datum/gear/G = gear_datums[thing] diff --git a/code/game/machinery/cryopod.dm b/code/game/machinery/cryopod.dm index ce9749402d..50b17ddc33 100644 --- a/code/game/machinery/cryopod.dm +++ b/code/game/machinery/cryopod.dm @@ -152,7 +152,8 @@ var/global/list/frozen_items = list() /obj/item/clothing/suit, /obj/item/clothing/shoes/magboots, /obj/item/blueprints, - /obj/item/clothing/head/helmet/space/ + /obj/item/clothing/head/helmet/space, + /obj/item/weapon/storage/internal ) /obj/machinery/cryopod/right @@ -186,6 +187,8 @@ var/global/list/frozen_items = list() if(W.contents.len) //Make sure we catch anything not handled by del() on the items. for(var/obj/item/O in W.contents) + if(istype(O,/obj/item/weapon/storage/internal)) //Stop eating pockets you fuck! + continue O.loc = src //Delete all items not on the preservation list. @@ -194,6 +197,7 @@ var/global/list/frozen_items = list() items -= announce // or the autosay radio. for(var/obj/item/W in items) + var/preserve = null for(var/T in preserve_items) if(istype(W,T)) @@ -204,11 +208,14 @@ var/global/list/frozen_items = list() del(W) else frozen_items += W + W.loc = null //Update any existing objectives involving this mob. for(var/datum/objective/O in all_objectives) - if(istype(O,/datum/objective/mutiny) && O.target == occupant.mind) //We don't want revs to get objectives that aren't for heads of staff. Letting them win or lose based on cryo is silly so we remove the objective. - del(O) //TODO: Update rev objectives on login by head (may happen already?) ~ Z + // We don't want revs to get objectives that aren't for heads of staff. Letting + // them win or lose based on cryo is silly so we remove the objective. + if(istype(O,/datum/objective/mutiny) && O.target == occupant.mind) + del(O) else if(O.target && istype(O.target,/datum/mind)) if(O.target == occupant.mind) if(O.owner && O.owner.current) diff --git a/code/modules/mob/living/silicon/robot/robot.dm b/code/modules/mob/living/silicon/robot/robot.dm index dd67574a11..754c1b5dc6 100644 --- a/code/modules/mob/living/silicon/robot/robot.dm +++ b/code/modules/mob/living/silicon/robot/robot.dm @@ -284,10 +284,13 @@ /mob/living/silicon/robot/proc/updatename(var/prefix as text) if(prefix) modtype = prefix - if(istype(mmi, /obj/item/device/mmi/posibrain)) - braintype = "Android" + if(mmi) + if(istype(mmi, /obj/item/device/mmi/posibrain)) + braintype = "Android" + else + braintype = "Cyborg" else - braintype = "Cyborg" + braintype = "Robot" var/changed_name = "" if(custom_name) diff --git a/code/modules/mob/living/silicon/robot/robot_modules.dm b/code/modules/mob/living/silicon/robot/robot_modules.dm index 256a9e5091..9ea3f67fd0 100644 --- a/code/modules/mob/living/silicon/robot/robot_modules.dm +++ b/code/modules/mob/living/silicon/robot/robot_modules.dm @@ -398,14 +398,14 @@ /obj/item/weapon/robot_module/drone name = "drone module" stacktypes = list( - /obj/item/stack/sheet/wood/cyborg = 1, - /obj/item/stack/sheet/mineral/plastic/cyborg = 1, - /obj/item/stack/sheet/rglass/cyborg = 5, + /obj/item/stack/sheet/wood = 1, + /obj/item/stack/sheet/mineral/plastic = 1, + /obj/item/stack/sheet/rglass = 5, /obj/item/stack/tile/wood = 5, /obj/item/stack/rods = 15, /obj/item/stack/tile/plasteel = 15, - /obj/item/stack/sheet/metal/cyborg = 20, - /obj/item/stack/sheet/glass/cyborg = 20, + /obj/item/stack/sheet/metal = 20, + /obj/item/stack/sheet/glass = 20, /obj/item/weapon/cable_coil = 30 )