Merge pull request #4831 from VOREStation/upstream-merge-5987

[MIRROR] Items are now assumed to be conductive, rather than the opposite
This commit is contained in:
Novacat
2019-03-28 21:59:41 -04:00
committed by GitHub
97 changed files with 762 additions and 883 deletions
+1 -1
View File
@@ -22,7 +22,7 @@ GLOBAL_LIST_INIT(bitflags, list(1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024, 204
// Flags bitmasks. - Used in /atom/var/flags
#define NOBLUDGEON (1<<0) // When an item has this it produces no "X has been hit by Y with Z" message with the default handler.
#define CONDUCT (1<<1) // Conducts electricity. (metal etc.)
#define NOCONDUCT (1<<1) // Conducts electricity. (metal etc.)
#define ON_BORDER (1<<2) // Item has priority to check when entering or leaving.
#define NOBLOODY (1<<3) // Used for items if they don't want to get a blood overlay.
#define OPENCONTAINER (1<<4) // Is an open container for chemistry purposes.
-1
View File
@@ -222,7 +222,6 @@ var/global/list/PDA_Manifest = list()
throwforce = 0.0
throw_speed = 1
throw_range = 20
flags = CONDUCT
afterattack(atom/target as mob|obj|turf|area, mob/user as mob)
user.drop_item()
+1 -5
View File
@@ -3,7 +3,6 @@
desc = "Should anything ever go wrong..."
icon = 'icons/obj/items.dmi'
icon_state = "red_phone"
flags = CONDUCT
force = 3.0
throwforce = 2.0
throw_speed = 1
@@ -85,7 +84,6 @@
slot_l_hand_str = 'icons/mob/items/lefthand_melee.dmi',
slot_r_hand_str = 'icons/mob/items/righthand_melee.dmi',
)
flags = CONDUCT
force = 5.0
throwforce = 7.0
w_class = ITEMSIZE_NORMAL
@@ -210,7 +208,7 @@
var/traitor_frequency = 0.0
var/mob/currentUser = null
var/obj/item/device/radio/origradio = null
flags = CONDUCT | ONBELT
flags = ONBELT
w_class = ITEMSIZE_SMALL
item_state = "radio"
throw_speed = 4
@@ -228,7 +226,6 @@
var/selfdestruct = 0.0
var/traitor_frequency = 0.0
var/obj/item/device/radio/origradio = null
flags = CONDUCT
slot_flags = SLOT_BELT
item_state = "radio"
throwforce = 5
@@ -283,7 +280,6 @@
icon_state = "std_module"
item_state = "std_mod"
w_class = ITEMSIZE_SMALL
flags = CONDUCT
var/mtype = 1 // 1=electronic 2=hardware
/obj/item/weapon/module/card_reader
@@ -2,7 +2,6 @@
name = "pinpointer"
icon = 'icons/obj/device.dmi'
icon_state = "pinoff"
flags = CONDUCT
slot_flags = SLOT_BELT
w_class = ITEMSIZE_SMALL
item_state = "electronic"
@@ -4,7 +4,6 @@
icon_state = "yellow"
density = 1
var/health = 100.0
flags = CONDUCT
w_class = ITEMSIZE_HUGE
layer = TABLE_LAYER // Above catwalks, hopefully below other things
+1 -1
View File
@@ -167,7 +167,7 @@
center = locate(x+center_x, y+center_y, z)
if(center)
for(var/obj/M in orange(magnetic_field, center))
if(!M.anchored && (M.flags & CONDUCT))
if(!M.anchored && !(M.flags & NOCONDUCT))
step_towards(M, center)
for(var/mob/living/silicon/S in orange(magnetic_field, center))
-1
View File
@@ -3,7 +3,6 @@
desc = "Used for building frames."
icon = 'icons/obj/stock_parts.dmi'
icon_state = "frame_bitem"
flags = CONDUCT
var/build_machine_type
var/refund_amt = 5
var/refund_type = /obj/item/stack/material/steel
-2
View File
@@ -9,7 +9,6 @@
icon = 'icons/mecha/mech_construct.dmi'
icon_state = "blank"
w_class = ITEMSIZE_HUGE
flags = CONDUCT
origin_tech = list(TECH_DATA = 2, TECH_MATERIAL = 2)
@@ -17,7 +16,6 @@
name="Mecha Chassis"
icon_state = "backbone"
var/datum/construction/construct
flags = CONDUCT
attackby(obj/item/W as obj, mob/user as mob)
if(!construct || !construct.action(W, user))
-1
View File
@@ -11,7 +11,6 @@
name="Mecha Chassis"
icon_state = "backbone"
var/datum/construction/construct
flags = CONDUCT
attackby(obj/item/W as obj, mob/user as mob)
if(!construct || !construct.action(W, user))
-1
View File
@@ -5,7 +5,6 @@
desc = "Used for repairing or building APCs"
icon = 'icons/obj/apc_repair.dmi'
icon_state = "apc_frame"
flags = CONDUCT
/obj/item/frame/apc/attackby(obj/item/weapon/W as obj, mob/user as mob)
..()
@@ -5,7 +5,6 @@
icon = 'icons/obj/device_alt.dmi'
icon_state = "hydro"
item_state = "gun"
flags = CONDUCT
slot_flags = SLOT_BELT
throwforce = 3
w_class = ITEMSIZE_SMALL
@@ -1,10 +1,7 @@
/obj/item/device/binoculars
name = "binoculars"
desc = "A pair of binoculars."
icon_state = "binoculars"
flags = CONDUCT
force = 5.0
w_class = ITEMSIZE_SMALL
throwforce = 5.0
@@ -5,7 +5,6 @@
icon = 'icons/obj/device_alt.dmi'
icon_state = "sleevemate" //Give this a fancier sprite later.
item_state = "healthanalyzer"
flags = CONDUCT
slot_flags = SLOT_BELT
w_class = ITEMSIZE_SMALL
matter = list(DEFAULT_WALL_MATERIAL = 200)
@@ -1,7 +1,6 @@
/obj/item/device/chameleon
name = "chameleon projector"
icon_state = "shield0"
flags = CONDUCT
slot_flags = SLOT_BELT
item_state = "electronic"
throwforce = 5.0
@@ -9,7 +9,6 @@
desc = "Used to debug electronic equipment."
icon = 'icons/obj/hacktool.dmi'
icon_state = "hacktool-g"
flags = CONDUCT
force = 5.0
w_class = ITEMSIZE_SMALL
throwforce = 5.0
-1
View File
@@ -7,7 +7,6 @@
w_class = ITEMSIZE_SMALL
throw_speed = 4
throw_range = 10
flags = CONDUCT
origin_tech = list(TECH_MAGNET = 2, TECH_COMBAT = 1)
var/times_used = 0 //Number of times it's been used.
+4 -10
View File
@@ -4,7 +4,6 @@
icon = 'icons/obj/lighting.dmi'
icon_state = "flashlight"
w_class = ITEMSIZE_SMALL
flags = CONDUCT
slot_flags = SLOT_BELT
matter = list(DEFAULT_WALL_MATERIAL = 50,"glass" = 20)
action_button_name = "Toggle Flashlight"
@@ -25,8 +24,7 @@
/obj/item/device/flashlight/New()
if(power_use)
START_PROCESSING(SSobj, src)
START_PROCESSING(SSobj, src)
if(cell_type)
cell = new cell_type(src)
brightness_levels = list("low" = 0.25, "medium" = 0.5, "high" = 1)
@@ -245,7 +243,6 @@
desc = "A pen-sized light, used by medical staff."
icon_state = "penlight"
item_state = "pen"
flags = CONDUCT
slot_flags = SLOT_EARS
brightness_on = 2
w_class = ITEMSIZE_TINY
@@ -277,7 +274,6 @@
icon_state = "maglight"
flashlight_colour = LIGHT_COLOR_FLUORESCENT_FLASHLIGHT
force = 10
flags = CONDUCT
slot_flags = SLOT_BELT
w_class = ITEMSIZE_SMALL
attack_verb = list ("smacked", "thwacked", "thunked")
@@ -289,7 +285,6 @@
desc = "A miniature lamp, that might be used by small robots."
icon_state = "penlight"
item_state = null
flags = CONDUCT
brightness_on = 2
w_class = ITEMSIZE_TINY
power_use = 0
@@ -302,7 +297,6 @@
force = 10
brightness_on = 5
w_class = ITEMSIZE_LARGE
flags = CONDUCT
power_use = 0
on = 1
@@ -375,14 +369,14 @@
user.visible_message("<span class='notice'>[user] activates the flare.</span>", "<span class='notice'>You pull the cord on the flare, activating it!</span>")
src.force = on_damage
src.damtype = "fire"
START_PROCESSING(SSobj, src)
START_PROCESSING(SSobj, src)
/obj/item/device/flashlight/flare/proc/ignite() //Used for flare launchers.
on = !on
update_icon()
force = on_damage
damtype = "fire"
START_PROCESSING(SSobj, src)
START_PROCESSING(SSobj, src)
return 1
//Glowsticks
@@ -426,7 +420,7 @@
. = ..()
if(.)
user.visible_message("<span class='notice'>[user] cracks and shakes the glowstick.</span>", "<span class='notice'>You crack and shake the glowstick, turning it on!</span>")
START_PROCESSING(SSobj, src)
START_PROCESSING(SSobj, src)
/obj/item/device/flashlight/glowstick/red
name = "red glowstick"
@@ -45,7 +45,6 @@
force = 8
icon = 'icons/obj/janitor.dmi'
icon_state = "lightreplacer0"
flags = CONDUCT
slot_flags = SLOT_BELT
origin_tech = list(TECH_MAGNET = 3, TECH_MATERIAL = 2)
@@ -3,7 +3,6 @@
desc = "A device used to project your voice. Loudly."
icon_state = "megaphone"
w_class = ITEMSIZE_SMALL
flags = CONDUCT
var/spamcheck = 0
var/emagged = 0
@@ -8,7 +8,6 @@
name = "multitool"
desc = "Used for pulsing wires to test which to cut. Not recommended by doctors."
icon_state = "multitool"
flags = CONDUCT
force = 5.0
w_class = ITEMSIZE_SMALL
throwforce = 5.0
+133 -134
View File
@@ -1,134 +1,133 @@
// Powersink - used to drain station power
/obj/item/device/powersink
name = "power sink"
desc = "A nulling power sink which drains energy from electrical systems."
icon_state = "powersink0"
w_class = ITEMSIZE_LARGE
flags = CONDUCT
throwforce = 5
throw_speed = 1
throw_range = 2
matter = list(DEFAULT_WALL_MATERIAL = 750,"waste" = 750)
origin_tech = list(TECH_POWER = 3, TECH_ILLEGAL = 5)
var/drain_rate = 1500000 // amount of power to drain per tick
var/apc_drain_rate = 5000 // Max. amount drained from single APC. In Watts.
var/dissipation_rate = 20000 // Passive dissipation of drained power. In Watts.
var/power_drained = 0 // Amount of power drained.
var/max_power = 1e9 // Detonation point.
var/mode = 0 // 0 = off, 1=clamped (off), 2=operating
var/drained_this_tick = 0 // This is unfortunately necessary to ensure we process powersinks BEFORE other machinery such as APCs.
var/datum/powernet/PN // Our powernet
var/obj/structure/cable/attached // the attached cable
/obj/item/device/powersink/Destroy()
STOP_PROCESSING(SSobj, src)
STOP_PROCESSING_POWER_OBJECT(src)
..()
/obj/item/device/powersink/attackby(var/obj/item/I, var/mob/user)
if(I.is_screwdriver())
if(mode == 0)
var/turf/T = loc
if(isturf(T) && !!T.is_plating())
attached = locate() in T
if(!attached)
to_chat(user, "No exposed cable here to attach to.")
return
else
anchored = 1
mode = 1
src.visible_message("<span class='notice'>[user] attaches [src] to the cable!</span>")
playsound(src, I.usesound, 50, 1)
return
else
to_chat(user, "Device must be placed over an exposed cable to attach to it.")
return
else
if (mode == 2)
STOP_PROCESSING(SSobj, src) // Now the power sink actually stops draining the station's power if you unhook it. --NeoFite
STOP_PROCESSING_POWER_OBJECT(src)
anchored = 0
mode = 0
src.visible_message("<span class='notice'>[user] detaches [src] from the cable!</span>")
set_light(0)
playsound(src, I.usesound, 50, 1)
icon_state = "powersink0"
return
else
..()
/obj/item/device/powersink/attack_ai()
return
/obj/item/device/powersink/attack_hand(var/mob/user)
switch(mode)
if(0)
..()
if(1)
src.visible_message("<span class='notice'>[user] activates [src]!</span>")
mode = 2
icon_state = "powersink1"
START_PROCESSING(SSobj, src)
datum_flags &= ~DF_ISPROCESSING // Have to reset this flag so that PROCESSING_POWER_OBJECT can re-add it. It fails if the flag is already present. - Ater
START_PROCESSING_POWER_OBJECT(src)
if(2) //This switch option wasn't originally included. It exists now. --NeoFite
src.visible_message("<span class='notice'>[user] deactivates [src]!</span>")
mode = 1
set_light(0)
icon_state = "powersink0"
STOP_PROCESSING(SSobj, src)
STOP_PROCESSING_POWER_OBJECT(src)
/obj/item/device/powersink/pwr_drain()
if(!attached)
return 0
if(drained_this_tick)
return 1
drained_this_tick = 1
var/drained = 0
if(!PN)
return 1
set_light(12)
PN.trigger_warning()
// found a powernet, so drain up to max power from it
drained = PN.draw_power(drain_rate)
// if tried to drain more than available on powernet
// now look for APCs and drain their cells
if(drained < drain_rate)
for(var/obj/machinery/power/terminal/T in PN.nodes)
// Enough power drained this tick, no need to torture more APCs
if(drained >= drain_rate)
break
if(istype(T.master, /obj/machinery/power/apc))
var/obj/machinery/power/apc/A = T.master
if(A.operating && A.cell)
var/cur_charge = A.cell.charge / CELLRATE
var/drain_val = min(apc_drain_rate, cur_charge)
A.cell.use(drain_val * CELLRATE)
drained += drain_val
power_drained += drained
return 1
/obj/item/device/powersink/process()
drained_this_tick = 0
power_drained -= min(dissipation_rate, power_drained)
if(power_drained > max_power * 0.95)
playsound(src, 'sound/effects/screech.ogg', 100, 1, 1)
if(power_drained >= max_power)
explosion(src.loc, 3,6,9,12)
qdel(src)
return
if(attached && attached.powernet)
PN = attached.powernet
else
PN = null
// Powersink - used to drain station power
/obj/item/device/powersink
name = "power sink"
desc = "A nulling power sink which drains energy from electrical systems."
icon_state = "powersink0"
w_class = ITEMSIZE_LARGE
throwforce = 5
throw_speed = 1
throw_range = 2
matter = list(DEFAULT_WALL_MATERIAL = 750,"waste" = 750)
origin_tech = list(TECH_POWER = 3, TECH_ILLEGAL = 5)
var/drain_rate = 1500000 // amount of power to drain per tick
var/apc_drain_rate = 5000 // Max. amount drained from single APC. In Watts.
var/dissipation_rate = 20000 // Passive dissipation of drained power. In Watts.
var/power_drained = 0 // Amount of power drained.
var/max_power = 1e9 // Detonation point.
var/mode = 0 // 0 = off, 1=clamped (off), 2=operating
var/drained_this_tick = 0 // This is unfortunately necessary to ensure we process powersinks BEFORE other machinery such as APCs.
var/datum/powernet/PN // Our powernet
var/obj/structure/cable/attached // the attached cable
/obj/item/device/powersink/Destroy()
STOP_PROCESSING(SSobj, src)
STOP_PROCESSING_POWER_OBJECT(src)
..()
/obj/item/device/powersink/attackby(var/obj/item/I, var/mob/user)
if(I.is_screwdriver())
if(mode == 0)
var/turf/T = loc
if(isturf(T) && !!T.is_plating())
attached = locate() in T
if(!attached)
to_chat(user, "No exposed cable here to attach to.")
return
else
anchored = 1
mode = 1
src.visible_message("<span class='notice'>[user] attaches [src] to the cable!</span>")
playsound(src, I.usesound, 50, 1)
return
else
to_chat(user, "Device must be placed over an exposed cable to attach to it.")
return
else
if (mode == 2)
STOP_PROCESSING(SSobj, src) // Now the power sink actually stops draining the station's power if you unhook it. --NeoFite
STOP_PROCESSING_POWER_OBJECT(src)
anchored = 0
mode = 0
src.visible_message("<span class='notice'>[user] detaches [src] from the cable!</span>")
set_light(0)
playsound(src, I.usesound, 50, 1)
icon_state = "powersink0"
return
else
..()
/obj/item/device/powersink/attack_ai()
return
/obj/item/device/powersink/attack_hand(var/mob/user)
switch(mode)
if(0)
..()
if(1)
src.visible_message("<span class='notice'>[user] activates [src]!</span>")
mode = 2
icon_state = "powersink1"
START_PROCESSING(SSobj, src)
datum_flags &= ~DF_ISPROCESSING // Have to reset this flag so that PROCESSING_POWER_OBJECT can re-add it. It fails if the flag is already present. - Ater
START_PROCESSING_POWER_OBJECT(src)
if(2) //This switch option wasn't originally included. It exists now. --NeoFite
src.visible_message("<span class='notice'>[user] deactivates [src]!</span>")
mode = 1
set_light(0)
icon_state = "powersink0"
STOP_PROCESSING(SSobj, src)
STOP_PROCESSING_POWER_OBJECT(src)
/obj/item/device/powersink/pwr_drain()
if(!attached)
return 0
if(drained_this_tick)
return 1
drained_this_tick = 1
var/drained = 0
if(!PN)
return 1
set_light(12)
PN.trigger_warning()
// found a powernet, so drain up to max power from it
drained = PN.draw_power(drain_rate)
// if tried to drain more than available on powernet
// now look for APCs and drain their cells
if(drained < drain_rate)
for(var/obj/machinery/power/terminal/T in PN.nodes)
// Enough power drained this tick, no need to torture more APCs
if(drained >= drain_rate)
break
if(istype(T.master, /obj/machinery/power/apc))
var/obj/machinery/power/apc/A = T.master
if(A.operating && A.cell)
var/cur_charge = A.cell.charge / CELLRATE
var/drain_val = min(apc_drain_rate, cur_charge)
A.cell.use(drain_val * CELLRATE)
drained += drain_val
power_drained += drained
return 1
/obj/item/device/powersink/process()
drained_this_tick = 0
power_drained -= min(dissipation_rate, power_drained)
if(power_drained > max_power * 0.95)
playsound(src, 'sound/effects/screech.ogg', 100, 1, 1)
if(power_drained >= max_power)
explosion(src.loc, 3,6,9,12)
qdel(src)
return
if(attached && attached.powernet)
PN = attached.powernet
else
PN = null
@@ -8,7 +8,6 @@
)
item_state = "electropack"
frequency = 1449
flags = CONDUCT
slot_flags = SLOT_BACK
w_class = ITEMSIZE_HUGE
@@ -8,7 +8,7 @@
anchored = 1
w_class = ITEMSIZE_LARGE
canhear_range = 2
flags = CONDUCT | NOBLOODY
flags = NOBLOODY
var/circuit = /obj/item/weapon/circuitboard/intercom
var/number = 0
var/last_tick //used to delay the powercheck
@@ -60,7 +60,7 @@
/obj/item/device/radio/intercom/New()
..()
START_PROCESSING(SSobj, src)
START_PROCESSING(SSobj, src)
circuit = new circuit(src)
/obj/item/device/radio/intercom/department/medbay/New()
@@ -45,7 +45,6 @@ var/global/list/default_medbay_channels = list(
var/adhoc_fallback = FALSE //Falls back to 'radio' mode if subspace not available
var/syndie = 0//Holder to see if it's a syndicate encrypted radio
var/centComm = 0//Holder to see if it's a CentCom encrypted radio
flags = CONDUCT
slot_flags = SLOT_BELT
throw_speed = 2
throw_range = 9
+1 -6
View File
@@ -15,7 +15,6 @@ HALOGEN COUNTER - Radcount on mobs
desc = "A hand-held body scanner able to distinguish vital signs of the subject."
icon_state = "health"
item_state = "healthanalyzer"
flags = CONDUCT
slot_flags = SLOT_BELT
throwforce = 3
w_class = ITEMSIZE_SMALL
@@ -299,7 +298,6 @@ HALOGEN COUNTER - Radcount on mobs
icon_state = "atmos"
item_state = "analyzer"
w_class = ITEMSIZE_SMALL
flags = CONDUCT
slot_flags = SLOT_BELT
throwforce = 5
throw_speed = 4
@@ -337,7 +335,7 @@ HALOGEN COUNTER - Radcount on mobs
desc = "A hand-held mass spectrometer which identifies trace chemicals in a blood sample."
icon_state = "spectrometer"
w_class = ITEMSIZE_SMALL
flags = CONDUCT | OPENCONTAINER
flags = OPENCONTAINER
slot_flags = SLOT_BELT
throwforce = 5
throw_speed = 4
@@ -399,7 +397,6 @@ HALOGEN COUNTER - Radcount on mobs
icon_state = "spectrometer"
item_state = "analyzer"
w_class = ITEMSIZE_SMALL
flags = CONDUCT
slot_flags = SLOT_BELT
throwforce = 5
throw_speed = 4
@@ -447,7 +444,6 @@ HALOGEN COUNTER - Radcount on mobs
item_state = "xenobio"
origin_tech = list(TECH_BIO = 1)
w_class = ITEMSIZE_SMALL
flags = CONDUCT
throwforce = 0
throw_speed = 3
throw_range = 7
@@ -490,7 +486,6 @@ HALOGEN COUNTER - Radcount on mobs
icon_state = "eftpos"
desc = "A hand-held halogen counter, used to detect the level of irradiation of living beings."
w_class = ITEMSIZE_SMALL
flags = CONDUCT
origin_tech = list(TECH_MAGNET = 1, TECH_BIO = 2)
throwforce = 0
throw_speed = 3
@@ -7,7 +7,6 @@ var/global/mob/living/carbon/human/dummy/mannequin/sleevemate_mob
icon = 'icons/obj/device_alt.dmi'
icon_state = "sleevemate"
item_state = "healthanalyzer"
flags = CONDUCT
slot_flags = SLOT_BELT
throwforce = 3
w_class = ITEMSIZE_SMALL
@@ -4,7 +4,6 @@
icon = 'icons/obj/grenade.dmi'
icon_state = "camgrenade"
item_state = "empgrenade"
flags = CONDUCT
w_class = ITEMSIZE_SMALL
force = 0
throwforce = 5.0
@@ -50,7 +49,6 @@
icon = 'icons/obj/grenade.dmi'
icon_state = "camgrenadebroken"
item_state = "empgrenade"
flags = CONDUCT
force = 5.0
w_class = ITEMSIZE_SMALL
throwforce = 5.0
@@ -68,7 +66,6 @@
w_class = ITEMSIZE_TINY
slot_flags = SLOT_EARS
origin_tech = list(TECH_ENGINEERING = 1, TECH_ILLEGAL = 3) //crush it and you lose the data
flags = CONDUCT
force = 0
throwforce = 5.0
throw_range = 15
@@ -7,7 +7,6 @@
slot_flags = SLOT_BACK
//copied from tank.dm
flags = CONDUCT
force = 5.0
throwforce = 10.0
throw_speed = 1
@@ -13,7 +13,6 @@
var/playsleepseconds = 0.0
var/obj/item/device/tape/mytape = /obj/item/device/tape/random
var/canprint = 1
flags = CONDUCT
slot_flags = SLOT_BELT
throwforce = 2
throw_speed = 4
@@ -22,7 +22,6 @@ effective or pretty fucking useless.
w_class = ITEMSIZE_TINY
throw_speed = 4
throw_range = 10
flags = CONDUCT
item_state = "electronic"
origin_tech = list(TECH_MAGNET = 3, TECH_COMBAT = 3, TECH_ILLEGAL = 3)
@@ -4,7 +4,6 @@
icon_state = "voice0"
item_state = "flashbang" //looks exactly like a flash (and nothing like a flashbang)
w_class = ITEMSIZE_TINY
flags = CONDUCT
slot_flags = SLOT_EARS
var/use_message = "Halt! Security!"
@@ -3,7 +3,6 @@
icon = 'icons/obj/robot_parts.dmi'
item_state = "buildpipe"
icon_state = "blank"
flags = CONDUCT
slot_flags = SLOT_BELT
var/list/part = null // Order of args is important for installing robolimbs.
var/sabotaged = 0 //Emagging limbs can have repercussions when installed as prosthetics.
-1
View File
@@ -3,7 +3,6 @@
desc = "Some rods. Can be used for building, or something."
singular_name = "metal rod"
icon_state = "rods"
flags = CONDUCT
w_class = ITEMSIZE_NORMAL
force = 9.0
throwforce = 15.0
@@ -113,7 +113,6 @@
throwforce = 15.0
throw_speed = 5
throw_range = 20
flags = CONDUCT
no_variants = FALSE
/obj/item/stack/tile/floor/red
-1
View File
@@ -295,7 +295,6 @@
slot_l_hand_str = 'icons/mob/items/lefthand_material.dmi',
slot_r_hand_str = 'icons/mob/items/righthand_material.dmi',
)
flags = CONDUCT
slot_flags = SLOT_BELT | SLOT_BACK
force = 5
throwforce = 5
@@ -11,7 +11,6 @@ AI MODULES
icon = 'icons/obj/module.dmi'
icon_state = "std_mod"
desc = "An AI Module for transmitting encrypted instructions to the AI."
flags = CONDUCT
force = 5.0
w_class = ITEMSIZE_SMALL
throwforce = 5.0
+1 -1
View File
@@ -5,7 +5,7 @@
icon = 'icons/obj/tools.dmi'
icon_state = "rcd"
item_state = "rcd"
flags = CONDUCT | NOBLUDGEON
flags = NOBLUDGEON
force = 10
throwforce = 10
throw_speed = 1
@@ -8,7 +8,6 @@
icon = 'icons/obj/autopsy_scanner.dmi'
icon_state = ""
item_state = "autopsy_scanner"
flags = CONDUCT
w_class = ITEMSIZE_SMALL
origin_tech = list(TECH_MATERIAL = 1, TECH_BIO = 1)
var/list/datum/autopsy_data_scanner/wdata = list()
@@ -502,7 +502,6 @@ CIGARETTE PACKETS ARE IN FANCY.DM
item_state = "lighter-g"
w_class = ITEMSIZE_TINY
throwforce = 4
flags = CONDUCT
slot_flags = SLOT_BELT
attack_verb = list("burnt", "singed")
var/base_state
@@ -12,7 +12,6 @@
density = 0
anchored = 0
w_class = ITEMSIZE_SMALL
flags = CONDUCT
force = 5.0
throwforce = 5.0
throw_speed = 3
@@ -5,7 +5,6 @@
icon_state = "fire_extinguisher0"
item_state = "fire_extinguisher"
hitsound = 'sound/weapons/smash.ogg'
flags = CONDUCT
throwforce = 10
w_class = ITEMSIZE_NORMAL
throw_speed = 2
@@ -8,7 +8,6 @@
slot_r_hand_str = 'icons/mob/items/righthand_guns.dmi',
)
item_state = "flamethrower_0"
flags = CONDUCT
force = 3.0
throwforce = 10.0
throw_speed = 1
@@ -7,7 +7,6 @@
item_state = "grenade"
throw_speed = 4
throw_range = 20
flags = CONDUCT
slot_flags = SLOT_MASK|SLOT_BELT
var/active = 0
@@ -59,7 +59,6 @@
desc = "It's made of AUTHENTIC faux-leather and has a price-tag still attached. Its owner must be a real professional."
icon_state = "briefcase"
item_state = "briefcase"
flags = CONDUCT
force = 8.0
throw_speed = 1
throw_range = 4
@@ -4,7 +4,6 @@
gender = PLURAL
icon = 'icons/obj/items.dmi'
icon_state = "handcuff"
flags = CONDUCT
slot_flags = SLOT_BELT
throwforce = 5
w_class = ITEMSIZE_SMALL
@@ -205,7 +204,6 @@ var/last_chew = 0
gender = PLURAL
icon = 'icons/obj/items.dmi'
icon_state = "legcuff"
flags = CONDUCT
throwforce = 0
w_class = ITEMSIZE_NORMAL
origin_tech = list(TECH_MATERIAL = 1)
@@ -44,7 +44,6 @@
desc = "A rod with some wire wrapped around the top. It'd be easy to attach something to the top bit."
icon_state = "wiredrod"
item_state = "rods"
flags = CONDUCT
force = 8
throwforce = 10
w_class = ITEMSIZE_NORMAL
@@ -59,7 +59,6 @@
icon = 'icons/obj/kitchen.dmi'
icon_state = "knife"
desc = "A general purpose Chef's Knife made by SpaceCook Incorporated. Guaranteed to stay sharp for years to come."
flags = CONDUCT
sharp = 1
edge = 1
force_divisor = 0.15 // 9 when wielded with hardness 60 (steel)
@@ -7,7 +7,7 @@
sharp = 0
edge = 0
armor_penetration = 50
flags = NOBLOODY
flags = NOCONDUCT | NOBLOODY
var/lrange = 2
var/lpower = 2
var/lcolor = "#0099FF"
@@ -82,7 +82,6 @@
throw_speed = 1
throw_range = 5
w_class = ITEMSIZE_NORMAL
flags = CONDUCT | NOBLOODY
origin_tech = list(TECH_MAGNET = 3, TECH_COMBAT = 4)
attack_verb = list("attacked", "chopped", "cleaved", "torn", "cut")
sharp = 1
@@ -268,7 +267,7 @@
spark_system.set_up(5, 0, src)
spark_system.attach(src)
START_PROCESSING(SSobj, src)
START_PROCESSING(SSobj, src)
set_light(lrange, lpower, lcolor)
/obj/item/weapon/melee/energy/blade/Destroy()
@@ -2,7 +2,6 @@
name = "chain of command"
desc = "A tool used by great men to placate the frothing masses."
icon_state = "chain"
flags = CONDUCT
slot_flags = SLOT_BELT
force = 10
throwforce = 7
@@ -21,7 +20,6 @@
icon = 'icons/obj/items.dmi'
icon_state = "umbrella_closed"
addblends = "umbrella_closed_a"
flags = CONDUCT
slot_flags = SLOT_BELT
force = 5
throwforce = 5
+1 -2
View File
@@ -58,7 +58,6 @@
desc = "A shield adept for close quarters engagement. It's also capable of protecting from less powerful projectiles."
icon = 'icons/obj/weapons.dmi'
icon_state = "riot"
flags = CONDUCT
slot_flags = SLOT_BACK
force = 5.0
throwforce = 5.0
@@ -115,7 +114,7 @@
icon = 'icons/obj/weapons.dmi'
icon_state = "eshield0" // eshield1 for expanded
slot_flags = SLOT_EARS
flags = CONDUCT
flags = NOCONDUCT
force = 3.0
throwforce = 5.0
throw_speed = 1
@@ -2,7 +2,6 @@
name = "briefcase"
desc = "It's made of AUTHENTIC faux-leather and has a price-tag still attached. Its owner must be a real professional."
icon_state = "briefcase"
flags = CONDUCT
force = 8.0
throw_speed = 1
throw_range = 4
@@ -4,7 +4,6 @@
icon = 'icons/obj/storage.dmi'
icon_state = "red"
item_state_slots = list(slot_r_hand_str = "toolbox_red", slot_l_hand_str = "toolbox_red")
flags = CONDUCT
force = 10
throwforce = 10
throw_speed = 1
@@ -13,7 +13,6 @@
desc = "This shouldn't be here, ahelp it."
icon = 'icons/obj/surgery.dmi'
w_class = ITEMSIZE_SMALL
flags = CONDUCT
var/helpforce = 0 //For help intent things
/obj/item/weapon/surgical/attack(mob/M, mob/user)
@@ -92,7 +91,7 @@
origin_tech = list(TECH_MATERIAL = 1, TECH_BIO = 1)
matter = list(DEFAULT_WALL_MATERIAL = 10000, "glass" = 5000)
attack_verb = list("attacked", "slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut")
suicide_act(mob/user)
var/datum/gender/TU = gender_datums[user.get_visible_gender()]
viewers(user) << pick("<span class='danger'>\The [user] is slitting [TU.his] wrists with the [src.name]! It looks like [TU.hes] trying to commit suicide.</span>", \
@@ -79,7 +79,6 @@
desc = "Contains dangerous phoron. Do not inhale. Warning: extremely flammable."
icon_state = "phoron"
gauge_icon = null
flags = CONDUCT
slot_flags = null //they have no straps!
/obj/item/weapon/tank/phoron/Initialize()
@@ -105,7 +104,6 @@
desc = "Contains dangerous phoron. Do not inhale. Warning: extremely flammable."
icon_state = "phoron_vox"
gauge_icon = null
flags = CONDUCT
distribute_pressure = ONE_ATMOSPHERE*O2STANDARD
slot_flags = SLOT_BACK //these ones have straps!
@@ -124,7 +122,6 @@
icon_state = "emergency"
gauge_icon = "indicator_emergency"
gauge_cap = 4
flags = CONDUCT
slot_flags = SLOT_BELT
w_class = ITEMSIZE_SMALL
force = 4
@@ -15,7 +15,6 @@ var/list/global/tank_gauge_cache = list()
var/last_gauge_pressure
var/gauge_cap = 6
flags = CONDUCT
slot_flags = SLOT_BACK
w_class = ITEMSIZE_NORMAL
@@ -16,7 +16,6 @@
var/frequency = 1451
var/broadcasting = null
var/listening = 1.0
flags = CONDUCT
w_class = ITEMSIZE_SMALL
item_state = "electronic"
throw_speed = 4
@@ -7,7 +7,6 @@
desc = "Used to remove floors and to pry open doors."
icon = 'icons/obj/tools.dmi'
icon_state = "crowbar"
flags = CONDUCT
slot_flags = SLOT_BELT
force = 6
throwforce = 7
@@ -7,7 +7,6 @@
desc = "A steel bar with a wedge, designed specifically for opening unpowered doors in an emergency. It comes in a variety of configurations - collect them all!"
icon = 'icons/obj/tools_vr.dmi'
icon_state = "prybar"
flags = CONDUCT
slot_flags = SLOT_BELT
force = 4
throwforce = 5
@@ -6,7 +6,6 @@
desc = "You can be totally screwwy with this."
icon = 'icons/obj/tools.dmi'
icon_state = "screwdriver"
flags = CONDUCT
slot_flags = SLOT_BELT | SLOT_EARS
force = 6
w_class = ITEMSIZE_TINY
File diff suppressed because it is too large Load Diff
@@ -6,7 +6,6 @@
desc = "This cuts wires."
icon = 'icons/obj/tools.dmi'
icon_state = "cutters"
flags = CONDUCT
slot_flags = SLOT_BELT
force = 6
throw_speed = 2
@@ -6,7 +6,6 @@
desc = "A wrench with many common uses. Can be usually found in your hand."
icon = 'icons/obj/tools.dmi'
icon_state = "wrench"
flags = CONDUCT
slot_flags = SLOT_BELT
force = 6
throwforce = 7
-1
View File
@@ -11,7 +11,6 @@
throw_speed = 1
throw_range = 5
w_class = ITEMSIZE_NORMAL
flags = CONDUCT
matter = list(DEFAULT_WALL_MATERIAL = 3000)
var/list/carrying = list() // List of things on the tray. - Doohl
var/max_carry = 10
+1 -2
View File
@@ -5,7 +5,6 @@
icon_state = "grille"
density = 1
anchored = 1
flags = CONDUCT
pressure_resistance = 5*ONE_ATMOSPHERE
layer = TABLE_LAYER
explosion_resistance = 1
@@ -151,7 +150,7 @@
return
//window placing end
else if(!(W.flags & CONDUCT) || !shock(user, 70))
else if((W.flags & NOCONDUCT) || !shock(user, 70))
user.setClickCooldown(user.get_attack_speed(W))
user.do_attack_animation(src)
playsound(loc, 'sound/effects/grillehit.ogg', 80, 1)
-1
View File
@@ -7,7 +7,6 @@
anchored = 1.0
w_class = ITEMSIZE_NORMAL
plane = PLATING_PLANE
// flags = CONDUCT
/obj/structure/lattice/Initialize()
. = ..()
@@ -6,7 +6,6 @@
icon_state = "target_stake"
density = 1
w_class = ITEMSIZE_HUGE
flags = CONDUCT
var/obj/item/target/pinned_target // the current pinned target
Move()
-1
View File
@@ -3,7 +3,6 @@
desc = "A small electronic device that should never exist."
icon = 'icons/obj/assemblies/new_assemblies.dmi'
icon_state = ""
flags = CONDUCT
w_class = ITEMSIZE_SMALL
matter = list(DEFAULT_WALL_MATERIAL = 100)
throwforce = 2
+2 -2
View File
@@ -3,7 +3,7 @@
icon = 'icons/obj/assemblies/new_assemblies.dmi'
icon_state = "holder"
item_state = "assembly"
flags = CONDUCT | PROXMOVE
flags = PROXMOVE
throwforce = 5
w_class = ITEMSIZE_SMALL
throw_speed = 3
@@ -233,7 +233,7 @@
tmr.time=5
tmr.secured = 1
tmr.holder = src
START_PROCESSING(SSobj, tmr)
START_PROCESSING(SSobj, tmr)
a_left = tmr
a_right = ign
secured = 1
-1
View File
@@ -6,7 +6,6 @@
var/obj/item/device/radio/electropack/part2 = null
var/status = 0
w_class = ITEMSIZE_HUGE
flags = CONDUCT
/obj/item/assembly/shock_kit/Destroy()
qdel(part1)
@@ -52,7 +52,6 @@
name = "cyborg suit"
desc = "Suit for a cyborg costume."
icon_state = "death"
flags = CONDUCT
fire_resist = T0C+5200
flags_inv = HIDEGLOVES|HIDESHOES|HIDEJUMPSUIT|HIDETIE|HIDEHOLSTER
+1 -1
View File
@@ -3,7 +3,7 @@
desc = "Swipe your ID card to make purchases electronically."
icon = 'icons/obj/device.dmi'
icon_state = "retail_idle"
flags = NOBLUDGEON|CONDUCT
flags = NOBLUDGEON
slot_flags = SLOT_BELT
req_access = list(access_heads)
w_class = ITEMSIZE_SMALL
+1 -1
View File
@@ -100,7 +100,7 @@
amount_per_transfer_from_this = 20
possible_transfer_amounts = null
volume = 150
flags = CONDUCT | OPENCONTAINER
flags = OPENCONTAINER
/obj/item/weapon/reagent_containers/food/drinks/golden_cup/on_reagent_change()
..()
@@ -12,7 +12,6 @@
icon = 'icons/obj/integrated_electronics/electronic_tools.dmi'
icon_state = "wirer-wire"
item_state = "wirer"
flags = CONDUCT
w_class = ITEMSIZE_SMALL
var/datum/integrated_io/selected_io = null
var/mode = WIRE
@@ -110,7 +109,6 @@
settings to specific circuits, or for debugging purposes. It can also pulse activation pins."
icon = 'icons/obj/integrated_electronics/electronic_tools.dmi'
icon_state = "debugger"
flags = CONDUCT
w_class = 2
var/data_to_write = null
var/accepting_refs = 0
+2 -2
View File
@@ -37,8 +37,8 @@
if(apply_colour)
color = material.icon_colour
if(material.conductive)
flags |= CONDUCT
if(!material.conductive)
flags |= NOCONDUCT
matter = material.get_matter()
update_strings()
-1
View File
@@ -4,7 +4,6 @@
icon = 'icons/obj/items.dmi'
name = "Coin"
icon_state = "coin"
flags = CONDUCT
force = 0.0
throwforce = 0.0
w_class = ITEMSIZE_TINY
-2
View File
@@ -13,7 +13,6 @@
name = "mining drill"
desc = "The most basic of mining drills, for short excavations and small mineral extractions."
icon = 'icons/obj/items.dmi'
flags = CONDUCT
slot_flags = SLOT_BELT
force = 15.0
throwforce = 4.0
@@ -112,7 +111,6 @@
desc = "A large tool for digging and moving dirt."
icon = 'icons/obj/items.dmi'
icon_state = "shovel"
flags = CONDUCT
slot_flags = SLOT_BELT
force = 8.0
throwforce = 4.0
-1
View File
@@ -4,7 +4,6 @@
icon = 'icons/obj/storage.dmi'
name = "Money bag"
icon_state = "moneybag"
flags = CONDUCT
force = 10.0
throwforce = 2.0
w_class = ITEMSIZE_LARGE
@@ -6,7 +6,6 @@
icon_state = "robotanalyzer"
item_state = "analyzer"
desc = "A hand-held scanner able to diagnose robotic injuries."
flags = CONDUCT
slot_flags = SLOT_BELT
throwforce = 3
w_class = ITEMSIZE_SMALL
@@ -3,7 +3,6 @@
icon = 'icons/mob/dogborg_vr.dmi'
icon_state = "jaws"
desc = "The jaws of the law."
flags = CONDUCT
force = 10
throwforce = 0
hitsound = 'sound/weapons/bite.ogg'
@@ -15,7 +14,6 @@
icon = 'icons/mob/dogborg_vr.dmi'
icon_state = "smalljaws"
desc = "The jaws of a small dog."
flags = CONDUCT
force = 5
throwforce = 0
hitsound = 'sound/weapons/bite.ogg'
@@ -32,7 +30,6 @@
icon = 'icons/mob/dogborg_vr.dmi'
icon_state = "jaws"
desc = "The jaws of the law."
flags = CONDUCT
force = 10
throwforce = 0
hitsound = 'sound/weapons/bite.ogg'
@@ -43,7 +40,6 @@
icon = 'icons/mob/dogborg_vr.dmi'
icon_state = "smalljaws"
desc = "The jaws of a small dog."
flags = CONDUCT
force = 5
throwforce = 0
hitsound = 'sound/weapons/bite.ogg'
@@ -57,7 +53,6 @@
icon = 'icons/mob/dogborg_vr.dmi'
icon_state = "nose"
desc = "The BOOP module, a simple reagent and atmosphere sniffer."
flags = CONDUCT
force = 0
throwforce = 0
attack_verb = list("nuzzled", "nosed", "booped")
@@ -323,7 +318,6 @@
icon = 'icons/mob/dogborg_vr.dmi'
icon_state = "swordtail"
desc = "A glowing pink dagger normally attached to the end of a cyborg's tail. It appears to be extremely sharp."
flags = CONDUCT
force = 20 //Takes 5 hits to 100-0
sharp = 1
edge = 1
@@ -19,7 +19,6 @@ var/global/list/robot_modules = list(
icon_state = "std_module"
w_class = ITEMSIZE_NO_CONTAINER
item_state = "std_mod"
flags = CONDUCT
var/hide_on_manifest = 0
var/channels = list()
var/networks = list()
-1
View File
@@ -124,7 +124,6 @@ var/global/photo_count = 0
icon_state = "camera"
item_state = "camera"
w_class = ITEMSIZE_SMALL
flags = CONDUCT
slot_flags = SLOT_BELT
matter = list(DEFAULT_WALL_MATERIAL = 2000)
var/pictures_max = 10
@@ -191,7 +191,6 @@ proc/cardinalrange(var/center)
icon_state = "box"
item_state = "electronic"
w_class = ITEMSIZE_LARGE
flags = CONDUCT
throwforce = 5
throw_speed = 1
throw_range = 2
+1 -3
View File
@@ -238,7 +238,7 @@ var/list/possible_cable_coil_colours = list(
shock(user, 5, 0.2)
else
if (W.flags & CONDUCT)
if(!(W.flags & NOCONDUCT))
shock(user, 50, 0.7)
src.add_fingerprint(user)
@@ -511,7 +511,6 @@ obj/structure/cable/proc/cableColor(var/colorC)
throw_speed = 2
throw_range = 5
matter = list(DEFAULT_WALL_MATERIAL = 50, "glass" = 20)
flags = CONDUCT
slot_flags = SLOT_BELT
item_state = "coil"
attack_verb = list("whipped", "lashed", "disciplined", "flogged")
@@ -932,7 +931,6 @@ obj/structure/cable/proc/cableColor(var/colorC)
throw_speed = 2
throw_range = 5
matter = list(DEFAULT_WALL_MATERIAL = 50, "glass" = 20)
flags = CONDUCT
slot_flags = SLOT_BELT
attack_verb = list("whipped", "lashed", "disciplined", "flogged")
stacktype = null
+2 -2
View File
@@ -471,7 +471,7 @@
if(M == user)
continue
M.show_message("[user.name] smashed the light!", 3, "You hear a tinkle of breaking glass", 2)
if(on && (W.flags & CONDUCT))
if(on && !(W.flags & NOCONDUCT))
//if(!user.mutations & COLD_RESISTANCE)
if (prob(12))
electrocute_mob(user, get_area(src), src, 0.3)
@@ -509,7 +509,7 @@
return
user << "You stick \the [W] into the light socket!"
if(has_power() && (W.flags & CONDUCT))
if(has_power() && !(W.flags & NOCONDUCT))
var/datum/effect/effect/system/spark_spread/s = new /datum/effect/effect/system/spark_spread
s.set_up(3, 1, src)
s.start()
-2
View File
@@ -3,7 +3,6 @@
desc = "A bullet casing."
icon = 'icons/obj/ammo.dmi'
icon_state = "s-casing"
flags = CONDUCT
slot_flags = SLOT_BELT | SLOT_EARS
throwforce = 1
w_class = ITEMSIZE_TINY
@@ -66,7 +65,6 @@
desc = "A magazine for some kind of gun."
icon_state = ".357"
icon = 'icons/obj/ammo.dmi'
flags = CONDUCT
slot_flags = SLOT_BELT
item_state = "syringe_kit"
matter = list(DEFAULT_WALL_MATERIAL = 500)
-1
View File
@@ -38,7 +38,6 @@
)
icon_state = "detective"
item_state = "gun"
flags = CONDUCT
slot_flags = SLOT_BELT|SLOT_HOLSTER
matter = list(DEFAULT_WALL_MATERIAL = 2000)
w_class = ITEMSIZE_NORMAL
@@ -7,7 +7,6 @@
origin_tech = list(TECH_COMBAT = 2, TECH_MAGNET = 4)
w_class = ITEMSIZE_LARGE
force = 10
flags = CONDUCT
slot_flags = SLOT_BACK
projectile_type = /obj/item/projectile/ion
@@ -127,7 +126,6 @@
icon = 'icons/obj/gun.dmi'
item_icons = null
icon_state = "staffofchange"
flags = CONDUCT
slot_flags = SLOT_BACK
w_class = ITEMSIZE_LARGE
charge_cost = 480
@@ -2,7 +2,6 @@
name = "launcher"
desc = "A device that launches things."
w_class = ITEMSIZE_HUGE
flags = CONDUCT
slot_flags = SLOT_BACK
var/release_force = 0
@@ -5,7 +5,6 @@
item_state = "pneumatic"
slot_flags = SLOT_BELT
w_class = ITEMSIZE_HUGE
flags = CONDUCT
fire_sound_text = "a loud whoosh of moving air"
fire_delay = 50
fire_sound = 'sound/weapons/grenade_launcher.ogg' // Formerly tablehit1.ogg but I like this better -Ace
@@ -7,7 +7,6 @@
throw_speed = 2
throw_range = 10
force = 5.0
flags = CONDUCT
slot_flags = 0
origin_tech = list(TECH_COMBAT = 8, TECH_MATERIAL = 5)
fire_sound = 'sound/weapons/rpg.ogg'
@@ -5,7 +5,6 @@
icon_state = "syringe-cartridge"
var/icon_flight = "syringe-cartridge-flight" //so it doesn't look so weird when shot
matter = list(DEFAULT_WALL_MATERIAL = 125, "glass" = 375)
flags = CONDUCT
slot_flags = SLOT_BELT | SLOT_EARS
throwforce = 3
force = 3
@@ -6,7 +6,6 @@
max_shells = 4
w_class = ITEMSIZE_LARGE
force = 10
flags = CONDUCT
slot_flags = SLOT_BACK
caliber = "12g"
origin_tech = list(TECH_COMBAT = 4, TECH_MATERIAL = 2)
@@ -41,14 +40,14 @@
loaded -= AC //Remove casing from loaded list.
chambered = AC
if(animated_pump)//This affects all bolt action and shotguns.
if(animated_pump)//This affects all bolt action and shotguns.
flick("[icon_state]-cycling", src)//This plays any pumping
update_icon()
/obj/item/weapon/gun/projectile/shotgun/pump/update_icon()//This adds empty sprite capability for shotguns.
..()
if(!empty_sprite)//Just a dirty check
if(!empty_sprite)//Just a dirty check
return
if((loaded.len) || (chambered))
icon_state = "[icon_state]"
@@ -80,7 +79,6 @@
max_shells = 2
w_class = ITEMSIZE_LARGE
force = 10
flags = CONDUCT
slot_flags = SLOT_BACK
caliber = "12g"
origin_tech = list(TECH_COMBAT = 3, TECH_MATERIAL = 1)
@@ -326,7 +326,6 @@
w_class = ITEMSIZE_SMALL
item_state = "electronic"
flags = CONDUCT
slot_flags = SLOT_BELT
proc/openwindow(mob/user as mob)
-1
View File
@@ -20,7 +20,6 @@
// var/maxshieldload = 200
var/obj/structure/cable/attached // the attached cable
var/storedpower = 0
flags = CONDUCT
//There have to be at least two posts, so these are effectively doubled
var/power_draw = 30000 //30 kW. How much power is drawn from powernet. Increase this to allow the generator to sustain longer shields, at the cost of more power draw.
var/max_stored_power = 50000 //50 kW
-1
View File
@@ -6,7 +6,6 @@
icon_state = "health"
w_class = ITEMSIZE_SMALL
item_state = "electronic"
flags = CONDUCT
/obj/item/device/antibody_scanner/attack(mob/M as mob, mob/user as mob)
if(!istype(M,/mob/living/carbon/))
@@ -278,7 +278,7 @@
icon_override = 'icons/vore/custom_items_vr.dmi'
item_state = "holochain_mob"
flags = CONDUCT | NOBLOODY
flags = NOBLOODY
slot_flags = SLOT_BELT
force = 10
throwforce = 3
@@ -529,7 +529,6 @@
icon_state = "browncane"
item_icons = list (slot_r_hand_str = 'icons/vore/custom_items_vr.dmi', slot_l_hand_str = 'icons/vore/custom_items_vr.dmi')
item_state_slots = list(slot_r_hand_str = "browncanemob_r", slot_l_hand_str = "browncanemob_l")
flags = CONDUCT
force = 5.0
throwforce = 7.0
w_class = ITEMSIZE_SMALL
@@ -549,7 +548,6 @@
icon_state = "alexiswand"
item_icons = list (slot_r_hand_str = 'icons/vore/custom_items_vr.dmi', slot_l_hand_str = 'icons/vore/custom_items_vr.dmi')
item_state_slots = list(slot_r_hand_str = "alexiswandmob_r", slot_l_hand_str = "alexiswandmob_l")
flags = CONDUCT
force = 1.0
throwforce = 2.0
w_class = ITEMSIZE_SMALL
@@ -188,7 +188,6 @@
desc = "A miniature battery for an energy weapon."
icon = 'icons/obj/ammo_vr.dmi'
icon_state = "nsfw_batt"
flags = CONDUCT
slot_flags = SLOT_BELT | SLOT_EARS
throwforce = 1
w_class = ITEMSIZE_TINY