[MDB Ignore] [IDB Ignore] Kills off /obj/item/device (#21774)

This has zero reason to exist in our code base. We have no procs or
variables tied to this. I removed it to make future modifications
cleaner.

---------

Signed-off-by: Cody Brittain <1779662+Generalcamo@users.noreply.github.com>
This commit is contained in:
Cody Brittain
2026-02-01 05:14:26 +00:00
committed by GitHub
parent 75424095ac
commit 3f62424312
857 changed files with 8690 additions and 8599 deletions
@@ -62,7 +62,7 @@
name = "Synthetic Flash"
req_tech = list(TECH_MAGNET = 3, TECH_COMBAT = 2)
materials = list(DEFAULT_WALL_MATERIAL = 750, MATERIAL_GLASS = 750)
build_path = /obj/item/device/flash/synthetic
build_path = /obj/item/flash/synthetic
/datum/design/item/mechfab/robot/component/binary_communication_device
name = "Binary Communication Device"
@@ -4,40 +4,40 @@
/datum/design/item/integrated_electronics/wirer
req_tech = list(TECH_MATERIAL = 2, TECH_ENGINEERING = 2)
materials = list(DEFAULT_WALL_MATERIAL = 5000, MATERIAL_GLASS = 2500)
build_path = /obj/item/device/integrated_electronics/wirer
build_path = /obj/item/integrated_electronics/wirer
/datum/design/item/integrated_electronics/debugger
req_tech = list(TECH_MATERIAL = 2, TECH_ENGINEERING = 2)
materials = list(DEFAULT_WALL_MATERIAL = 5000, MATERIAL_GLASS = 2500)
build_path = /obj/item/device/integrated_electronics/debugger
build_path = /obj/item/integrated_electronics/debugger
/datum/design/item/integrated_electronics/custom_circuit_assembly
name = "Small Custom Assembly"
desc = "A customizable assembly for simple, small devices."
req_tech = list(TECH_MATERIAL = 3, TECH_ENGINEERING = 2, TECH_POWER = 2)
materials = list(DEFAULT_WALL_MATERIAL = 10000)
build_path = /obj/item/device/electronic_assembly
build_path = /obj/item/electronic_assembly
/datum/design/item/integrated_electronics/custom_circuit_assembly/medium
name = "Medium Custom Assembly"
desc = "A customizable assembly suited for more ambitious mechanisms."
req_tech = list(TECH_MATERIAL = 4, TECH_ENGINEERING = 3, TECH_POWER = 3)
materials = list(DEFAULT_WALL_MATERIAL = 20000)
build_path = /obj/item/device/electronic_assembly/medium
build_path = /obj/item/electronic_assembly/medium
/datum/design/item/integrated_electronics/custom_circuit_assembly/drone
name = "Drone Custom Assembly"
desc = "A customizable assembly optimized for autonomous devices."
req_tech = list(TECH_MATERIAL = 4, TECH_ENGINEERING = 4, TECH_POWER = 4)
materials = list(DEFAULT_WALL_MATERIAL = 30000)
build_path = /obj/item/device/electronic_assembly/drone
build_path = /obj/item/electronic_assembly/drone
/datum/design/item/integrated_electronics/custom_circuit_assembly/large
name = "Large Custom Assembly"
desc = "A customizable assembly for large machines."
req_tech = list(TECH_MATERIAL = 5, TECH_ENGINEERING = 4, TECH_POWER = 4)
materials = list(DEFAULT_WALL_MATERIAL = 40000)
build_path = /obj/item/device/electronic_assembly/large
build_path = /obj/item/electronic_assembly/large
/datum/design/item/integrated_electronics/custom_circuit_assembly/implant
name = "Implant Custom Assembly"
@@ -51,14 +51,14 @@
desc = "An customizable assembly designed to interface with other devices."
req_tech = list(TECH_MATERIAL = 2, TECH_ENGINEERING = 2, TECH_POWER = 2)
materials = list(DEFAULT_WALL_MATERIAL = 5000)
build_path = /obj/item/device/assembly/electronic_assembly
build_path = /obj/item/assembly/electronic_assembly
/datum/design/item/integrated_electronics/custom_circuit_printer
name = "Portable Integrated Circuit Printer"
desc = "A portable(ish) printer for modular machines."
req_tech = list(TECH_MATERIAL = 3, TECH_ENGINEERING = 4, TECH_DATA = 5)
materials = list(DEFAULT_WALL_MATERIAL = 10000)
build_path = /obj/item/device/integrated_circuit_printer
build_path = /obj/item/integrated_circuit_printer
/datum/design/item/integrated_electronics/custom_circuit_printer_upgrade
name = "Integrated Circuit Printer Upgrade - Advanced Designs"
@@ -7,38 +7,38 @@
desc = "A hand-held body scanner able to distinguish vital signs of the subject."
req_tech = list(TECH_MAGNET = 2, TECH_BIO = 3)
materials = list(DEFAULT_WALL_MATERIAL = 200)
build_path = /obj/item/device/healthanalyzer
build_path = /obj/item/healthanalyzer
/datum/design/item/medical/robot_scanner
name = "Robot Analyzer"
desc = "A hand-held scanner able to diagnose robotic injuries."
req_tech = list(TECH_MAGNET = 3, TECH_BIO = 2, TECH_ENGINEERING = 3)
materials = list(DEFAULT_WALL_MATERIAL = 500, MATERIAL_GLASS = 200)
build_path = /obj/item/device/robotanalyzer
build_path = /obj/item/robotanalyzer
/datum/design/item/medical/mass_spectrometer
name = "Mass Spectrometer"
desc = "A device for analyzing chemicals in blood."
req_tech = list(TECH_BIO = 2, TECH_MAGNET = 2)
build_path = /obj/item/device/mass_spectrometer
build_path = /obj/item/mass_spectrometer
/datum/design/item/medical/adv_mass_spectrometer
name = "Advanced Mass Spectrometer"
desc = "A device for analyzing chemicals in blood and their quantities."
req_tech = list(TECH_BIO = 2, TECH_MAGNET = 4)
build_path = /obj/item/device/mass_spectrometer/adv
build_path = /obj/item/mass_spectrometer/adv
/datum/design/item/medical/reagent_scanner
name = "Reagent Scanner"
desc = "A device for identifying chemicals."
req_tech = list(TECH_BIO = 2, TECH_MAGNET = 2)
build_path = /obj/item/device/reagent_scanner
build_path = /obj/item/reagent_scanner
/datum/design/item/medical/adv_reagent_scanner
name = "Advanced Reagent Scanner"
desc = "A device for identifying chemicals and their proportions."
req_tech = list(TECH_BIO = 2, TECH_MAGNET = 4)
build_path = /obj/item/device/reagent_scanner/adv
build_path = /obj/item/reagent_scanner/adv
/datum/design/item/medical/nanopaste
name = "Nanopaste"
@@ -36,7 +36,7 @@
/datum/design/item/mining/kinetic_analyzer
req_tech = list(TECH_MATERIAL = 1, TECH_ENGINEERING = 1)
materials = list(DEFAULT_WALL_MATERIAL = 4000)
build_path = /obj/item/device/kinetic_analyzer
build_path = /obj/item/kinetic_analyzer
/datum/design/item/mining/pick_set
req_tech = list(TECH_ENGINEERING = 2, TECH_MATERIAL = 2)
@@ -4,25 +4,25 @@
/datum/design/item/modular_weapon/firing_pin
req_tech = list(TECH_MATERIAL = 1)
materials = list(DEFAULT_WALL_MATERIAL = 500)
build_path = /obj/item/device/firing_pin/test_range
build_path = /obj/item/firing_pin/test_range
/datum/design/item/modular_weapon/firing_pin/away
build_path = /obj/item/device/firing_pin/away_site
build_path = /obj/item/firing_pin/away_site
/datum/design/item/modular_weapon/modular_small
req_tech = list(TECH_MATERIAL = 1)
materials = list(DEFAULT_WALL_MATERIAL = 2000)
build_path = /obj/item/device/laser_assembly
build_path = /obj/item/laser_assembly
/datum/design/item/modular_weapon/modular_medium
req_tech = list(TECH_MATERIAL = 1)
materials = list(DEFAULT_WALL_MATERIAL = 4000)
build_path = /obj/item/device/laser_assembly/medium
build_path = /obj/item/laser_assembly/medium
/datum/design/item/modular_weapon/modular_large
req_tech = list(TECH_MATERIAL = 1, TECH_ENGINEERING = 2)
materials = list(DEFAULT_WALL_MATERIAL = 8000)
build_path = /obj/item/device/laser_assembly/large
build_path = /obj/item/laser_assembly/large
/datum/design/item/modular_weapon/modular_cap
req_tech = list(TECH_POWER = 2, TECH_ENGINEERING = 2)
@@ -24,7 +24,7 @@
desc = "A specialised light replacer which stores more lights, refills faster from boxes, and sucks up broken bulbs."
req_tech = list(TECH_MAGNET = 3, TECH_MATERIAL = 4)
materials = list(DEFAULT_WALL_MATERIAL = 500)
build_path = /obj/item/device/lightreplacer/advanced
build_path = /obj/item/lightreplacer/advanced
/datum/design/item/tool/advmop
materials = list(DEFAULT_WALL_MATERIAL = 2500, MATERIAL_GLASS = 200)
@@ -35,26 +35,26 @@
req_tech = list(TECH_DATA = 2, TECH_BIO = 3)
build_type = PROTOLATHE | MECHFAB
materials = list(DEFAULT_WALL_MATERIAL = 1000, MATERIAL_GLASS = 500)
build_path = /obj/item/device/mmi
build_path = /obj/item/mmi
/datum/design/item/tool/mmi_radio
name = "Radio-enabled Man-Machine Interface"
req_tech = list(TECH_DATA = 2, TECH_BIO = 4)
build_type = PROTOLATHE | MECHFAB
materials = list(DEFAULT_WALL_MATERIAL = 1200, MATERIAL_GLASS = 500)
build_path = /obj/item/device/mmi/radio_enabled
build_path = /obj/item/mmi/radio_enabled
/datum/design/item/tool/mmi_shell
name = "AI Shell Control Module"
req_tech = list(TECH_DATA = 6, TECH_ENGINEERING = 6)
build_type = PROTOLATHE | MECHFAB
materials = list(DEFAULT_WALL_MATERIAL = 1000, MATERIAL_GLASS = 500)
build_path = /obj/item/device/mmi/shell
build_path = /obj/item/mmi/shell
/datum/design/item/tool/beacon
req_tech = list(TECH_BLUESPACE = 1)
materials = list (DEFAULT_WALL_MATERIAL = 20, MATERIAL_GLASS = 10)
build_path = /obj/item/device/radio/beacon
build_path = /obj/item/radio/beacon
/datum/design/item/tool/navbeacon
req_tech = list(TECH_BLUESPACE = 1)
@@ -76,17 +76,17 @@
desc = "Allows for deciphering the stationbound binary channel on-the-fly."
req_tech = list(TECH_ILLEGAL = 2)
materials = list(DEFAULT_WALL_MATERIAL = 300, MATERIAL_GLASS = 300)
build_path = /obj/item/device/encryptionkey/binary
build_path = /obj/item/encryptionkey/binary
/datum/design/item/tool/pin_extractor
req_tech = list(TECH_MATERIAL = 3, TECH_ENGINEERING = 3, TECH_MAGNET = 4, TECH_ILLEGAL = 4)
materials = list(DEFAULT_WALL_MATERIAL = 5000, MATERIAL_GLASS = 2500)
build_path = /obj/item/device/pin_extractor
build_path = /obj/item/pin_extractor
/datum/design/item/tool/analyzer
req_tech = list(TECH_MAGNET = 2, TECH_ENGINEERING = 3)
materials = list(DEFAULT_WALL_MATERIAL = 30, MATERIAL_GLASS = 20)
build_path = /obj/item/device/analyzer
build_path = /obj/item/analyzer
/datum/design/item/tool/tag_scanner
req_tech = list(TECH_MAGNET = 3, TECH_ENGINEERING = 3)
@@ -97,7 +97,7 @@
desc = "A hand-held plant scanner for hydroponicists and xenobotanists."
req_tech = list(TECH_MAGNET = 2, TECH_BIO = 3)
materials = list(DEFAULT_WALL_MATERIAL = 80, MATERIAL_GLASS = 20)
build_path = /obj/item/device/analyzer/plant_analyzer
build_path = /obj/item/analyzer/plant_analyzer
/datum/design/item/tool/implanter
desc = "A specialized syringe for inserting implants to subjects."
@@ -108,7 +108,7 @@
/datum/design/item/tool/paicard
req_tech = list(TECH_DATA = 2)
materials = list(MATERIAL_GLASS = 500, DEFAULT_WALL_MATERIAL = 500)
build_path = /obj/item/device/paicard
build_path = /obj/item/paicard
/datum/design/item/tool/intellicard
desc = "Allows for the construction of an intelliCard."
@@ -178,4 +178,4 @@
name = "Bluespace Flare"
req_tech = list(TECH_BLUESPACE = 4, TECH_MAGNET = 3, TECH_DATA = 2)
materials = list(DEFAULT_WALL_MATERIAL = 1000, MATERIAL_GLASS = 1000, MATERIAL_PHORON = 400)
build_path = /obj/item/device/spaceflare
build_path = /obj/item/spaceflare
+1 -1
View File
@@ -143,7 +143,7 @@
/obj/machinery/r_n_d/server/attackby(obj/item/attacking_item, mob/user)
if(attacking_item.tool_behaviour == TOOL_MULTITOOL)
var/obj/item/device/multitool/MT = attacking_item
var/obj/item/multitool/MT = attacking_item
var/obj/machinery/r_n_d/tech_processor/TP = MT.get_buffer(/obj/machinery/r_n_d/tech_processor)
if(TP)
TP.set_server(src)
+1 -1
View File
@@ -33,7 +33,7 @@
storage_slots = 25
can_hold = list(
/obj/item/stock_parts,
/obj/item/device/multitool,
/obj/item/multitool,
/obj/item/stack/cable_coil
)
max_w_class = WEIGHT_CLASS_SMALL
+1 -1
View File
@@ -44,7 +44,7 @@
/obj/machinery/r_n_d/tech_processor/attackby(obj/item/attacking_item, mob/user)
if(attacking_item.tool_behaviour == TOOL_MULTITOOL)
var/obj/item/device/multitool/MT = attacking_item
var/obj/item/multitool/MT = attacking_item
MT.set_buffer(src)
to_chat(user, SPAN_NOTICE("You attach \the [src]'s linking node to \the [MT]'s machinery buffer."))
return
+13 -13
View File
@@ -29,20 +29,20 @@
H.drop_from_inventory(attacking_item)
attacking_item.forceMove(src)
update_icon()
else if(istype(attacking_item, /obj/item/device/laser_assembly))
else if(istype(attacking_item, /obj/item/laser_assembly))
check_swap(user, attacking_item)
var/obj/item/device/laser_assembly/A = attacking_item
var/obj/item/laser_assembly/A = attacking_item
A.ready_to_craft = TRUE
item = A
H.drop_from_inventory(attacking_item)
attacking_item.forceMove(src)
A.analyzer = WEAKREF(src)
update_icon()
else if(istype(attacking_item, /obj/item/laser_components) && istype(item, /obj/item/device/laser_assembly))
else if(istype(attacking_item, /obj/item/laser_components) && istype(item, /obj/item/laser_assembly))
if(process)
to_chat(user, SPAN_WARNING("\The [src] is busy installing a component already."))
return
var/obj/item/device/laser_assembly/A = item
var/obj/item/laser_assembly/A = item
var/success = A.attackby(attacking_item, user)
if(!success)
return
@@ -73,8 +73,8 @@
/obj/machinery/r_n_d/weapons_analyzer/proc/check_swap(var/mob/user, var/obj/I)
if(item)
to_chat(user, SPAN_NOTICE("You swap \the [item] out for \the [I]."))
if(istype(item, /obj/item/device/laser_assembly))
var/obj/item/device/laser_assembly/A = item
if(istype(item, /obj/item/laser_assembly))
var/obj/item/laser_assembly/A = item
A.ready_to_craft = FALSE
A.analyzer = null
item.forceMove(get_turf(src))
@@ -90,8 +90,8 @@
if(use_check_and_message(usr))
return
if(istype(item, /obj/item/device/laser_assembly))
var/obj/item/device/laser_assembly/A = item
if(istype(item, /obj/item/laser_assembly))
var/obj/item/laser_assembly/A = item
A.ready_to_craft = FALSE
A.analyzer = null
A.forceMove(get_turf(src))
@@ -112,8 +112,8 @@
var/icon/Icon_used
if(istype(item, /obj/item/device/laser_assembly))
var/obj/item/device/laser_assembly/A = item
if(istype(item, /obj/item/laser_assembly))
var/obj/item/laser_assembly/A = item
A.update_icon()
icon_state = process ? "[icon_state]_working" : "[icon_state]_on"
Icon_used = new /icon(item.icon, item.icon_state)
@@ -132,8 +132,8 @@
/obj/machinery/r_n_d/weapons_analyzer/ui_data(mob/user)
var/list/data = list()
if(istype(item, /obj/item/device/laser_assembly))
var/obj/item/device/laser_assembly/assembly = item
if(istype(item, /obj/item/laser_assembly))
var/obj/item/laser_assembly/assembly = item
var/list/mods = list()
for(var/i in list(assembly.capacitor, assembly.focusing_lens, assembly.modulator) + assembly.gun_mods)
var/obj/item/laser_components/l_component = i
@@ -252,7 +252,7 @@
/obj/machinery/r_n_d/weapons_analyzer/ui_interact(mob/user, var/datum/tgui/ui)
var/height = item ? 600: 300
var/width = item ? 500 : 300
if(istype(item, /obj/item/gun/energy/laser/prototype) || istype(item, /obj/item/device/laser_assembly))
if(istype(item, /obj/item/gun/energy/laser/prototype) || istype(item, /obj/item/laser_assembly))
width = 600
ui = SStgui.try_update_ui(user, src, ui)
@@ -50,21 +50,21 @@
excavation_level = rand(5,50)
/obj/structure/boulder/attackby(obj/item/attacking_item, mob/user)
if (istype(attacking_item, /obj/item/device/core_sampler))
if (istype(attacking_item, /obj/item/core_sampler))
src.geologic_data.artifact_distance = rand(-100,100) / 100
src.geologic_data.artifact_id = artifact_find.artifact_id
var/obj/item/device/core_sampler/C = attacking_item
var/obj/item/core_sampler/C = attacking_item
C.sample_item(src, user)
return
if (istype(attacking_item, /obj/item/device/depth_scanner))
var/obj/item/device/depth_scanner/C = attacking_item
if (istype(attacking_item, /obj/item/depth_scanner))
var/obj/item/depth_scanner/C = attacking_item
C.scan_atom(user, src)
return
if (istype(attacking_item, /obj/item/device/measuring_tape))
var/obj/item/device/measuring_tape/P = attacking_item
if (istype(attacking_item, /obj/item/measuring_tape))
var/obj/item/measuring_tape/P = attacking_item
user.visible_message(SPAN_NOTICE("[user] extends [P] towards [src]."),
SPAN_NOTICE("You extend [P] towards [src]."))
@@ -29,17 +29,17 @@
/mob/living/simple_animal/hostile/mimic,\
/mob/living/simple_animal/hostile/viscerator,\
/mob/living/simple_animal/hostile/hivebot,\
/obj/item/device/analyzer,\
/obj/item/device/camera,\
/obj/item/device/flash,\
/obj/item/device/flashlight,\
/obj/item/device/healthanalyzer,\
/obj/item/device/breath_analyzer,\
/obj/item/device/multitool,\
/obj/item/device/paicard,\
/obj/item/device/radio,\
/obj/item/device/radio/headset,\
/obj/item/device/radio/beacon,\
/obj/item/analyzer,\
/obj/item/camera,\
/obj/item/flash,\
/obj/item/flashlight,\
/obj/item/healthanalyzer,\
/obj/item/breath_analyzer,\
/obj/item/multitool,\
/obj/item/paicard,\
/obj/item/radio,\
/obj/item/radio/headset,\
/obj/item/radio/beacon,\
/obj/item/autopsy_scanner,\
/obj/item/bikehorn,\
/obj/item/surgery/bonesetter,\
@@ -65,8 +65,8 @@
w.use(1)
return
else if(istype(attacking_item, /obj/item/device/core_sampler/))
var/obj/item/device/core_sampler/S = attacking_item
else if(istype(attacking_item, /obj/item/core_sampler/))
var/obj/item/core_sampler/S = attacking_item
S.sample_item(src, user)
return
@@ -281,7 +281,7 @@
if(prob(10))
apply_image_decorations = 1
if(prob(25))
new_item = new /obj/item/device/soulstone(src.loc)
new_item = new /obj/item/soulstone(src.loc)
new_item.icon = 'icons/obj/xenoarchaeology.dmi'
new_item.icon_state = icon_state
if(17)
@@ -291,7 +291,7 @@
apply_material_decorations = 0
apply_image_decorations = 0
if(18)
new_item = new /obj/item/device/radio/beacon(src.loc)
new_item = new /obj/item/radio/beacon(src.loc)
talkative = 0
new_item.icon = 'icons/obj/xenoarchaeology.dmi'
new_item.icon_state = "unknown[rand(1,4)]"
@@ -314,7 +314,7 @@
if(21)
//soulstone
apply_prefix = 0
new_item = new /obj/item/device/soulstone(src.loc)
new_item = new /obj/item/soulstone(src.loc)
item_type = new_item.name
apply_material_decorations = 0
if(22)
+11 -11
View File
@@ -25,7 +25,7 @@
new /obj/item/clothing/suit/storage/toggle/labcoat(src)
new /obj/item/clothing/shoes/sneakers/medsci(src)
new /obj/item/clothing/glasses/safety/goggles/science(src)
new /obj/item/device/radio/headset/headset_sci(src)
new /obj/item/radio/headset/headset_sci(src)
new /obj/item/storage/belt/archaeology(src)
new /obj/item/storage/box/unique/excavation(src)
new /obj/item/taperoll/science(src)
@@ -40,22 +40,22 @@
/obj/structure/closet/excavation/fill()
new /obj/item/storage/belt/archaeology(src)
new /obj/item/storage/box/unique/excavation(src)
new /obj/item/device/flashlight/lantern(src)
new /obj/item/device/ano_scanner(src)
new /obj/item/device/depth_scanner(src)
new /obj/item/device/core_sampler(src)
new /obj/item/device/gps/science(src)
new /obj/item/device/beacon_locator(src)
new /obj/item/device/radio/beacon(src)
new /obj/item/flashlight/lantern(src)
new /obj/item/ano_scanner(src)
new /obj/item/depth_scanner(src)
new /obj/item/core_sampler(src)
new /obj/item/gps/science(src)
new /obj/item/beacon_locator(src)
new /obj/item/radio/beacon(src)
new /obj/item/pickaxe(src)
new /obj/item/material/hatchet/machete/steel(src)
new /obj/item/clothing/accessory/holster/utility/machete(src)
new /obj/item/device/measuring_tape(src)
new /obj/item/measuring_tape(src)
new /obj/item/pickaxe/hand(src)
new /obj/item/storage/bag/fossils(src)
new /obj/item/device/hand_labeler(src)
new /obj/item/hand_labeler(src)
new /obj/item/ore_detector(src)
new /obj/item/device/spaceflare(src)
new /obj/item/spaceflare(src)
new /obj/item/tent(src)
// 2 Drills
@@ -50,7 +50,7 @@
BIO = 100,
RAD = 100,
)
allowed = list(/obj/item/device/flashlight,/obj/item/tank,/obj/item/device/suit_cooling_unit)
allowed = list(/obj/item/flashlight,/obj/item/tank,/obj/item/suit_cooling_unit)
contained_sprite = FALSE
icon = 'icons/obj/clothing/suits.dmi'
anomaly_protection = 0.5
@@ -6,17 +6,17 @@
storage_slots = 10
can_hold = list(
/obj/item/storage/box/samplebags,
/obj/item/device/core_sampler,
/obj/item/device/beacon_locator,
/obj/item/device/radio/beacon,
/obj/item/device/gps,
/obj/item/device/radio,
/obj/item/device/measuring_tape,
/obj/item/device/flashlight,
/obj/item/core_sampler,
/obj/item/beacon_locator,
/obj/item/radio/beacon,
/obj/item/gps,
/obj/item/radio,
/obj/item/measuring_tape,
/obj/item/flashlight,
/obj/item/pickaxe,
/obj/item/device/depth_scanner,
/obj/item/device/camera,
/obj/item/device/camera_film,
/obj/item/depth_scanner,
/obj/item/camera,
/obj/item/camera_film,
/obj/item/paper,
/obj/item/photo,
/obj/item/folder,
@@ -28,20 +28,20 @@
/obj/item/wrench,
/obj/item/storage/box/unique/excavation,
/obj/item/anobattery,
/obj/item/device/ano_scanner,
/obj/item/ano_scanner,
/obj/item/ore_detector,
/obj/item/device/spaceflare
/obj/item/spaceflare
)
/obj/item/storage/belt/archaeology/full
starts_with = list(
/obj/item/device/core_sampler = 1,
/obj/item/device/gps = 1,
/obj/item/device/measuring_tape = 1,
/obj/item/core_sampler = 1,
/obj/item/gps = 1,
/obj/item/measuring_tape = 1,
/obj/item/pickaxe/hand = 1,
/obj/item/storage/box/unique/excavation = 1,
/obj/item/device/depth_scanner = 1,
/obj/item/device/ano_scanner = 1,
/obj/item/depth_scanner = 1,
/obj/item/ano_scanner = 1,
/obj/item/ore_detector = 1,
/obj/item/wrench = 1
)
@@ -2,7 +2,7 @@
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// Miscellaneous xenoarchaeology tools
/obj/item/device/measuring_tape
/obj/item/measuring_tape
name = "measuring tape"
desc = "A coiled metallic tape used to check dimensions and lengths."
icon = 'icons/obj/xenoarchaeology.dmi'
@@ -1,5 +1,5 @@
/obj/item/device/ano_scanner
/obj/item/ano_scanner
name = "Alden-Saraspova counter"
desc = "Aids in triangulation of exotic particles."
icon = 'icons/obj/xenoarchaeology.dmi'
@@ -12,14 +12,14 @@
var/last_scan_time = 0
var/scan_delay = 25
/obj/item/device/ano_scanner/Initialize()
/obj/item/ano_scanner/Initialize()
. = ..()
scan()
/obj/item/device/ano_scanner/attack_self(var/mob/user as mob)
/obj/item/ano_scanner/attack_self(var/mob/user as mob)
return src.interact(user)
/obj/item/device/ano_scanner/interact(var/mob/user as mob)
/obj/item/ano_scanner/interact(var/mob/user as mob)
if(world.time - last_scan_time >= scan_delay)
spawn(0)
scan()
@@ -34,7 +34,7 @@
else
to_chat(user, "Scanning array is recharging.")
/obj/item/device/ano_scanner/proc/scan()
/obj/item/ano_scanner/proc/scan()
last_scan_time = world.time
nearest_artifact_distance = -1
var/turf/cur_turf = get_turf(src)
@@ -14,7 +14,7 @@
//////////////////////////////////////////////////////////////////
/obj/item/device/core_sampler
/obj/item/core_sampler
name = "core sampler"
desc = "Used to extract geological core samples."
icon = 'icons/obj/xenoarchaeology.dmi'
@@ -23,12 +23,12 @@
w_class = WEIGHT_CLASS_TINY
var/obj/item/sample
/obj/item/device/core_sampler/feedback_hints(mob/user, distance, is_adjacent)
/obj/item/core_sampler/feedback_hints(mob/user, distance, is_adjacent)
. += ..()
if(distance <= 2)
. += SPAN_NOTICE("This one is [sample ? "full" : "empty"].")
/obj/item/device/core_sampler/proc/sample_item(var/item_to_sample, var/mob/user)
/obj/item/core_sampler/proc/sample_item(var/item_to_sample, var/mob/user)
var/datum/geosample/geo_data
if(istype(item_to_sample, /turf/simulated/mineral))
@@ -49,10 +49,10 @@
else
to_chat(user, SPAN_WARNING("You are unable to take a geological sample of [item_to_sample]."))
/obj/item/device/core_sampler/update_icon()
/obj/item/core_sampler/update_icon()
icon_state = "sampler[!!sample]"
/obj/item/device/core_sampler/attack_self(var/mob/living/user)
/obj/item/core_sampler/attack_self(var/mob/living/user)
if(sample)
to_chat(user, SPAN_NOTICE("You eject the sample."))
user.put_in_hands(sample)
@@ -3,7 +3,7 @@
// Depth scanner - scans rock turfs / boulders and tells players if there is anything interesting inside, logs all finds + coordinates + times
//also known as the x-ray diffractor
/obj/item/device/depth_scanner
/obj/item/depth_scanner
name = "depth analysis scanner"
desc = "Used to check spatial depth and density of rock outcroppings."
icon = 'icons/obj/xenoarchaeology.dmi'
@@ -23,7 +23,7 @@
var/dissonance_spread = 1
var/material = "unknown"
/obj/item/device/depth_scanner/proc/scan_atom(var/mob/user, var/atom/A)
/obj/item/depth_scanner/proc/scan_atom(var/mob/user, var/atom/A)
user.visible_message(SPAN_NOTICE("[user] scans [A], the air around them humming gently."))
if(istype(A,/turf/simulated/mineral))
var/turf/simulated/mineral/M = A
@@ -69,10 +69,10 @@
to_chat(L, SPAN_NOTICE("[icon2html(src, L)] [src] pings [pick("madly","wildly","excitedly","crazily")]!"))
playsound(loc, 'sound/machines/triplebeep.ogg', 40)
/obj/item/device/depth_scanner/attack_self(var/mob/user as mob)
/obj/item/depth_scanner/attack_self(var/mob/user as mob)
return src.interact(user)
/obj/item/device/depth_scanner/interact(var/mob/user as mob)
/obj/item/depth_scanner/interact(var/mob/user as mob)
var/dat = "<b>Co-ordinates with positive matches</b><br>"
dat += "<A href='byond://?src=[REF(src)];clear=0'>== Clear all ==</a><br>"
if(current)
@@ -108,7 +108,7 @@
scanner_win.set_content(dat)
scanner_win.open()
/obj/item/device/depth_scanner/Topic(href, href_list)
/obj/item/depth_scanner/Topic(href, href_list)
..()
usr.set_machine(src)
@@ -2,7 +2,7 @@
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// GPS Locater - locks into a radio frequency and tracks it
/obj/item/device/beacon_locator
/obj/item/beacon_locator
name = "locater device"
desc = "Used to scan and locate signals on a particular frequency according ."
icon = 'icons/obj/item/pinpointer.dmi'
@@ -10,17 +10,17 @@
item_state = "electronic"
var/frequency = PUB_FREQ
var/scan_ticks = 0
var/obj/item/device/radio/target_radio
var/obj/item/radio/target_radio
/obj/item/device/beacon_locator/Initialize()
/obj/item/beacon_locator/Initialize()
. = ..()
START_PROCESSING(SSprocessing, src)
/obj/item/device/beacon_locator/Destroy()
/obj/item/beacon_locator/Destroy()
STOP_PROCESSING(SSprocessing, src)
return ..()
/obj/item/device/beacon_locator/process()
/obj/item/beacon_locator/process()
if(target_radio)
set_dir(get_dir(src,target_radio))
switch(get_dist(src,target_radio))
@@ -40,7 +40,7 @@
if(datum_flags & DF_ISPROCESSING)
//scan radios in the world to try and find one
var/cur_dist = 999
for(var/obj/item/device/radio/beacon/R in GLOB.teleportbeacons)
for(var/obj/item/radio/beacon/R in GLOB.teleportbeacons)
if(R.z == src.z && R.get_frequency() == src.frequency)
var/check_dist = get_dist(src,R)
if(check_dist < cur_dist)
@@ -56,10 +56,10 @@
else
icon_state = "pinoff"
/obj/item/device/beacon_locator/attack_self(var/mob/user as mob)
/obj/item/beacon_locator/attack_self(var/mob/user as mob)
return src.interact(user)
/obj/item/device/beacon_locator/interact(var/mob/user as mob)
/obj/item/beacon_locator/interact(var/mob/user as mob)
var/dat = "<b>Radio frequency tracker</b><br>"
dat += {"
<A href='byond://?src=[REF(src)];reset_tracking=1'>Reset tracker</A><BR>
@@ -75,7 +75,7 @@
user << browse(HTML_SKELETON(dat),"window=locater;size=300x150")
onclose(user, "locater")
/obj/item/device/beacon_locator/Topic(href, href_list)
/obj/item/beacon_locator/Topic(href, href_list)
..()
usr.set_machine(src)