diff --git a/code/modules/mob/living/silicon/robot/drone/drone_items.dm b/code/modules/mob/living/silicon/robot/drone/drone_items.dm index e91670df5d..9cb892d7a0 100644 --- a/code/modules/mob/living/silicon/robot/drone/drone_items.dm +++ b/code/modules/mob/living/silicon/robot/drone/drone_items.dm @@ -62,8 +62,7 @@ /obj/item/robot_parts, /obj/item/borg/upgrade, /obj/item/device/flash, //to build borgs, - /obj/item/organ/internal/brain, //to insert into MMIs, - /obj/item/stack/cable_coil, //again, for borg building, + /obj/item/weapon/disk, //Maaaaay be too general /obj/item/weapon/circuitboard, /obj/item/slime_extract, /obj/item/weapon/reagent_containers/glass, @@ -83,6 +82,25 @@ /obj/item/weapon/grown ) +/obj/item/weapon/gripper/no_use/organ + name = "organ gripper" + icon_state = "gripper-flesh" + desc = "A specialized grasping tool used to preserve and manipulate organic material." + + can_hold = list( + /obj/item/organ + ) + +/obj/item/weapon/gripper/no_use/mech + name = "exosuit gripper" + icon_state = "gripper-mech" + desc = "A large, heavy-duty grasping tool used in construction of mechs." + + can_hold = list( + /obj/item/mecha_parts/part, + /obj/item/mecha_parts/mecha_equipment + ) + /obj/item/weapon/gripper/no_use //Used when you want to hold and put items in other things, but not able to 'use' the item /obj/item/weapon/gripper/no_use/attack_self(mob/user as mob) diff --git a/code/modules/mob/living/silicon/robot/robot_modules.dm b/code/modules/mob/living/silicon/robot/robot_modules.dm index 69371109ec..79c9f1a5ca 100644 --- a/code/modules/mob/living/silicon/robot/robot_modules.dm +++ b/code/modules/mob/living/silicon/robot/robot_modules.dm @@ -187,7 +187,7 @@ var/global/list/robot_modules = list( /obj/item/weapon/robot_module/medical/surgeon/New() src.modules += new /obj/item/device/flash(src) src.modules += new /obj/item/device/healthanalyzer(src) - src.modules += new /obj/item/weapon/reagent_containers/borghypo/surgeon(src) + src.modules += new /obj/item/weapon/reagent_containers/borghypo(src) src.modules += new /obj/item/weapon/scalpel(src) src.modules += new /obj/item/weapon/hemostat(src) src.modules += new /obj/item/weapon/retractor(src) @@ -197,6 +197,7 @@ var/global/list/robot_modules = list( src.modules += new /obj/item/weapon/bonesetter(src) src.modules += new /obj/item/weapon/circular_saw(src) src.modules += new /obj/item/weapon/surgicaldrill(src) + src.modules += new /obj/item/weapon/gripper/no_use/organ(src) src.modules += new /obj/item/weapon/extinguisher/mini(src) src.emag = new /obj/item/weapon/reagent_containers/spray(src) src.emag.reagents.add_reagent("pacid", 250) @@ -241,10 +242,11 @@ var/global/list/robot_modules = list( src.modules += new /obj/item/device/healthanalyzer(src) src.modules += new /obj/item/device/reagent_scanner/adv(src) src.modules += new /obj/item/roller_holder(src) - src.modules += new /obj/item/weapon/reagent_containers/borghypo/crisis(src) + src.modules += new /obj/item/weapon/reagent_containers/borghypo(src) src.modules += new /obj/item/weapon/reagent_containers/glass/beaker/large(src) src.modules += new /obj/item/weapon/reagent_containers/dropper/industrial(src) src.modules += new /obj/item/weapon/reagent_containers/syringe(src) + src.modules += new /obj/item/weapon/gripper/no_use/organ(src) src.modules += new /obj/item/weapon/extinguisher/mini(src) src.emag = new /obj/item/weapon/reagent_containers/spray(src) src.emag.reagents.add_reagent("pacid", 250) @@ -312,6 +314,7 @@ var/global/list/robot_modules = list( src.modules += new /obj/item/weapon/screwdriver(src) src.modules += new /obj/item/weapon/wrench(src) src.modules += new /obj/item/weapon/crowbar(src) + src.modules += new /obj/item/weapon/weldingtool/largetank(src) src.modules += new /obj/item/weapon/pickaxe/plasmacutter(src) src.modules += new /obj/item/device/pipe_painter(src) src.modules += new /obj/item/device/floor_painter(src) @@ -358,6 +361,7 @@ var/global/list/robot_modules = list( src.modules += new /obj/item/weapon/gripper(src) src.modules += new /obj/item/device/lightreplacer(src) src.modules += new /obj/item/device/pipe_painter(src) + src.modules += new /obj/item/device/floor_painter(src) src.emag = new /obj/item/borg/stun(src) var/datum/matter_synth/metal = new /datum/matter_synth/metal(40000) @@ -423,6 +427,7 @@ var/global/list/robot_modules = list( src.modules += new /obj/item/weapon/melee/baton/robot(src) src.modules += new /obj/item/weapon/gun/energy/taser/mounted/cyborg(src) src.modules += new /obj/item/taperoll/police(src) + src.modules += new /obj/item/weapon/reagent_containers/spray/pepper(src) src.emag = new /obj/item/weapon/gun/energy/laser/mounted(src) ..() @@ -505,6 +510,8 @@ var/global/list/robot_modules = list( src.modules += new /obj/item/device/analyzer/plant_analyzer(src) src.modules += new /obj/item/weapon/storage/bag/plants(src) src.modules += new /obj/item/weapon/robot_harvester(src) + src.modules += new /obj/item/weapon/material/knife(src) + src.modules += new /obj/item/weapon/material/kitchen/rollingpin var/obj/item/weapon/rsf/M = new /obj/item/weapon/rsf(src) M.stored_matter = 30 @@ -544,7 +551,12 @@ var/global/list/robot_modules = list( src.modules += new /obj/item/weapon/form_printer(src) src.modules += new /obj/item/weapon/gripper/paperwork(src) src.modules += new /obj/item/weapon/hand_labeler(src) - src.emag = new /obj/item/weapon/stamp/denied(src) +// src.emag = new /obj/item/weapon/stamp/denied(src) +// New stuff + src.modules += new /obj/item/weapon/stamp(src) + src.modules += new /obj/item/weapon/stamp/denied(src) + src.emag = new /obj/item/weapon/stamp/chameleon(src) //Poor Clerical Borg gets two new toys to traitor with + src.emag = new /obj/item/weapon/pen/chameleon(src) //I don't think this is too much to ask, and it's very thematic ..() /obj/item/weapon/robot_module/general/butler/respawn_consumable(var/mob/living/silicon/robot/R, var/amount) @@ -592,12 +604,17 @@ var/global/list/robot_modules = list( src.modules += new /obj/item/device/flash(src) src.modules += new /obj/item/weapon/portable_destructive_analyzer(src) src.modules += new /obj/item/weapon/gripper/research(src) + src.modules += new /obj/item/weapon/gripper/no_use/organ(src) + src.modules += new /obj/item/weapon/gripper/no_use/mech(src) src.modules += new /obj/item/weapon/gripper/no_use/loader(src) src.modules += new /obj/item/device/robotanalyzer(src) src.modules += new /obj/item/weapon/card/robot(src) - src.modules += new /obj/item/weapon/wrench(src) + src.modules += new /obj/item/weapon/weldingtool/largetank(src) src.modules += new /obj/item/weapon/screwdriver(src) + src.modules += new /obj/item/weapon/wrench(src) src.modules += new /obj/item/weapon/crowbar(src) + src.modules += new /obj/item/weapon/wirecutters(src) + src.modules += new /obj/item/device/multitool(src) src.modules += new /obj/item/weapon/scalpel(src) src.modules += new /obj/item/weapon/circular_saw(src) src.modules += new /obj/item/weapon/extinguisher/mini(src) @@ -607,6 +624,8 @@ var/global/list/robot_modules = list( var/datum/matter_synth/nanite = new /datum/matter_synth/nanite(10000) synths += nanite + var/datum/matter_synth/wire = new /datum/matter_synth/wire() //Added to allow repairs, would rather add cable now than be asked to add it later + synths += wire //Cable code, taken from engiborg var/obj/item/stack/nanopaste/N = new /obj/item/stack/nanopaste(src) N.uses_charge = 1 @@ -614,11 +633,14 @@ var/global/list/robot_modules = list( N.synths = list(nanite) src.modules += N + var/obj/item/stack/cable_coil/cyborg/C = new /obj/item/stack/cable_coil/cyborg(src) //Cable code, taken from engiborg + C.synths = list(wire) + src.modules += C + ..() /obj/item/weapon/robot_module/syndicate name = "illegal robot module" - hide_on_manifest = 1 languages = list( LANGUAGE_SOL_COMMON = 1, LANGUAGE_TRADEBAND = 1, @@ -653,7 +675,6 @@ var/global/list/robot_modules = list( /obj/item/weapon/robot_module/security/combat name = "combat robot module" - hide_on_manifest = 1 sprites = list("Combat Android" = "droid-combat") /obj/item/weapon/robot_module/combat/New() @@ -668,7 +689,6 @@ var/global/list/robot_modules = list( /obj/item/weapon/robot_module/drone name = "drone module" - hide_on_manifest = 1 no_slip = 1 networks = list(NETWORK_ENGINEERING) @@ -751,7 +771,6 @@ var/global/list/robot_modules = list( /obj/item/weapon/robot_module/drone/construction name = "construction drone module" - hide_on_manifest = 1 channels = list("Engineering" = 1) languages = list() diff --git a/code/modules/organs/organ.dm b/code/modules/organs/organ.dm index 44376e9110..1c2cb62b43 100644 --- a/code/modules/organs/organ.dm +++ b/code/modules/organs/organ.dm @@ -96,7 +96,7 @@ var/list/organ_cache = list() // Don't process if we're in a freezer, an MMI or a stasis bag.or a freezer or something I dunno if(istype(loc,/obj/item/device/mmi)) return - if(istype(loc,/obj/structure/closet/body_bag/cryobag) || istype(loc,/obj/structure/closet/crate/freezer) || istype(loc,/obj/item/weapon/storage/box/freezer)) + if(istype(loc,/obj/structure/closet/body_bag/cryobag) || istype(loc,/obj/structure/closet/crate/freezer) || istype(loc,/obj/item/weapon/storage/box/freezer) || istype(loc,/obj/item/weapon/gripper/no_use/organ)) return //Process infections if ((status & ORGAN_ROBOT) || (owner && owner.species && (owner.species.flags & IS_PLANT))) diff --git a/code/modules/projectiles/guns/energy/stun.dm b/code/modules/projectiles/guns/energy/stun.dm index 156083b94a..e20b43b2fd 100644 --- a/code/modules/projectiles/guns/energy/stun.dm +++ b/code/modules/projectiles/guns/energy/stun.dm @@ -14,7 +14,7 @@ /obj/item/weapon/gun/energy/taser/mounted/cyborg name = "taser gun" - max_shots = 6 + max_shots = 12 recharge_time = 10 //Time it takes for shots to recharge (in ticks) diff --git a/code/modules/reagents/reagent_containers/borghydro.dm b/code/modules/reagents/reagent_containers/borghydro.dm index 2c8396deee..02bba352d8 100644 --- a/code/modules/reagents/reagent_containers/borghydro.dm +++ b/code/modules/reagents/reagent_containers/borghydro.dm @@ -13,15 +13,15 @@ var/charge_tick = 0 var/recharge_time = 5 //Time it takes for shots to recharge (in seconds) - var/list/reagent_ids = list("tricordrazine", "inaprovaline", "spaceacillin") + var/list/reagent_ids = list("tricordrazine", "inaprovaline", "tramadol", "dexalin" ,"spaceacillin") var/list/reagent_volumes = list() var/list/reagent_names = list() /obj/item/weapon/reagent_containers/borghypo/surgeon - reagent_ids = list("bicaridine", "inaprovaline", "dexalin") + reagent_ids = list("tricordrazine", "inaprovaline", "tramadol", "dexalin" ,"spaceacillin") /obj/item/weapon/reagent_containers/borghypo/crisis - reagent_ids = list("tricordrazine", "inaprovaline", "tramadol") + reagent_ids = list("tricordrazine", "inaprovaline", "tramadol", "dexalin" ,"spaceacillin") /obj/item/weapon/reagent_containers/borghypo/New() ..() diff --git a/icons/obj/device.dmi b/icons/obj/device.dmi index 35d7e732a1..cba5ea04ca 100644 Binary files a/icons/obj/device.dmi and b/icons/obj/device.dmi differ