From 0e88fe7cc49920b1cd5e29c9a2d8496a751b5069 Mon Sep 17 00:00:00 2001 From: KorPhaeron Date: Tue, 22 May 2018 14:57:04 -0500 Subject: [PATCH] Anomaly Neutralizer (#37879) * Anomaly Neutralizer * Deletes properly * Nitpick grammar --- .../items/devices/anomaly_neutralizer.dm | 21 +++++++++++++++++++ code/modules/research/designs/misc_designs.dm | 16 +++++++++++--- code/modules/research/techweb/all_nodes.dm | 2 +- tgstation.dme | 1 + 4 files changed, 36 insertions(+), 4 deletions(-) create mode 100644 code/game/objects/items/devices/anomaly_neutralizer.dm diff --git a/code/game/objects/items/devices/anomaly_neutralizer.dm b/code/game/objects/items/devices/anomaly_neutralizer.dm new file mode 100644 index 00000000000..c7190596315 --- /dev/null +++ b/code/game/objects/items/devices/anomaly_neutralizer.dm @@ -0,0 +1,21 @@ +/obj/item/anomaly_neutralizer + name = "anomaly neutralizer" + desc = "A one-use device capable of instantly neutralizing anomalies." + icon = 'icons/obj/device.dmi' + icon_state = "memorizer2" + item_state = "electronic" + lefthand_file = 'icons/mob/inhands/misc/devices_lefthand.dmi' + righthand_file = 'icons/mob/inhands/misc/devices_righthand.dmi' + w_class = WEIGHT_CLASS_SMALL + slot_flags = ITEM_SLOT_BELT + flags_1 = NOBLUDGEON_1 + +/obj/item/anomaly_neutralizer/afterattack(atom/target, mob/user, proximity) + ..() + if(!proximity || !target) + return + if(istype(target, /obj/effect/anomaly)) + var/obj/effect/anomaly/A = target + to_chat(user, "The circuitry of [src] fries from the strain of neutralizing [A]!") + A.anomalyNeutralize() + qdel(src) diff --git a/code/modules/research/designs/misc_designs.dm b/code/modules/research/designs/misc_designs.dm index fd3eefbde10..d8f25968dba 100644 --- a/code/modules/research/designs/misc_designs.dm +++ b/code/modules/research/designs/misc_designs.dm @@ -310,7 +310,7 @@ build_path = /obj/item/holosign_creator category = list("Equipment") departmental_flags = DEPARTMENTAL_FLAG_SERVICE - + /datum/design/holosignsec name = "Security Holobarrier Projector" desc = "A holographic projector that creates holographic security barriers." @@ -320,7 +320,7 @@ build_path = /obj/item/holosign_creator/security category = list("Equipment") departmental_flags = DEPARTMENTAL_FLAG_SECURITY - + /datum/design/holosignengi name = "Engineering Holobarrier Projector" desc = "A holographic projector that creates holographic engineering barriers." @@ -330,7 +330,7 @@ build_path = /obj/item/holosign_creator/engineering category = list("Equipment") departmental_flags = DEPARTMENTAL_FLAG_ENGINEERING - + /datum/design/holosignatmos name = "ATMOS Holofan Projector" desc = "A holographic projector that creates holographic barriers that prevent changes in atmospheric conditions." @@ -355,6 +355,16 @@ category = list("Equipment") departmental_flags = DEPARTMENTAL_FLAG_SCIENCE | DEPARTMENTAL_FLAG_ENGINEERING +/datum/design/anomaly_neutralizer + name = "Anomaly Neutralizer" + desc = "An advanced tool capable of instantly neutralizing anomalies, designed to capture the fleeting aberrations created by the engine." + id = "anomaly_neutralizer" + build_type = PROTOLATHE + materials = list(MAT_METAL = 2000, MAT_GOLD = 2000, MAT_PLASMA = 5000, MAT_URANIUM = 2000) + build_path = /obj/item/anomaly_neutralizer + category = list("Equipment") + departmental_flags = DEPARTMENTAL_FLAG_SCIENCE | DEPARTMENTAL_FLAG_ENGINEERING + ///////////////////////////////////////// ////////////Armour////////////// ///////////////////////////////////////// diff --git a/code/modules/research/techweb/all_nodes.dm b/code/modules/research/techweb/all_nodes.dm index 8bce3808f6b..0472bb9e7a1 100644 --- a/code/modules/research/techweb/all_nodes.dm +++ b/code/modules/research/techweb/all_nodes.dm @@ -112,7 +112,7 @@ display_name = "Anomaly Research" description = "Unlock the potential of the mysterious anomalies that appear on station." prereq_ids = list("adv_engi", "practical_bluespace") - design_ids = list("reactive_armour") + design_ids = list("reactive_armour", "anomaly_neutralizer") research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 5000) export_price = 5000 diff --git a/tgstation.dme b/tgstation.dme index acb24d56a8b..43c027580c8 100755 --- a/tgstation.dme +++ b/tgstation.dme @@ -795,6 +795,7 @@ #include "code\game\objects\items\circuitboards\computer_circuitboards.dm" #include "code\game\objects\items\circuitboards\machine_circuitboards.dm" #include "code\game\objects\items\devices\aicard.dm" +#include "code\game\objects\items\devices\anomaly_neutralizer.dm" #include "code\game\objects\items\devices\beacon.dm" #include "code\game\objects\items\devices\camera_bug.dm" #include "code\game\objects\items\devices\chameleonproj.dm"