diff --git a/code/ATMOSPHERICS/mainspipe.dm b/code/ATMOSPHERICS/mainspipe.dm
index 520d7a55b2..a2976974bf 100644
--- a/code/ATMOSPHERICS/mainspipe.dm
+++ b/code/ATMOSPHERICS/mainspipe.dm
@@ -36,8 +36,6 @@ obj/machinery/atmospherics/mains_pipe
icon = 'icons/obj/atmospherics/mainspipe.dmi'
layer = 2.4 //under wires with their 2.5
- force = 20
-
var/volume = 0
var/alert_pressure = 80*ONE_ATMOSPHERE
diff --git a/code/ATMOSPHERICS/pipes.dm b/code/ATMOSPHERICS/pipes.dm
index 6f70f822ad..c445988c53 100644
--- a/code/ATMOSPHERICS/pipes.dm
+++ b/code/ATMOSPHERICS/pipes.dm
@@ -3,7 +3,6 @@
var/datum/gas_mixture/air_temporary // used when reconstructing a pipeline that broke
var/datum/pipeline/parent
var/volume = 0
- force = 20
layer = 2.4 //under wires with their 2.44
use_power = 0
diff --git a/code/game/machinery/camera/camera.dm b/code/game/machinery/camera/camera.dm
index dd88be221d..cb0d95c1df 100644
--- a/code/game/machinery/camera/camera.dm
+++ b/code/game/machinery/camera/camera.dm
@@ -118,7 +118,7 @@
add_hiddenprint(user)
destroy()
-/obj/machinery/camera/attackby(obj/W as obj, mob/living/user as mob)
+/obj/machinery/camera/attackby(obj/item/W as obj, mob/living/user as mob)
update_coverage()
// DECONSTRUCTION
if(isscrewdriver(W))
diff --git a/code/game/mecha/mecha.dm b/code/game/mecha/mecha.dm
index 3c35ece9d2..b742b8a14b 100644
--- a/code/game/mecha/mecha.dm
+++ b/code/game/mecha/mecha.dm
@@ -39,6 +39,7 @@
var/datum/effect/effect/system/spark_spread/spark_system = new
var/lights = 0
var/lights_power = 6
+ var/force = 0
//inner atmos
var/use_internal_tank = 0
diff --git a/code/game/objects/items.dm b/code/game/objects/items.dm
index a07b82cd17..6961e957ff 100644
--- a/code/game/objects/items.dm
+++ b/code/game/objects/items.dm
@@ -16,6 +16,9 @@
pressure_resistance = 5
// causeerrorheresoifixthis
var/obj/item/master = null
+ var/list/origin_tech = null //Used by R&D to determine what research bonuses it grants.
+ var/list/attack_verb = list() //Used in attackby() to say how something was attacked "[x] has been [z.attack_verb] by [y] with [z]"
+ var/force = 0
var/heat_protection = 0 //flags which determine which body parts are protected from heat. Use the HEAD, UPPER_TORSO, LOWER_TORSO, etc. flags. See setup.dm
var/cold_protection = 0 //flags which determine which body parts are protected from cold. Use the HEAD, UPPER_TORSO, LOWER_TORSO, etc. flags. See setup.dm
diff --git a/code/game/objects/objs.dm b/code/game/objects/objs.dm
index b8bd8d95e1..fa4fa27f75 100644
--- a/code/game/objects/objs.dm
+++ b/code/game/objects/objs.dm
@@ -2,16 +2,13 @@
//Used to store information about the contents of the object.
var/list/matter
var/w_class // Size of the object.
- var/list/origin_tech = null //Used by R&D to determine what research bonuses it grants.
var/unacidable = 0 //universal "unacidabliness" var, here so you can use it in any obj.
animate_movement = 2
var/throwforce = 1
- var/list/attack_verb = list() //Used in attackby() to say how something was attacked "[x] has been [z.attack_verb] by [y] with [z]"
var/sharp = 0 // whether this object cuts
var/edge = 0 // whether this object is more likely to dismember
var/in_use = 0 // If we have a user using us, this will be set on. We will check if the user has stopped using us, and thus stop updating and LAGGING EVERYTHING!
var/damtype = "brute"
- var/force = 0
var/armor_penetration = 0
var/show_messages
diff --git a/code/modules/research/destructive_analyzer.dm b/code/modules/research/destructive_analyzer.dm
index c6cbff2496..ccf20c0ce7 100644
--- a/code/modules/research/destructive_analyzer.dm
+++ b/code/modules/research/destructive_analyzer.dm
@@ -9,8 +9,8 @@ Note: Must be placed within 3 tiles of the R&D Console
/obj/machinery/r_n_d/destructive_analyzer
name = "destructive analyzer"
icon_state = "d_analyzer"
- var/obj/item/weapon/loaded_item = null
- var/decon_mod = 0
+ var/obj/item/weapon/loaded_item = null
+ var/decon_mod = 0
use_power = 1
idle_power_usage = 30
@@ -39,7 +39,7 @@ Note: Must be placed within 3 tiles of the R&D Console
else
icon_state = "d_analyzer"
-/obj/machinery/r_n_d/destructive_analyzer/attackby(var/obj/O as obj, var/mob/user as mob)
+/obj/machinery/r_n_d/destructive_analyzer/attackby(var/obj/item/O as obj, var/mob/user as mob)
if(busy)
user << "\The [src] is busy right now."
return
@@ -61,7 +61,7 @@ Note: Must be placed within 3 tiles of the R&D Console
if(!linked_console)
user << "\The [src] must be linked to an R&D console first."
return
- if(istype(O, /obj/item) && !loaded_item)
+ if(!loaded_item)
if(isrobot(user)) //Don't put your module items in there!
return
if(!O.origin_tech)