From ed11dad32117115ecb8318ebbe60b179884daf5b Mon Sep 17 00:00:00 2001 From: DGamerL <108773801+DGamerL@users.noreply.github.com> Date: Tue, 26 Sep 2023 01:05:15 +0200 Subject: [PATCH] Buffs Nuclear Operative Cyborgs (#22444) * Pinpointer + grenade launcher * NANOPASTE FOR THE PEASANTS * Adds pinpointers lmao * Removes the Nuke * Henri review * Update code/game/gamemodes/nuclear/pinpointer.dm Co-authored-by: Henri215 <77684085+Henri215@users.noreply.github.com> * Henri review --------- Co-authored-by: Henri215 <77684085+Henri215@users.noreply.github.com> --- code/game/gamemodes/nuclear/pinpointer.dm | 12 ++++++++++++ .../mob/living/silicon/robot/robot_modules.dm | 10 ++++++---- .../mob/living/silicon/robot/syndicate_robot.dm | 2 +- code/modules/projectiles/ammunition/magazines.dm | 4 ++++ .../modules/projectiles/guns/projectile/launchers.dm | 3 ++- 5 files changed, 25 insertions(+), 6 deletions(-) diff --git a/code/game/gamemodes/nuclear/pinpointer.dm b/code/game/gamemodes/nuclear/pinpointer.dm index 1943361fc0f..97204085136 100644 --- a/code/game/gamemodes/nuclear/pinpointer.dm +++ b/code/game/gamemodes/nuclear/pinpointer.dm @@ -371,6 +371,18 @@ else . += "No operatives detected within scanning range." +/obj/item/pinpointer/operative/nad + desc = "A pinpointer that leads to the first Syndicate operative detected. Also has a mode to point towards the NAD." + modes = list(MODE_OPERATIVE, MODE_DISK) + +/obj/item/pinpointer/operative/nad/process() + switch(mode) + if(MODE_DISK) + workdisk() + if(MODE_OPERATIVE) + scan_for_ops() + point_at_target(nearest_op, FALSE) + /obj/item/pinpointer/crew name = "crew pinpointer" desc = "A handheld tracking device that points to crew suit sensors." diff --git a/code/modules/mob/living/silicon/robot/robot_modules.dm b/code/modules/mob/living/silicon/robot/robot_modules.dm index 09b5946cab5..e83ecf0bb7f 100644 --- a/code/modules/mob/living/silicon/robot/robot_modules.dm +++ b/code/modules/mob/living/silicon/robot/robot_modules.dm @@ -620,7 +620,8 @@ /obj/item/gun/projectile/revolver/grenadelauncher/multi/cyborg, /obj/item/card/emag, /obj/item/crowbar/cyborg, - /obj/item/pinpointer/operative + /obj/item/pinpointer/operative/nad, + /obj/item/stack/nanopaste/cyborg/syndicate ) // Sydicate medical cyborg module. @@ -646,7 +647,7 @@ /obj/item/FixOVein, /obj/item/card/emag, /obj/item/crowbar/cyborg, - /obj/item/pinpointer/operative, + /obj/item/pinpointer/operative/nad, /obj/item/stack/medical/bruise_pack/advanced/cyborg/syndicate, /obj/item/stack/medical/ointment/advanced/cyborg/syndicate, /obj/item/stack/medical/splint/cyborg/syndicate, @@ -678,13 +679,14 @@ /obj/item/melee/energy/sword/cyborg, /obj/item/card/emag, /obj/item/borg_chameleon, - /obj/item/pinpointer/operative, + /obj/item/pinpointer/operative/nad, /obj/item/stack/sheet/metal/cyborg, /obj/item/stack/rods/cyborg, /obj/item/stack/tile/plasteel/cyborg, /obj/item/stack/cable_coil/cyborg, /obj/item/stack/sheet/glass/cyborg, - /obj/item/stack/sheet/rglass/cyborg + /obj/item/stack/sheet/rglass/cyborg, + /obj/item/stack/nanopaste/cyborg/syndicate ) special_rechargables = list(/obj/item/extinguisher, /obj/item/weldingtool/largetank/cyborg) diff --git a/code/modules/mob/living/silicon/robot/syndicate_robot.dm b/code/modules/mob/living/silicon/robot/syndicate_robot.dm index 1384520b3af..27eed09e7f0 100644 --- a/code/modules/mob/living/silicon/robot/syndicate_robot.dm +++ b/code/modules/mob/living/silicon/robot/syndicate_robot.dm @@ -23,7 +23,7 @@ /mob/living/silicon/robot/syndicate/New(loc) ..() - cell = new /obj/item/stock_parts/cell/hyper(src) + cell = new /obj/item/stock_parts/cell/bluespace(src) /mob/living/silicon/robot/syndicate/init(alien = FALSE, mob/living/silicon/ai/ai_to_sync_to = null) laws = new /datum/ai_laws/syndicate_override diff --git a/code/modules/projectiles/ammunition/magazines.dm b/code/modules/projectiles/ammunition/magazines.dm index eb6d5b76c7b..b72a12e61b9 100644 --- a/code/modules/projectiles/ammunition/magazines.dm +++ b/code/modules/projectiles/ammunition/magazines.dm @@ -147,6 +147,10 @@ ammo_type = /obj/item/ammo_casing/a40mm max_ammo = 6 +/obj/item/ammo_box/magazine/internal/cylinder/grenadelauncher/multi/fifteen + ammo_type = /obj/item/ammo_casing/a40mm + max_ammo = 15 + /obj/item/ammo_box/magazine/internal/speargun name = "speargun internal magazine" ammo_type = /obj/item/ammo_casing/caseless/magspear diff --git a/code/modules/projectiles/guns/projectile/launchers.dm b/code/modules/projectiles/guns/projectile/launchers.dm index 7956084b707..1df39ef409b 100644 --- a/code/modules/projectiles/guns/projectile/launchers.dm +++ b/code/modules/projectiles/guns/projectile/launchers.dm @@ -24,9 +24,10 @@ mag_type = /obj/item/ammo_box/magazine/internal/cylinder/grenadelauncher/multi /obj/item/gun/projectile/revolver/grenadelauncher/multi/cyborg - desc = "A 6-shot grenade launcher." + desc = "A 15-shot grenade launcher." icon = 'icons/mecha/mecha_equipment.dmi' icon_state = "mecha_grenadelnchr" + mag_type = /obj/item/ammo_box/magazine/internal/cylinder/grenadelauncher/multi/fifteen /obj/item/gun/projectile/revolver/grenadelauncher/multi/cyborg/attack_self() return