Split up and rename var/flags (#17794)

* Split up and rename `var/flags`

* Various fixes

* CL

* Don't rename Phoron Guard phoron preset

---------

Co-authored-by: Cody Brittain <cbrittain10@live.com>
This commit is contained in:
Cody Brittain
2023-11-22 11:27:51 -05:00
committed by GitHub
parent 4b9303a1e9
commit 06601c9ec3
335 changed files with 763 additions and 674 deletions

View File

@@ -27,7 +27,7 @@ Contains helper procs for airflow, handled in /connection_group.
/mob/living/carbon/human/airflow_stun() /mob/living/carbon/human/airflow_stun()
if(shoes) if(shoes)
if(shoes.item_flags & NOSLIP) return 0 if(shoes.item_flags & ITEM_FLAG_NO_SLIP) return 0
..() ..()
/atom/movable/proc/check_airflow_movable(n) /atom/movable/proc/check_airflow_movable(n)
@@ -74,7 +74,7 @@ Contains helper procs for airflow, handled in /connection_group.
if(buckled_to) if(buckled_to)
return 0 return 0
var/obj/item/shoes = get_equipped_item(slot_shoes) var/obj/item/shoes = get_equipped_item(slot_shoes)
if(istype(shoes) && (shoes.item_flags & NOSLIP)) if(istype(shoes) && (shoes.item_flags & ITEM_FLAG_NO_SLIP))
return 0 return 0
return 1 return 1

View File

@@ -41,7 +41,7 @@ var/image/contamination_overlay = image('icons/effects/contamination.dmi')
/obj/var/contaminated = 0 /obj/var/contaminated = 0
/obj/item/proc/can_contaminate() /obj/item/proc/can_contaminate()
if(flags & PHORONGUARD) if(item_flags & ITEM_FLAG_PHORON_GUARD)
return FALSE return FALSE
return TRUE return TRUE
@@ -99,15 +99,15 @@ var/image/contamination_overlay = image('icons/effects/contamination.dmi')
var/burn_eyes = 1 var/burn_eyes = 1
//Check for protective glasses //Check for protective glasses
if(glasses && (glasses.body_parts_covered & EYES) && (glasses.item_flags & AIRTIGHT)) if(glasses && (glasses.body_parts_covered & EYES) && (glasses.item_flags & ITEM_FLAG_AIRTIGHT))
burn_eyes = 0 burn_eyes = 0
//Check for protective maskwear //Check for protective maskwear
if(burn_eyes && wear_mask && (wear_mask.body_parts_covered & EYES) && (wear_mask.item_flags & AIRTIGHT)) if(burn_eyes && wear_mask && (wear_mask.body_parts_covered & EYES) && (wear_mask.item_flags & ITEM_FLAG_AIRTIGHT))
burn_eyes = 0 burn_eyes = 0
//Check for protective helmets //Check for protective helmets
if(burn_eyes && head && (head.body_parts_covered & EYES) && (head.item_flags & AIRTIGHT)) if(burn_eyes && head && (head.body_parts_covered & EYES) && (head.item_flags & ITEM_FLAG_AIRTIGHT))
burn_eyes = 0 burn_eyes = 0
//If we still need to, burn their eyes //If we still need to, burn their eyes
@@ -141,7 +141,7 @@ var/image/contamination_overlay = image('icons/effects/contamination.dmi')
//Checks if the head is adequately sealed. //Checks if the head is adequately sealed.
if(head) if(head)
if(vsc.plc.PHORONGUARD_ONLY) if(vsc.plc.PHORONGUARD_ONLY)
if(head.flags & PHORONGUARD) if(head.item_flags & ITEM_FLAG_PHORON_GUARD)
return 1 return 1
else if(head.body_parts_covered & EYES) else if(head.body_parts_covered & EYES)
return 1 return 1
@@ -153,7 +153,7 @@ var/image/contamination_overlay = image('icons/effects/contamination.dmi')
for(var/obj/item/protection in list(wear_suit, gloves, shoes)) for(var/obj/item/protection in list(wear_suit, gloves, shoes))
if(!protection) if(!protection)
continue continue
if(vsc.plc.PHORONGUARD_ONLY && !(protection.flags & PHORONGUARD)) if(vsc.plc.PHORONGUARD_ONLY && !(protection.item_flags & ITEM_FLAG_PHORON_GUARD))
return 0 return 0
coverage |= protection.body_parts_covered coverage |= protection.body_parts_covered

View File

@@ -1,7 +1,3 @@
// Movable flags.
#define MOVABLE_FLAG_EFFECTMOVE 1 //Is this an effect that should move?
#define MOVABLE_FLAG_DEL_SHUTTLE 2 //Shuttle transition will delete this.
var/global/list/bitflags = list(1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024, 2048, 4096, 8192, 16384, 32768) var/global/list/bitflags = list(1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024, 2048, 4096, 8192, 16384, 32768)
#define TURF_IS_MIMICING(T) (isturf(T) && (T:z_flags & ZM_MIMIC_BELOW)) #define TURF_IS_MIMICING(T) (isturf(T) && (T:z_flags & ZM_MIMIC_BELOW))
@@ -27,3 +23,69 @@ var/list/mimic_defines = list(
"ZM_MIMIC_NO_AO", "ZM_MIMIC_NO_AO",
"ZM_NO_OCCLUDE" "ZM_NO_OCCLUDE"
) )
// Flags bitmask
/// If a dense atom (potentially) only blocks movements from a given direction, i.e. window panes
#define ATOM_FLAG_CHECKS_BORDER FLAG(1)
/// Used for atoms if they don't want to get a blood overlay.
#define ATOM_FLAG_NO_BLOOD FLAG(2)
/// Reagents do not react in this containers
#define ATOM_FLAG_NO_REACT FLAG(3)
/// Is an open container for chemistry purposes
#define ATOM_FLAG_OPEN_CONTAINER FLAG(4)
/// Reagent container that can pour its contents with a lid on. only used for syrup bottles for now
#define ATOM_FLAG_POUR_CONTAINER FLAG(5)
/// Should we use the initial icon for display? Mostly used by overlay only objects
#define ATOM_FLAG_HTML_USE_INITIAL_ICON FLAG(6)
// Movable flags.
/// Does this object require proximity checking in Enter()?
#define MOVABLE_FLAG_PROXMOVE FLAG(1)
///Is this an effect that should move?
#define MOVABLE_FLAG_EFFECTMOVE FLAG(2)
///Shuttle transition will delete this.
#define MOVABLE_FLAG_DEL_SHUTTLE FLAG(3)
// Obj flags
/// Can this object be rotated?
#define OBJ_FLAG_ROTATABLE FLAG(0)
/// This object can be rotated even while anchored
#define OBJ_FLAG_ROTATABLE_ANCHORED FLAG(1)
/// Can this take a signaler? only in use for machinery
#define OBJ_FLAG_SIGNALER FLAG(2)
/// Will prevent mobs from falling
#define OBJ_FLAG_NOFALL FLAG(3)
/// Object moves with shuttle transition even if turf below is a background turf.
#define OBJ_FLAG_MOVES_UNSUPPORTED FLAG(4)
#define OBJ_FLAG_CONDUCTABLE FLAG(5)
// Item flags
/// When an item has this it produces no "X has been hit by Y with Z" message with the default handler.
#define ITEM_FLAG_NO_BLUDGEON FLAG(0)
/// Does not get contaminated by phoron.
#define ITEM_FLAG_PHORON_GUARD FLAG(1)
/// Prevents syringes, parapens and hyposprays if equiped to slot_suit or slot_head.
#define ITEM_FLAG_THICK_MATERIAL FLAG(2)
/// Functions with internals
#define ITEM_FLAG_AIRTIGHT FLAG(3)
///Prevents from slipping on wet floors, in space, etc.
#define ITEM_FLAG_NO_SLIP FLAG(4)
/// Blocks the effect that chemical clouds would have on a mob -- glasses, mask and helmets ONLY! (NOTE: flag shared with ONESIZEFITSALL)
#define ITEM_FLAG_BLOCK_GAS_SMOKE_EFFECT FLAG(5)
/// At the moment, masks with this flag will not prevent eating even if they are covering your face.
#define ITEM_FLAG_FLEXIBLE_MATERIAL FLAG(6)
/// Allows syringes and hyposprays to inject, even if the material is thick
#define ITEM_FLAG_INJECTION_PORT FLAG(7)
/// When applied to footwear, this makes it so that they don't trigger things like landmines and mouse traps
#define ITEM_FLAG_LIGHT_STEP FLAG(8)
/// whether wearing this item will protect you from loud noises such as flashbangs | this only works for ear slots or the head slot
#define ITEM_FLAG_SOUND_PROTECTION FLAG(9)
/// won't block flavourtext when worn on equipment slot
#define ITEM_FLAG_SHOW_FLAVOR_TEXT FLAG(10)
/// Uses the special held maptext system, which sets a specific maptext if the item is in possession of a mob.
#define ITEM_FLAG_HELD_MAP_TEXT FLAG(11)
/// Cannot be moved from its current inventory slot. Mostly for augments, modules, and other "attached" items.
#define ITEM_FLAG_NO_MOVE FLAG(12)

View File

@@ -21,31 +21,6 @@
#define SLOT_WRISTS BITFLAG(15) #define SLOT_WRISTS BITFLAG(15)
#define SLOT_S_STORE BITFLAG(16) #define SLOT_S_STORE BITFLAG(16)
// Flags bitmasks.
#define NOBLUDGEON 0x1 // When an item has this it produces no "X has been hit by Y with Z" message with the default handler.
#define CONDUCT 0x2 // Conducts electricity. (metal etc.)
#define ON_BORDER 0x4 // Item has priority to check when entering or leaving.
#define NOBLOODY 0x8 // Used for items if they don't want to get a blood overlay.
#define OPENCONTAINER 0x10 // Is an open container for chemistry purposes.
#define PHORONGUARD 0x20 // Does not get contaminated by phoron.
#define NOREACT 0x40 // Reagents don't react inside this container.
#define PROXMOVE 0x80 // Does this object require proximity checking in Enter()?
#define HELDMAPTEXT 0x100 // Uses the special held maptext system, which sets a specific maptext if the item is in possession of a mob.
#define NOMOVE 0x200 // Cannot be moved from its current inventory slot. Mostly for augments, modules, and other "attached" items.
#define HTML_USE_INITAL_ICON 0x400 // Should we use the initial icon for display? Mostly used by overlay only objects
#define POURCONTAINER 0x800 // reagent container that can pour its contents with a lid on. only used for syrup bottles for now
//Flags for items (equipment)
#define THICKMATERIAL BITFLAG(0) // Prevents syringes, parapens and hyposprays if equiped to slot_suit or slot_head.
#define AIRTIGHT BITFLAG(1) // Functions with internals.
#define NOSLIP BITFLAG(2) // Prevents from slipping on wet floors, in space, etc.
#define BLOCK_GAS_SMOKE_EFFECT BITFLAG(3) // Blocks the effect that chemical clouds would have on a mob -- glasses, mask and helmets ONLY! (NOTE: flag shared with ONESIZEFITSALL)
#define FLEXIBLEMATERIAL BITFLAG(4) // At the moment, masks with this flag will not prevent eating even if they are covering your face.
#define SOUNDPROTECTION BITFLAG(5) // whether wearing this item will protect you from loud noises such as flashbangs | this only works for ear slots or the head slot
#define LIGHTSTEP BITFLAG(6) // When applied to footwear, this makes it so that they don't trigger things like landmines and mouse traps
#define INJECTIONPORT BITFLAG(7) // Allows syringes and hyposprays to inject, even if the material is thick
#define SHOWFLAVORTEXT BITFLAG(8) // won't block flavourtext when worn on equipment slot
// Flags for pass_flags. // Flags for pass_flags.
#define PASSTABLE 0x1 #define PASSTABLE 0x1
#define PASSGLASS 0x2 #define PASSGLASS 0x2

View File

@@ -142,13 +142,13 @@
#define DEFAULT_JOB_TYPE /datum/job/assistant #define DEFAULT_JOB_TYPE /datum/job/assistant
//Area flags, possibly more to come //Area flags, possibly more to come
#define RAD_SHIELDED BITFLAG(1) //shielded from radiation, clearly #define AREA_FLAG_RAD_SHIELDED BITFLAG(1) //shielded from radiation, clearly
#define SPAWN_ROOF BITFLAG(2) // if we should attempt to spawn a roof above us. #define AREA_FLAG_SPAWN_ROOF BITFLAG(2) // if we should attempt to spawn a roof above us.
#define HIDE_FROM_HOLOMAP BITFLAG(3) // if we shouldn't be drawn on station holomaps #define AREA_FLAG_HIDE_FROM_HOLOMAP BITFLAG(3) // if we shouldn't be drawn on station holomaps
#define FIRING_RANGE BITFLAG(4) #define AREA_FLAG_FIRING_RANGE BITFLAG(4)
#define NO_CREW_EXPECTED BITFLAG(5) // Areas where crew is not expected to ever be. Used to tell antag bases and such from crew-accessible areas on centcom level. #define AREA_FLAG_NO_CREW_EXPECTED BITFLAG(5) // Areas where crew is not expected to ever be. Used to tell antag bases and such from crew-accessible areas on centcom level.
#define PRISON BITFLAG(6) // Marks prison area for purposes of checking if brigged/imprisoned #define AREA_FLAG_PRISON BITFLAG(6) // Marks prison area for purposes of checking if brigged/imprisoned
#define NO_GHOST_TELEPORT_ACCESS BITFLAG(7) // Marks whether ghosts should not have teleport access to this area #define AREA_FLAG_NO_GHOST_TELEPORT_ACCESS BITFLAG(7) // Marks whether ghosts should not have teleport access to this area
// Convoluted setup so defines can be supplied by Bay12 main server compile script. // Convoluted setup so defines can be supplied by Bay12 main server compile script.
// Should still work fine for people jamming the icons into their repo. // Should still work fine for people jamming the icons into their repo.

View File

@@ -1,9 +1,3 @@
#define OBJ_FLAG_ROTATABLE (1<<1) // Can this object be rotated?
#define OBJ_FLAG_ROTATABLE_ANCHORED (1<<2) // This object can be rotated even while anchored
#define OBJ_FLAG_SIGNALER (1<<3) // Can this take a signaler? only in use for machinery
#define OBJ_FLAG_NOFALL (1<<4) // Will prevent mobs from falling
#define OBJ_FLAG_MOVES_UNSUPPORTED (1<<5) // Object moves with shuttle transition even if turf below is a background turf.
/obj/proc/issurgerycompatible() // set to false for things that are too unwieldy for surgery /obj/proc/issurgerycompatible() // set to false for things that are too unwieldy for surgery
return TRUE return TRUE

View File

@@ -189,7 +189,7 @@
return return
if(QDELETED(A)) if(QDELETED(A))
return return
A.flags |= HTML_USE_INITAL_ICON A.atom_flags |= ATOM_FLAG_HTML_USE_INITIAL_ICON
if((A.smoothing_flags & SMOOTH_TRUE) || (A.smoothing_flags & SMOOTH_MORE)) if((A.smoothing_flags & SMOOTH_TRUE) || (A.smoothing_flags & SMOOTH_MORE))
var/adjacencies = A.calculate_adjacencies() var/adjacencies = A.calculate_adjacencies()

View File

@@ -1146,7 +1146,7 @@ lighting determines lighting capturing (optional), suppress_errors suppreses err
if (isnull(icon_state)) if (isnull(icon_state))
icon_state = thing.icon_state icon_state = thing.icon_state
//Despite casting to atom, this code path supports mutable appearances, so let's be nice to them //Despite casting to atom, this code path supports mutable appearances, so let's be nice to them
if(isnull(icon_state) || (isatom(thing) && thing.flags & HTML_USE_INITAL_ICON)) if(isnull(icon_state) || (isatom(thing) && thing.atom_flags & ATOM_FLAG_HTML_USE_INITIAL_ICON))
icon_state = initial(thing.icon_state) icon_state = initial(thing.icon_state)
if (isnull(dir)) if (isnull(dir))
dir = initial(thing.dir) dir = initial(thing.dir)

View File

@@ -116,7 +116,7 @@ Quick adjacency (to turf):
/* /*
This checks if you there is uninterrupted airspace between that turf and this one. This checks if you there is uninterrupted airspace between that turf and this one.
This is defined as any dense ON_BORDER object, or any dense object without throwpass. This is defined as any dense ATOM_FLAG_CHECKS_BORDER object, or any dense object without throwpass.
The border_only flag allows you to not objects (for source and destination squares) The border_only flag allows you to not objects (for source and destination squares)
*/ */
/turf/proc/ClickCross(var/target_dir, var/border_only, var/target_atom = null) /turf/proc/ClickCross(var/target_dir, var/border_only, var/target_atom = null)
@@ -124,7 +124,7 @@ Quick adjacency (to turf):
if(!O.density || O == target_atom || O.throwpass) if(!O.density || O == target_atom || O.throwpass)
continue // throwpass is used for anything you can click through continue // throwpass is used for anything you can click through
if(O.flags & ON_BORDER) // windows have throwpass but are on border, check them first if(O.atom_flags & ATOM_FLAG_CHECKS_BORDER) // windows have throwpass but are on border, check them first
if(O.dir & target_dir || O.dir & (O.dir - 1)) // full tile windows are just diagonals mechanically if(O.dir & target_dir || O.dir & (O.dir - 1)) // full tile windows are just diagonals mechanically
if(istype(target_atom, /obj/structure/window)) if(istype(target_atom, /obj/structure/window))
var/obj/structure/window/W = target_atom var/obj/structure/window/W = target_atom

View File

@@ -345,7 +345,7 @@
var/dy = A.y - y var/dy = A.y - y
var/direction var/direction
if (loc == A.loc && A.flags & ON_BORDER) if (loc == A.loc && A.atom_flags & ATOM_FLAG_CHECKS_BORDER)
direction = A.dir direction = A.dir
else if (!dx && !dy) else if (!dx && !dy)
return return

View File

@@ -149,8 +149,8 @@
user.internal = null user.internal = null
/obj/screen/internals/proc/has_internals_mask(var/mob/living/carbon/human/user) /obj/screen/internals/proc/has_internals_mask(var/mob/living/carbon/human/user)
if(user.wear_mask && HAS_FLAG(user.wear_mask.item_flags, AIRTIGHT)) if(user.wear_mask && HAS_FLAG(user.wear_mask.item_flags, ITEM_FLAG_AIRTIGHT))
return TRUE return TRUE
if(user.head && HAS_FLAG(user.head.item_flags, AIRTIGHT)) if(user.head && HAS_FLAG(user.head.item_flags, ITEM_FLAG_AIRTIGHT))
return TRUE return TRUE
return FALSE return FALSE

View File

@@ -33,7 +33,7 @@ avoid code duplication. This includes items that may sometimes act as a standard
return return
/atom/movable/attackby(obj/item/W, mob/user) /atom/movable/attackby(obj/item/W, mob/user)
if(!(W.flags & NOBLUDGEON)) if(!(W.item_flags & ITEM_FLAG_NO_BLUDGEON))
visible_message("<span class='danger'>[src] has been hit by [user] with [W].</span>") visible_message("<span class='danger'>[src] has been hit by [user] with [W].</span>")
/mob/living/attackby(obj/item/I, mob/user) /mob/living/attackby(obj/item/I, mob/user)
@@ -86,7 +86,7 @@ avoid code duplication. This includes items that may sometimes act as a standard
//I would prefer to rename this attack_as_weapon(), but that would involve touching hundreds of files. //I would prefer to rename this attack_as_weapon(), but that would involve touching hundreds of files.
/obj/item/proc/attack(mob/living/M, mob/living/user, var/target_zone = BP_CHEST) /obj/item/proc/attack(mob/living/M, mob/living/user, var/target_zone = BP_CHEST)
if(flags & NOBLUDGEON) if(item_flags & ITEM_FLAG_NO_BLUDGEON)
return 0 return 0
if(M == user && user.a_intent != I_HURT) if(M == user && user.a_intent != I_HURT)

View File

@@ -63,7 +63,7 @@ SUBSYSTEM_DEF(holomap)
A = T.loc A = T.loc
Ttype = T.type Ttype = T.type
if (A.flags & HIDE_FROM_HOLOMAP) if (A.area_flags & AREA_FLAG_HIDE_FROM_HOLOMAP)
continue continue
if (rock_tcache[Ttype]) if (rock_tcache[Ttype])
continue continue

View File

@@ -8,7 +8,7 @@ SUBSYSTEM_DEF(misc_late)
/datum/controller/subsystem/misc_late/Initialize(timeofday) /datum/controller/subsystem/misc_late/Initialize(timeofday)
// Setup the teleport locs. // Setup the teleport locs.
for(var/area/AR as anything in the_station_areas) for(var/area/AR as anything in the_station_areas)
if(AR.flags & NO_GHOST_TELEPORT_ACCESS) if(AR.area_flags & AREA_FLAG_NO_GHOST_TELEPORT_ACCESS)
continue continue
var/list/area_turfs = AR.contents var/list/area_turfs = AR.contents
if (area_turfs.len) // Check the area is mapped if (area_turfs.len) // Check the area is mapped

View File

@@ -71,7 +71,7 @@ SUBSYSTEM_DEF(radiation)
continue // Radiation is not multi-z continue // Radiation is not multi-z
if(source.respect_maint) if(source.respect_maint)
var/area/A = T.loc var/area/A = T.loc
if(A.flags & RAD_SHIELDED) if(A.area_flags & AREA_FLAG_RAD_SHIELDED)
continue // In shielded area continue // In shielded area
var/dist = get_dist(source.source_turf, T) var/dist = get_dist(source.source_turf, T)

View File

@@ -166,7 +166,7 @@
else else
for(var/atom/movable/A in destturf) for(var/atom/movable/A in destturf)
if(A != teleatom && A.density && A.anchored && !istype(A, /obj/effect/portal)) if(A != teleatom && A.density && A.anchored && !istype(A, /obj/effect/portal))
if(A.flags & ON_BORDER) if(A.atom_flags & ATOM_FLAG_CHECKS_BORDER)
if(prob(10)) if(prob(10))
impediment = A impediment = A
break break

View File

@@ -12,7 +12,7 @@
density = 0 density = 0
unacidable = 1//Just to be sure. unacidable = 1//Just to be sure.
var/def_zone var/def_zone
flags = PROXMOVE movable_flags = MOVABLE_FLAG_PROXMOVE
pass_flags = PASSTABLE | PASSRAILING pass_flags = PASSTABLE | PASSRAILING
/var/list/acting_rank_prefixes = list("acting", "temporary", "interim", "provisional") /var/list/acting_rank_prefixes = list("acting", "temporary", "interim", "provisional")
@@ -47,7 +47,7 @@
throwforce = 0.0 throwforce = 0.0
throw_speed = 1 throw_speed = 1
throw_range = 20 throw_range = 20
flags = CONDUCT obj_flags = OBJ_FLAG_CONDUCTABLE
drop_sound = 'sound/items/drop/rubber.ogg' drop_sound = 'sound/items/drop/rubber.ogg'
pickup_sound = 'sound/items/pickup/rubber.ogg' pickup_sound = 'sound/items/pickup/rubber.ogg'

View File

@@ -3,7 +3,7 @@
desc = "Should anything ever go wrong..." desc = "Should anything ever go wrong..."
icon = 'icons/obj/radio.dmi' icon = 'icons/obj/radio.dmi'
icon_state = "red_phone" icon_state = "red_phone"
flags = CONDUCT obj_flags = OBJ_FLAG_CONDUCTABLE
force = 3.0 force = 3.0
throwforce = 2.0 throwforce = 2.0
throw_speed = 1 throw_speed = 1
@@ -50,7 +50,7 @@
icon = 'icons/obj/weapons.dmi' icon = 'icons/obj/weapons.dmi'
icon_state = "cane" icon_state = "cane"
item_state = "stick" item_state = "stick"
flags = CONDUCT obj_flags = OBJ_FLAG_CONDUCTABLE
force = 10 force = 10
throwforce = 7.0 throwforce = 7.0
w_class = ITEMSIZE_LARGE w_class = ITEMSIZE_LARGE
@@ -383,7 +383,7 @@
var/selfdestruct = 0.0 var/selfdestruct = 0.0
var/traitor_frequency = 0.0 var/traitor_frequency = 0.0
var/obj/item/device/radio/origradio = null var/obj/item/device/radio/origradio = null
flags = CONDUCT obj_flags = OBJ_FLAG_CONDUCTABLE
slot_flags = SLOT_BELT slot_flags = SLOT_BELT
item_state = "radio" item_state = "radio"
throwforce = 5 throwforce = 5
@@ -435,7 +435,7 @@
icon_state = "std_mod" icon_state = "std_mod"
w_class = ITEMSIZE_SMALL w_class = ITEMSIZE_SMALL
item_state = "electronic" item_state = "electronic"
flags = CONDUCT obj_flags = OBJ_FLAG_CONDUCTABLE
usesound = 'sound/items/Deconstruct.ogg' usesound = 'sound/items/Deconstruct.ogg'
var/mtype = 1 // 1=electronic 2=hardware var/mtype = 1 // 1=electronic 2=hardware

View File

@@ -9,6 +9,8 @@
/area /area
var/global/global_uid = 0 var/global/global_uid = 0
var/uid var/uid
///Bitflag (Any of `AREA_FLAG_*`). See `code\__defines\misc.dm`.
var/area_flags
var/holomap_color // Color of this area on the holomap. Must be a hex color (as string) or null. var/holomap_color // Color of this area on the holomap. Must be a hex color (as string) or null.
var/fire = null var/fire = null
var/atmosalm = 0 var/atmosalm = 0
@@ -105,10 +107,10 @@
. = ..() . = ..()
/area/proc/is_prison() /area/proc/is_prison()
return flags & PRISON return area_flags & AREA_FLAG_PRISON
/area/proc/is_no_crew_expected() /area/proc/is_no_crew_expected()
return flags & NO_CREW_EXPECTED return area_flags & AREA_FLAG_NO_CREW_EXPECTED
/area/proc/set_lightswitch(var/state) // Set lights in area. TRUE for on, FALSE for off, NULL for initial state. /area/proc/set_lightswitch(var/state) // Set lights in area. TRUE for on, FALSE for off, NULL for initial state.
if(isnull(state)) if(isnull(state))

View File

@@ -1,7 +1,7 @@
/atom /atom
layer = 2 layer = 2
var/level = 2 var/level = 2
var/flags = 0 var/atom_flags = 0
var/init_flags = 0 var/init_flags = 0
var/list/fingerprints var/list/fingerprints
var/list/fingerprintshidden var/list/fingerprintshidden
@@ -107,15 +107,15 @@
// Convenience proc to see if a container is open for chemistry handling. // Convenience proc to see if a container is open for chemistry handling.
// Returns true if open, false if closed. // Returns true if open, false if closed.
/atom/proc/is_open_container() /atom/proc/is_open_container()
return flags & OPENCONTAINER return atom_flags & ATOM_FLAG_OPEN_CONTAINER
/atom/proc/is_pour_container() /atom/proc/is_pour_container()
return flags & POURCONTAINER return atom_flags & ATOM_FLAG_POUR_CONTAINER
/atom/proc/CheckExit() /atom/proc/CheckExit()
return 1 return 1
// If you want to use this, the atom must have the PROXMOVE flag and the moving atom must also have the PROXMOVE flag currently to help with lag. -ComicIronic // If you want to use this, the atom must have the MOVABLE_FLAG_PROXMOVE flag and the moving atom must also have the MOVABLE_FLAG_PROXMOVE flag currently to help with lag. -ComicIronic
/atom/proc/HasProximity(atom/movable/AM as mob|obj) /atom/proc/HasProximity(atom/movable/AM as mob|obj)
return return
@@ -528,7 +528,7 @@
// Returns 1 if made bloody, returns 0 otherwise. // Returns 1 if made bloody, returns 0 otherwise.
/atom/proc/add_blood(mob/living/carbon/human/M) /atom/proc/add_blood(mob/living/carbon/human/M)
if(flags & NOBLOODY) if(atom_flags & ATOM_FLAG_NO_BLOOD)
return 0 return 0
if(!blood_DNA || !istype(blood_DNA, /list)) // If our list of DNA doesn't exist yet (or isn't a list), initialise it. if(!blood_DNA || !istype(blood_DNA, /list)) // If our list of DNA doesn't exist yet (or isn't a list), initialise it.

View File

@@ -2,7 +2,7 @@
name = "pinpointer" name = "pinpointer"
icon = 'icons/obj/device.dmi' icon = 'icons/obj/device.dmi'
icon_state = "pinoff" icon_state = "pinoff"
flags = CONDUCT obj_flags = OBJ_FLAG_CONDUCTABLE
slot_flags = SLOT_BELT slot_flags = SLOT_BELT
w_class = ITEMSIZE_SMALL w_class = ITEMSIZE_SMALL
item_state = "electronic" item_state = "electronic"

View File

@@ -8,7 +8,7 @@
/obj/item/clothing/shoes/combat/speed /obj/item/clothing/shoes/combat/speed
name = "boots of speed" name = "boots of speed"
desc = "The latest in sure footing technology." desc = "The latest in sure footing technology."
item_flags = NOSLIP item_flags = ITEM_FLAG_NO_SLIP
siemens_coefficient = 0.6 siemens_coefficient = 0.6
slowdown = -1 slowdown = -1
armor = null armor = null

View File

@@ -33,7 +33,7 @@
) )
throwforce = 0 throwforce = 0
force = 0 force = 0
flags = NOBLUDGEON item_flags = ITEM_FLAG_NO_BLUDGEON
var/mob/living/carbon/human/owner var/mob/living/carbon/human/owner
var/obj/item/technomancer_core/core var/obj/item/technomancer_core/core
var/cast_methods = null // Controls how the spell is casted. var/cast_methods = null // Controls how the spell is casted.

View File

@@ -47,7 +47,7 @@
//IPCs leak oil //IPCs leak oil
to_chat(src, SPAN_WARNING("[T] is not a creature you can drain useful blood from.")) to_chat(src, SPAN_WARNING("[T] is not a creature you can drain useful blood from."))
return return
if(T.head && (T.head.item_flags & AIRTIGHT)) if(T.head && (T.head.item_flags & ITEM_FLAG_AIRTIGHT))
to_chat(src, SPAN_WARNING("[T]'s headgear is blocking the way to the neck.")) to_chat(src, SPAN_WARNING("[T]'s headgear is blocking the way to the neck."))
return return
var/obj/item/blocked = check_mouth_coverage() var/obj/item/blocked = check_mouth_coverage()

View File

@@ -10,8 +10,7 @@
icon_state = "yellow" icon_state = "yellow"
density = 1 density = 1
var/health = 100.0 var/health = 100.0
flags = CONDUCT obj_flags = OBJ_FLAG_SIGNALER | OBJ_FLAG_CONDUCTABLE
obj_flags = OBJ_FLAG_SIGNALER
w_class = ITEMSIZE_HUGE w_class = ITEMSIZE_HUGE
var/valve_open = 0 var/valve_open = 0
@@ -354,7 +353,7 @@ update_flag
if(istype(W, /obj/item/mecha_equipment/clamp)) if(istype(W, /obj/item/mecha_equipment/clamp))
return return
if(!W.iswrench() && !is_type_in_list(W, list(/obj/item/tank, /obj/item/device/analyzer, /obj/item/modular_computer)) && !issignaler(W) && !(W.iswirecutter() && signaler)) if(!W.iswrench() && !is_type_in_list(W, list(/obj/item/tank, /obj/item/device/analyzer, /obj/item/modular_computer)) && !issignaler(W) && !(W.iswirecutter() && signaler))
if(W.flags & NOBLUDGEON) if(W.item_flags & ITEM_FLAG_NO_BLUDGEON)
return TRUE return TRUE
visible_message(SPAN_WARNING("\The [user] hits \the [src] with \the [W]!"), SPAN_NOTICE("You hit \the [src] with \the [W].")) visible_message(SPAN_WARNING("\The [user] hits \the [src] with \the [W]!"), SPAN_NOTICE("You hit \the [src] with \the [W]."))
user.do_attack_animation(src, W) user.do_attack_animation(src, W)

View File

@@ -201,7 +201,7 @@
return 1 return 1
for(var/obj/O in B) for(var/obj/O in B)
if(O.density && !istype(O, /obj/machinery/door) && !(O.flags & ON_BORDER)) if(O.density && !istype(O, /obj/machinery/door) && !(O.atom_flags & ATOM_FLAG_CHECKS_BORDER))
return 1 return 1
return 0 return 0

View File

@@ -3,7 +3,7 @@
var/detectTime = 0 var/detectTime = 0
var/area/ai_monitored/area_motion = null var/area/ai_monitored/area_motion = null
var/alarm_delay = 100 // Don't forget, there's another 10 seconds in queueAlarm() var/alarm_delay = 100 // Don't forget, there's another 10 seconds in queueAlarm()
flags = PROXMOVE movable_flags = MOVABLE_FLAG_PROXMOVE
/obj/machinery/camera/internal_process() /obj/machinery/camera/internal_process()
// motion camera event loop // motion camera event loop

View File

@@ -11,7 +11,7 @@
maxhealth = 150 //If you change this, consiter changing ../door/window/brigdoor/ health at the bottom of this .dm file maxhealth = 150 //If you change this, consiter changing ../door/window/brigdoor/ health at the bottom of this .dm file
health = 150 health = 150
visible = 0.0 visible = 0.0
flags = ON_BORDER atom_flags = ATOM_FLAG_CHECKS_BORDER
opacity = 0 opacity = 0
var/obj/item/airlock_electronics/electronics = null var/obj/item/airlock_electronics/electronics = null
explosion_resistance = 5 explosion_resistance = 5

View File

@@ -15,7 +15,7 @@
var/base_state = "mflash" var/base_state = "mflash"
anchored = 1 anchored = 1
idle_power_usage = 2 idle_power_usage = 2
flags = PROXMOVE movable_flags = MOVABLE_FLAG_PROXMOVE
var/_wifi_id var/_wifi_id
var/datum/wifi/receiver/button/flasher/wifi_receiver var/datum/wifi/receiver/button/flasher/wifi_receiver

View File

@@ -3,7 +3,7 @@
desc = "Used for building machines." desc = "Used for building machines."
icon = 'icons/obj/monitors.dmi' icon = 'icons/obj/monitors.dmi'
icon_state = "fire_bitem" icon_state = "fire_bitem"
flags = CONDUCT obj_flags = OBJ_FLAG_CONDUCTABLE
var/build_machine_type var/build_machine_type
var/refund_amt = 2 var/refund_amt = 2
var/refund_type = /obj/item/stack/material/steel var/refund_type = /obj/item/stack/material/steel

View File

@@ -80,7 +80,7 @@
/obj/machinery/iv_drip/Crossed(var/mob/H) /obj/machinery/iv_drip/Crossed(var/mob/H)
if(ishuman(H)) if(ishuman(H))
var/mob/living/carbon/human/M = H var/mob/living/carbon/human/M = H
if(M.shoes?.item_flags & LIGHTSTEP) if(M.shoes?.item_flags & ITEM_FLAG_LIGHT_STEP)
return return
if(M.incapacitated()) if(M.incapacitated())
return return

View File

@@ -169,7 +169,7 @@
center = locate(x+center_x, y+center_y, z) center = locate(x+center_x, y+center_y, z)
if(center) if(center)
for(var/obj/M in orange(magnetic_field, center)) for(var/obj/M in orange(magnetic_field, center))
if(!M.anchored && (M.flags & CONDUCT)) if(!M.anchored && (M.obj_flags & OBJ_FLAG_CONDUCTABLE))
step_towards(M, center) step_towards(M, center)
for(var/mob/living/silicon/S in orange(magnetic_field, center)) for(var/mob/living/silicon/S in orange(magnetic_field, center))

View File

@@ -3,7 +3,7 @@
desc = "Used for building machines." desc = "Used for building machines."
icon = 'icons/obj/monitors.dmi' icon = 'icons/obj/monitors.dmi'
icon_state = "fire_bitem" icon_state = "fire_bitem"
flags = CONDUCT obj_flags = OBJ_FLAG_CONDUCTABLE
var/build_machine_type var/build_machine_type
var/refund_amt = 2 var/refund_amt = 2
var/refund_type = /obj/item/stack/material/steel var/refund_type = /obj/item/stack/material/steel

View File

@@ -96,7 +96,7 @@
if(perp.shoes && !perp.buckled_to)//Adding blood to shoes if(perp.shoes && !perp.buckled_to)//Adding blood to shoes
var/obj/item/clothing/shoes/S = perp.shoes var/obj/item/clothing/shoes/S = perp.shoes
if(istype(S)) if(istype(S))
if(S.item_flags & LIGHTSTEP) if(S.item_flags & ITEM_FLAG_LIGHT_STEP)
return return
S.blood_color = basecolor S.blood_color = basecolor
S.track_footprint = max(amount, S.track_footprint) S.track_footprint = max(amount, S.track_footprint)

View File

@@ -128,11 +128,11 @@ steam.start() -- spawns the effect
if (istype(M)) if (istype(M))
return 0 return 0
if (M.internal != null) if (M.internal != null)
if(M.wear_mask && (M.wear_mask.item_flags & AIRTIGHT)) if(M.wear_mask && (M.wear_mask.item_flags & ITEM_FLAG_AIRTIGHT))
return 0 return 0
if(istype(M,/mob/living/carbon/human)) if(istype(M,/mob/living/carbon/human))
var/mob/living/carbon/human/H = M var/mob/living/carbon/human/H = M
if(H.head && (H.head.item_flags & AIRTIGHT)) if(H.head && (H.head.item_flags & ITEM_FLAG_AIRTIGHT))
return 0 return 0
return 0 return 0
return 1 return 1

View File

@@ -234,7 +234,7 @@
if(armor[type]) if(armor[type])
AddComponent(/datum/component/armor, armor) AddComponent(/datum/component/armor, armor)
break break
if(flags & HELDMAPTEXT) if(item_flags & ITEM_FLAG_HELD_MAP_TEXT)
set_initial_maptext() set_initial_maptext()
check_maptext() check_maptext()
@@ -520,7 +520,7 @@
/obj/item/proc/pickup(mob/user) /obj/item/proc/pickup(mob/user)
pixel_x = 0 pixel_x = 0
pixel_y = 0 pixel_y = 0
if(flags & HELDMAPTEXT) if(item_flags & ITEM_FLAG_HELD_MAP_TEXT)
addtimer(CALLBACK(src, PROC_REF(check_maptext)), 1) // invoke async does not work here addtimer(CALLBACK(src, PROC_REF(check_maptext)), 1) // invoke async does not work here
do_pickup_animation(user) do_pickup_animation(user)
@@ -710,7 +710,7 @@ var/list/global/slot_flags_enumeration = list(
// override for give shenanigans // override for give shenanigans
/obj/item/proc/on_give(var/mob/giver, var/mob/receiver) /obj/item/proc/on_give(var/mob/giver, var/mob/receiver)
if(flags & HELDMAPTEXT) if(item_flags & ITEM_FLAG_HELD_MAP_TEXT)
check_maptext() check_maptext()
//This proc is executed when someone clicks the on-screen UI button. To make the UI button show, set the 'icon_action_button' to the icon_state of the image of the button in screen1_action.dmi //This proc is executed when someone clicks the on-screen UI button. To make the UI button show, set the 'icon_action_button' to the icon_state of the image of the button in screen1_action.dmi
@@ -784,7 +784,7 @@ var/list/global/slot_flags_enumeration = list(
M.eye_blurry += rand(3,4) M.eye_blurry += rand(3,4)
/obj/item/proc/protects_eyestab(var/obj/stab_item, var/stabbed = FALSE) // if stabbed is set to true if we're being stabbed and not just checking /obj/item/proc/protects_eyestab(var/obj/stab_item, var/stabbed = FALSE) // if stabbed is set to true if we're being stabbed and not just checking
if((item_flags & THICKMATERIAL) && (body_parts_covered & EYES)) if((item_flags & ITEM_FLAG_THICK_MATERIAL) && (body_parts_covered & EYES))
return TRUE return TRUE
return FALSE return FALSE
@@ -1177,12 +1177,12 @@ modules/mob/living/carbon/human/life.dm if you die, you will be zoomed out.
/obj/item/throw_at() /obj/item/throw_at()
..() ..()
if(flags & HELDMAPTEXT) if(item_flags & ITEM_FLAG_HELD_MAP_TEXT)
check_maptext() check_maptext()
/obj/item/dropped(var/mob/user) /obj/item/dropped(var/mob/user)
..() ..()
if(flags & HELDMAPTEXT) if(item_flags & ITEM_FLAG_HELD_MAP_TEXT)
check_maptext() check_maptext()
// used to check whether the item is capable of popping things like balloons, inflatable barriers, or cutting police tape. // used to check whether the item is capable of popping things like balloons, inflatable barriers, or cutting police tape.

View File

@@ -5,7 +5,7 @@
desc = "Used for repairing or building APCs" desc = "Used for repairing or building APCs"
icon = 'icons/obj/apc_repair.dmi' icon = 'icons/obj/apc_repair.dmi'
icon_state = "apc_frame" icon_state = "apc_frame"
flags = CONDUCT obj_flags = OBJ_FLAG_CONDUCTABLE
/obj/item/frame/apc/attackby(obj/item/W as obj, mob/user as mob) /obj/item/frame/apc/attackby(obj/item/W as obj, mob/user as mob)
if (W.iswrench()) if (W.iswrench())

View File

@@ -47,7 +47,7 @@
starts_with = list(/obj/item/reagent_containers/pill/skrell_nootropic = 7) starts_with = list(/obj/item/reagent_containers/pill/skrell_nootropic = 7)
/obj/item/reagent_containers/glass/beaker/vial/random /obj/item/reagent_containers/glass/beaker/vial/random
flags = 0 atom_flags = 0
var/list/random_reagent_list = list(list(/singleton/reagent/water = 15) = 1, list(/singleton/reagent/spacecleaner = 15) = 1) var/list/random_reagent_list = list(list(/singleton/reagent/water = 15) = 1, list(/singleton/reagent/spacecleaner = 15) = 1)
/obj/item/reagent_containers/glass/beaker/vial/random/toxin /obj/item/reagent_containers/glass/beaker/vial/random/toxin
@@ -65,7 +65,7 @@
/obj/item/reagent_containers/glass/beaker/vial/random/Initialize() /obj/item/reagent_containers/glass/beaker/vial/random/Initialize()
. = ..() . = ..()
if(is_open_container()) if(is_open_container())
flags ^= OPENCONTAINER atom_flags ^= ATOM_FLAG_OPEN_CONTAINER
var/list/picked_reagents = pickweight(random_reagent_list) var/list/picked_reagents = pickweight(random_reagent_list)
for(var/reagent in picked_reagents) for(var/reagent in picked_reagents)
@@ -81,34 +81,34 @@
/obj/item/reagent_containers/glass/beaker/vial/venenum /obj/item/reagent_containers/glass/beaker/vial/venenum
flags = 0 atom_flags = 0
/obj/item/reagent_containers/glass/beaker/vial/venenum/Initialize() /obj/item/reagent_containers/glass/beaker/vial/venenum/Initialize()
. = ..() . = ..()
if(is_open_container()) if(is_open_container())
flags ^= OPENCONTAINER atom_flags ^= ATOM_FLAG_OPEN_CONTAINER
reagents.add_reagent(/singleton/reagent/venenum,volume) reagents.add_reagent(/singleton/reagent/venenum,volume)
desc = "Contains venenum." desc = "Contains venenum."
update_icon() update_icon()
/obj/item/reagent_containers/glass/beaker/vial/nerveworm_eggs /obj/item/reagent_containers/glass/beaker/vial/nerveworm_eggs
flags = 0 atom_flags = 0
/obj/item/reagent_containers/glass/beaker/vial/nerveworm_eggs/Initialize() /obj/item/reagent_containers/glass/beaker/vial/nerveworm_eggs/Initialize()
. = ..() . = ..()
if(is_open_container()) if(is_open_container())
flags ^= OPENCONTAINER atom_flags ^= ATOM_FLAG_OPEN_CONTAINER
reagents.add_reagent(/singleton/reagent/toxin/nerveworm_eggs, 2) reagents.add_reagent(/singleton/reagent/toxin/nerveworm_eggs, 2)
desc = "<b>BIOHAZARDOUS! - Nerve Fluke eggs.</b> Purchased from <i>SciSupply Eridani</i>, recently incorporated into <i>Zeng-Hu Pharmaceuticals' Keiretsu</i>!" desc = "<b>BIOHAZARDOUS! - Nerve Fluke eggs.</b> Purchased from <i>SciSupply Eridani</i>, recently incorporated into <i>Zeng-Hu Pharmaceuticals' Keiretsu</i>!"
update_icon() update_icon()
/obj/item/reagent_containers/glass/beaker/vial/heartworm_eggs /obj/item/reagent_containers/glass/beaker/vial/heartworm_eggs
flags = 0 atom_flags = 0
/obj/item/reagent_containers/glass/beaker/vial/heartworm_eggs/Initialize() /obj/item/reagent_containers/glass/beaker/vial/heartworm_eggs/Initialize()
. = ..() . = ..()
if(is_open_container()) if(is_open_container())
flags ^= OPENCONTAINER atom_flags ^= ATOM_FLAG_OPEN_CONTAINER
reagents.add_reagent(/singleton/reagent/toxin/heartworm_eggs, 2) reagents.add_reagent(/singleton/reagent/toxin/heartworm_eggs, 2)
desc = "<b>BIOHAZARDOUS! - Heart Fluke eggs.</b> Purchased from <i>SciSupply Eridani</i>, recently incorporated into <i>Zeng-Hu Pharmaceuticals' Keiretsu</i>!" desc = "<b>BIOHAZARDOUS! - Heart Fluke eggs.</b> Purchased from <i>SciSupply Eridani</i>, recently incorporated into <i>Zeng-Hu Pharmaceuticals' Keiretsu</i>!"
update_icon() update_icon()

View File

@@ -324,7 +324,7 @@
/obj/item/shockpaddles/proc/check_contact(mob/living/carbon/human/H) /obj/item/shockpaddles/proc/check_contact(mob/living/carbon/human/H)
if(!combat) if(!combat)
for(var/obj/item/clothing/cloth in list(H.wear_suit, H.w_uniform)) for(var/obj/item/clothing/cloth in list(H.wear_suit, H.w_uniform))
if((cloth.body_parts_covered & UPPER_TORSO) && (cloth.item_flags & THICKMATERIAL)) if((cloth.body_parts_covered & UPPER_TORSO) && (cloth.item_flags & ITEM_FLAG_THICK_MATERIAL))
return FALSE return FALSE
return TRUE return TRUE

View File

@@ -4,7 +4,7 @@
desc = "A pair of binoculars." desc = "A pair of binoculars."
icon_state = "binoculars" icon_state = "binoculars"
flags = CONDUCT obj_flags = OBJ_FLAG_CONDUCTABLE
force = 5.0 force = 5.0
w_class = ITEMSIZE_SMALL w_class = ITEMSIZE_SMALL
throwforce = 5.0 throwforce = 5.0

View File

@@ -3,7 +3,7 @@
desc = "A strange device." desc = "A strange device."
desc_antag = "This device can let you disguise as common objects. Click on an object with this in your active hand to scan it, then activate it to use it in your hand." desc_antag = "This device can let you disguise as common objects. Click on an object with this in your active hand to scan it, then activate it to use it in your hand."
icon_state = "shield0" icon_state = "shield0"
flags = CONDUCT obj_flags = OBJ_FLAG_CONDUCTABLE
slot_flags = SLOT_BELT slot_flags = SLOT_BELT
item_state = "electronic" item_state = "electronic"
throwforce = 5 throwforce = 5

View File

@@ -4,7 +4,7 @@
desc = "Used to debug electronic equipment." desc = "Used to debug electronic equipment."
icon = 'icons/obj/hacktool.dmi' icon = 'icons/obj/hacktool.dmi'
icon_state = "hacktool-g" icon_state = "hacktool-g"
flags = CONDUCT obj_flags = OBJ_FLAG_CONDUCTABLE
force = 5 force = 5
w_class = ITEMSIZE_SMALL w_class = ITEMSIZE_SMALL
throwforce = 5 throwforce = 5

View File

@@ -8,7 +8,7 @@
w_class = ITEMSIZE_SMALL w_class = ITEMSIZE_SMALL
throw_speed = 4 throw_speed = 4
throw_range = 10 throw_range = 10
flags = CONDUCT obj_flags = OBJ_FLAG_CONDUCTABLE
origin_tech = list(TECH_MAGNET = 2, TECH_COMBAT = 1) origin_tech = list(TECH_MAGNET = 2, TECH_COMBAT = 1)
var/times_used = 0 //Number of times it's been used. var/times_used = 0 //Number of times it's been used.

View File

@@ -8,7 +8,7 @@
w_class = ITEMSIZE_SMALL w_class = ITEMSIZE_SMALL
throw_speed = 4 throw_speed = 4
throw_range = 10 throw_range = 10
flags = CONDUCT obj_flags = OBJ_FLAG_CONDUCTABLE
var/list/storedwarrant = list() //All the warrants currently stored var/list/storedwarrant = list() //All the warrants currently stored
var/activename = null var/activename = null
var/activecharges = null var/activecharges = null

View File

@@ -10,7 +10,7 @@
icon_state = "flashlight" icon_state = "flashlight"
item_state = "flashlight" item_state = "flashlight"
w_class = ITEMSIZE_SMALL w_class = ITEMSIZE_SMALL
flags = CONDUCT obj_flags = OBJ_FLAG_CONDUCTABLE
slot_flags = SLOT_BELT slot_flags = SLOT_BELT
light_color = LIGHT_COLOR_HALOGEN light_color = LIGHT_COLOR_HALOGEN
uv_intensity = 50 uv_intensity = 50
@@ -304,7 +304,7 @@
item_state = "pen" item_state = "pen"
drop_sound = 'sound/items/drop/accessory.ogg' drop_sound = 'sound/items/drop/accessory.ogg'
pickup_sound = 'sound/items/pickup/accessory.ogg' pickup_sound = 'sound/items/pickup/accessory.ogg'
flags = CONDUCT obj_flags = OBJ_FLAG_CONDUCTABLE
slot_flags = SLOT_EARS slot_flags = SLOT_EARS
brightness_on = 2 brightness_on = 2
w_class = ITEMSIZE_TINY w_class = ITEMSIZE_TINY
@@ -315,7 +315,7 @@
desc = "A miniature lamp, that might be used by small robots." desc = "A miniature lamp, that might be used by small robots."
icon_state = "penlight" icon_state = "penlight"
item_state = "" item_state = ""
flags = CONDUCT obj_flags = OBJ_FLAG_CONDUCTABLE
brightness_on = 2 brightness_on = 2
efficiency_modifier = 2 efficiency_modifier = 2
w_class = ITEMSIZE_TINY w_class = ITEMSIZE_TINY
@@ -375,7 +375,7 @@
desc = "Some nifty lamps drawing from internal battery sources to produce a light, though a dim one." desc = "Some nifty lamps drawing from internal battery sources to produce a light, though a dim one."
icon_state = "headlights" icon_state = "headlights"
item_state = "headlights" item_state = "headlights"
flags = CONDUCT obj_flags = OBJ_FLAG_CONDUCTABLE
slot_flags = SLOT_HEAD | SLOT_EARS slot_flags = SLOT_HEAD | SLOT_EARS
brightness_on = 2 brightness_on = 2
w_class = ITEMSIZE_TINY w_class = ITEMSIZE_TINY

View File

@@ -9,7 +9,7 @@
brightness_on = 4 brightness_on = 4
flashlight_power = 1.0 flashlight_power = 1.0
w_class = ITEMSIZE_HUGE w_class = ITEMSIZE_HUGE
flags = CONDUCT obj_flags = OBJ_FLAG_CONDUCTABLE
uv_intensity = 100 uv_intensity = 100
power_use = FALSE power_use = FALSE
on = TRUE on = TRUE

View File

@@ -7,7 +7,7 @@
icon_state = "locator" icon_state = "locator"
// Copied from debugger.dm // Copied from debugger.dm
flags = CONDUCT obj_flags = OBJ_FLAG_CONDUCTABLE
force = 5.0 force = 5.0
w_class = ITEMSIZE_SMALL w_class = ITEMSIZE_SMALL
throwforce = 5.0 throwforce = 5.0

View File

@@ -44,7 +44,7 @@
icon_state = "lightreplacer" icon_state = "lightreplacer"
item_state = "lightreplacer" item_state = "lightreplacer"
flags = CONDUCT obj_flags = OBJ_FLAG_CONDUCTABLE
slot_flags = SLOT_BELT slot_flags = SLOT_BELT
origin_tech = list(TECH_MAGNET = 3, TECH_MATERIAL = 2) origin_tech = list(TECH_MAGNET = 3, TECH_MATERIAL = 2)

View File

@@ -8,7 +8,7 @@
item_state = "megaphone" item_state = "megaphone"
contained_sprite = TRUE contained_sprite = TRUE
w_class = ITEMSIZE_SMALL w_class = ITEMSIZE_SMALL
flags = CONDUCT obj_flags = OBJ_FLAG_CONDUCTABLE
var/spamcheck = 0 var/spamcheck = 0
var/emagged = 0 var/emagged = 0

View File

@@ -12,7 +12,7 @@
item_state = "multitool" item_state = "multitool"
item_icons = null item_icons = null
contained_sprite = TRUE contained_sprite = TRUE
flags = CONDUCT obj_flags = OBJ_FLAG_CONDUCTABLE
force = 5.0 force = 5.0
w_class = ITEMSIZE_SMALL w_class = ITEMSIZE_SMALL
throwforce = 5.0 throwforce = 5.0

View File

@@ -5,7 +5,7 @@
icon_state = "pin_extractor" icon_state = "pin_extractor"
item_state = "pin_extractor" item_state = "pin_extractor"
w_class = ITEMSIZE_SMALL w_class = ITEMSIZE_SMALL
flags = CONDUCT obj_flags = OBJ_FLAG_CONDUCTABLE
action_button_name = "Toggle extractor" action_button_name = "Toggle extractor"
var/on = 0 var/on = 0
var/activation_sound = 'sound/effects/lighton.ogg' var/activation_sound = 'sound/effects/lighton.ogg'

View File

@@ -6,7 +6,7 @@
icon_state = "powersink0" icon_state = "powersink0"
item_state = "powersink0" item_state = "powersink0"
w_class = ITEMSIZE_LARGE w_class = ITEMSIZE_LARGE
flags = CONDUCT obj_flags = OBJ_FLAG_CONDUCTABLE
throwforce = 5 throwforce = 5
throw_speed = 1 throw_speed = 1
throw_range = 2 throw_range = 2

View File

@@ -3,7 +3,7 @@
desc = "Dance my monkeys! DANCE!!!" desc = "Dance my monkeys! DANCE!!!"
icon_state = "electropack0" icon_state = "electropack0"
item_state = "electropack" item_state = "electropack"
flags = CONDUCT obj_flags = OBJ_FLAG_CONDUCTABLE
slot_flags = SLOT_BACK slot_flags = SLOT_BACK
w_class = ITEMSIZE_HUGE w_class = ITEMSIZE_HUGE

View File

@@ -202,7 +202,7 @@
desc_info = "This radio doubles as a pair of earmuffs by providing sound protection." desc_info = "This radio doubles as a pair of earmuffs by providing sound protection."
icon_state = "earset" icon_state = "earset"
item_state = "earset" item_state = "earset"
item_flags = SOUNDPROTECTION item_flags = ITEM_FLAG_SOUND_PROTECTION
slot_flags = SLOT_EARS | SLOT_TWOEARS slot_flags = SLOT_EARS | SLOT_TWOEARS
/obj/item/device/radio/headset/wrist /obj/item/device/radio/headset/wrist
@@ -652,7 +652,7 @@
icon = 'icons/obj/clothing/ears/earmuffs.dmi' icon = 'icons/obj/clothing/ears/earmuffs.dmi'
icon_state = "earmuffs" icon_state = "earmuffs"
item_state = "earmuffs" item_state = "earmuffs"
item_flags = SOUNDPROTECTION item_flags = ITEM_FLAG_SOUND_PROTECTION
slot_flags = SLOT_EARS | SLOT_TWOEARS slot_flags = SLOT_EARS | SLOT_TWOEARS
/obj/item/device/radio/headset/syndicate /obj/item/device/radio/headset/syndicate

View File

@@ -27,8 +27,8 @@ pixel_x = 8;
appearance_flags = TILE_BOUND // prevents people from viewing the overlay through a wall appearance_flags = TILE_BOUND // prevents people from viewing the overlay through a wall
w_class = ITEMSIZE_LARGE w_class = ITEMSIZE_LARGE
canhear_range = 2 canhear_range = 2
flags = CONDUCT | NOBLOODY atom_flags = ATOM_FLAG_NO_BLOOD
obj_flags = OBJ_FLAG_MOVES_UNSUPPORTED obj_flags = OBJ_FLAG_MOVES_UNSUPPORTED | OBJ_FLAG_CONDUCTABLE
var/number = 0 var/number = 0
var/obj/machinery/abstract/intercom_listener/power_interface var/obj/machinery/abstract/intercom_listener/power_interface
var/global/list/screen_overlays var/global/list/screen_overlays

View File

@@ -42,7 +42,7 @@ var/global/list/default_interrogation_channels = list(
icon = 'icons/obj/radio.dmi' icon = 'icons/obj/radio.dmi'
icon_state = "walkietalkie" icon_state = "walkietalkie"
item_state = "radio" item_state = "radio"
flags = CONDUCT obj_flags = OBJ_FLAG_CONDUCTABLE
slot_flags = SLOT_BELT slot_flags = SLOT_BELT
throw_speed = 2 throw_speed = 2
throw_range = 9 throw_range = 9

View File

@@ -12,7 +12,7 @@ BREATH ANALYZER
desc = "A hand-held body scanner able to distinguish vital signs of the subject." desc = "A hand-held body scanner able to distinguish vital signs of the subject."
icon_state = "health" icon_state = "health"
item_state = "healthanalyzer" item_state = "healthanalyzer"
flags = CONDUCT obj_flags = OBJ_FLAG_CONDUCTABLE
slot_flags = SLOT_BELT slot_flags = SLOT_BELT
throwforce = 3 throwforce = 3
w_class = ITEMSIZE_SMALL w_class = ITEMSIZE_SMALL
@@ -373,7 +373,7 @@ BREATH ANALYZER
item_state = "analyzer" item_state = "analyzer"
contained_sprite = TRUE contained_sprite = TRUE
w_class = ITEMSIZE_SMALL w_class = ITEMSIZE_SMALL
flags = CONDUCT obj_flags = OBJ_FLAG_CONDUCTABLE
slot_flags = SLOT_BELT slot_flags = SLOT_BELT
throwforce = 5 throwforce = 5
throw_speed = 4 throw_speed = 4
@@ -407,7 +407,8 @@ BREATH ANALYZER
icon_state = "spectrometer" icon_state = "spectrometer"
item_state = "analyzer" item_state = "analyzer"
w_class = ITEMSIZE_SMALL w_class = ITEMSIZE_SMALL
flags = CONDUCT | OPENCONTAINER atom_flags = ATOM_FLAG_OPEN_CONTAINER
obj_flags = OBJ_FLAG_CONDUCTABLE
slot_flags = SLOT_BELT slot_flags = SLOT_BELT
throwforce = 5 throwforce = 5
throw_speed = 4 throw_speed = 4
@@ -480,7 +481,7 @@ BREATH ANALYZER
icon_state = "reagent_scanner" icon_state = "reagent_scanner"
item_state = "analyzer" item_state = "analyzer"
w_class = ITEMSIZE_SMALL w_class = ITEMSIZE_SMALL
flags = CONDUCT obj_flags = OBJ_FLAG_CONDUCTABLE
slot_flags = SLOT_BELT slot_flags = SLOT_BELT
throwforce = 5 throwforce = 5
throw_speed = 4 throw_speed = 4
@@ -521,7 +522,7 @@ BREATH ANALYZER
item_state = "analyzer" item_state = "analyzer"
origin_tech = list(TECH_BIO = 1) origin_tech = list(TECH_BIO = 1)
w_class = ITEMSIZE_SMALL w_class = ITEMSIZE_SMALL
flags = CONDUCT obj_flags = OBJ_FLAG_CONDUCTABLE
throwforce = 0 throwforce = 0
throw_speed = 3 throw_speed = 3
throw_range = 7 throw_range = 7
@@ -562,7 +563,7 @@ BREATH ANALYZER
name = "price scanner" name = "price scanner"
desc = "Using an up-to-date database of various costs and prices, this device estimates the market price of an item up to 0.001% accuracy." desc = "Using an up-to-date database of various costs and prices, this device estimates the market price of an item up to 0.001% accuracy."
icon_state = "price_scanner" icon_state = "price_scanner"
flags = NOBLUDGEON item_flags = ITEM_FLAG_NO_BLUDGEON
slot_flags = SLOT_BELT slot_flags = SLOT_BELT
w_class = ITEMSIZE_SMALL w_class = ITEMSIZE_SMALL
throwforce = 0 throwforce = 0
@@ -584,7 +585,7 @@ BREATH ANALYZER
icon_state = "breath_analyzer" icon_state = "breath_analyzer"
item_state = "analyzer" item_state = "analyzer"
w_class = ITEMSIZE_SMALL w_class = ITEMSIZE_SMALL
flags = CONDUCT obj_flags = OBJ_FLAG_CONDUCTABLE
slot_flags = SLOT_BELT slot_flags = SLOT_BELT
throwforce = 0 throwforce = 0
throw_speed = 3 throw_speed = 3

View File

@@ -6,7 +6,7 @@
item_state = "nothing" item_state = "nothing"
layer = TURF_LAYER+0.2 layer = TURF_LAYER+0.2
flags = CONDUCT obj_flags = OBJ_FLAG_CONDUCTABLE
force = 5.0 force = 5.0
w_class = ITEMSIZE_TINY w_class = ITEMSIZE_TINY
slot_flags = SLOT_EARS slot_flags = SLOT_EARS

View File

@@ -10,7 +10,7 @@
slot_flags = SLOT_BACK //you can carry it on your back if you want, but it won't do anything unless attached to suit storage slot_flags = SLOT_BACK //you can carry it on your back if you want, but it won't do anything unless attached to suit storage
//copied from tank.dm //copied from tank.dm
flags = CONDUCT obj_flags = OBJ_FLAG_CONDUCTABLE
force = 5.0 force = 5.0
throwforce = 10.0 throwforce = 10.0
throw_speed = 1 throw_speed = 1

View File

@@ -16,7 +16,7 @@
var/list/timestamp = list() var/list/timestamp = list()
var/can_print = TRUE var/can_print = TRUE
var/obj/item/computer_hardware/hard_drive/portable/portable_drive var/obj/item/computer_hardware/hard_drive/portable/portable_drive
flags = CONDUCT obj_flags = OBJ_FLAG_CONDUCTABLE
throwforce = 2 throwforce = 2
throw_speed = 4 throw_speed = 4
throw_range = 20 throw_range = 20

View File

@@ -22,7 +22,7 @@ effective or pretty fucking useless.
w_class = ITEMSIZE_TINY w_class = ITEMSIZE_TINY
throw_speed = 4 throw_speed = 4
throw_range = 10 throw_range = 10
flags = CONDUCT obj_flags = OBJ_FLAG_CONDUCTABLE
item_state = "electronic" item_state = "electronic"
origin_tech = list(TECH_MAGNET = 3, TECH_COMBAT = 3, TECH_ILLEGAL = 3) origin_tech = list(TECH_MAGNET = 3, TECH_COMBAT = 3, TECH_ILLEGAL = 3)

View File

@@ -9,7 +9,7 @@
var/mob/attacher = null var/mob/attacher = null
var/valve_open = 0 var/valve_open = 0
var/toggle = 1 var/toggle = 1
flags = PROXMOVE movable_flags = MOVABLE_FLAG_PROXMOVE
/obj/item/device/transfer_valve/proc/process_activation(var/obj/item/device/D) /obj/item/device/transfer_valve/proc/process_activation(var/obj/item/device/D)

View File

@@ -358,7 +358,7 @@ Then check if it's true, if true return. This will stop the normal menu appearin
desc = "A small device used for access restricted sites in the remote corners of the Extranet." desc = "A small device used for access restricted sites in the remote corners of the Extranet."
icon = 'icons/obj/radio.dmi' icon = 'icons/obj/radio.dmi'
icon_state = "radio" icon_state = "radio"
flags = CONDUCT obj_flags = OBJ_FLAG_CONDUCTABLE
w_class = ITEMSIZE_SMALL w_class = ITEMSIZE_SMALL
/obj/item/device/contract_uplink/Initialize(var/mapload, var/mind) /obj/item/device/contract_uplink/Initialize(var/mapload, var/mind)
@@ -403,7 +403,7 @@ Then check if it's true, if true return. This will stop the normal menu appearin
desc_antag = "This is hidden uplink! Use it in-hand to access the uplink interface and spend telecrystals to beam in items. Make sure to do it in private, it could look suspicious!" desc_antag = "This is hidden uplink! Use it in-hand to access the uplink interface and spend telecrystals to beam in items. Make sure to do it in private, it could look suspicious!"
icon = 'icons/obj/radio.dmi' icon = 'icons/obj/radio.dmi'
icon_state = "radio" icon_state = "radio"
flags = CONDUCT obj_flags = OBJ_FLAG_CONDUCTABLE
w_class = ITEMSIZE_SMALL w_class = ITEMSIZE_SMALL
///Amount of starting telecrystals. Defaults to default amount if not set. ///Amount of starting telecrystals. Defaults to default amount if not set.

View File

@@ -4,7 +4,7 @@
icon_state = "voice0" icon_state = "voice0"
item_state = "flashbang" //looks exactly like a flash (and nothing like a flashbang) item_state = "flashbang" //looks exactly like a flash (and nothing like a flashbang)
w_class = ITEMSIZE_TINY w_class = ITEMSIZE_TINY
flags = CONDUCT obj_flags = OBJ_FLAG_CONDUCTABLE
var/use_message = "Halt! Security!" var/use_message = "Halt! Security!"
var/spamcheck = 0 var/spamcheck = 0

View File

@@ -20,7 +20,7 @@
w_class = ITEMSIZE_SMALL w_class = ITEMSIZE_SMALL
matter = list(MATERIAL_GLASS = 200) matter = list(MATERIAL_GLASS = 200)
recyclable = TRUE recyclable = TRUE
flags = NOBLUDGEON item_flags = ITEM_FLAG_NO_BLUDGEON
var/contains = JAR_NOTHING // 0 = nothing, 1 = money, 2 = animal, 3 = spiderling, 4 = gumballs, 5 = holder var/contains = JAR_NOTHING // 0 = nothing, 1 = money, 2 = animal, 3 = spiderling, 4 = gumballs, 5 = holder
var/list/contained = list() var/list/contained = list()
drop_sound = 'sound/items/drop/glass.ogg' drop_sound = 'sound/items/drop/glass.ogg'

View File

@@ -22,7 +22,7 @@ var/global/list/datum/stack_recipe/rod_recipes = list(
Clicking on a floor without any tiles will reinforce the floor. You can make reinforced glass by combining rods and normal glass sheets." Clicking on a floor without any tiles will reinforce the floor. You can make reinforced glass by combining rods and normal glass sheets."
singular_name = "metal rod" singular_name = "metal rod"
icon_state = "rods" icon_state = "rods"
flags = CONDUCT obj_flags = OBJ_FLAG_CONDUCTABLE
w_class = ITEMSIZE_NORMAL w_class = ITEMSIZE_NORMAL
force = 9.0 force = 9.0
throwforce = 15.0 throwforce = 15.0
@@ -141,7 +141,7 @@ var/global/list/datum/stack_recipe/rod_recipes = list(
for(var/obj/O in user.loc) //Objects, we don't care about mobs. Turfs are checked elsewhere for(var/obj/O in user.loc) //Objects, we don't care about mobs. Turfs are checked elsewhere
if(O.density) if(O.density)
if(!(O.flags & ON_BORDER) || O.dir == user.dir) if(!(O.atom_flags & ATOM_FLAG_CHECKS_BORDER) || O.dir == user.dir)
return return
var/build_stack = amount var/build_stack = amount

View File

@@ -12,7 +12,7 @@
/obj/item/stack /obj/item/stack
gender = PLURAL gender = PLURAL
origin_tech = list(TECH_MATERIAL = 1) origin_tech = list(TECH_MATERIAL = 1)
flags = HELDMAPTEXT item_flags = ITEM_FLAG_HELD_MAP_TEXT
var/list/datum/stack_recipe/recipes var/list/datum/stack_recipe/recipes
var/singular_name var/singular_name
var/amount = 1 var/amount = 1

View File

@@ -9,7 +9,7 @@
icon_state = "telecrystal" icon_state = "telecrystal"
w_class = ITEMSIZE_TINY w_class = ITEMSIZE_TINY
max_amount = 50 max_amount = 50
flags = NOBLUDGEON item_flags = ITEM_FLAG_NO_BLUDGEON
origin_tech = list(TECH_MATERIAL = 6, TECH_BLUESPACE = 4) origin_tech = list(TECH_MATERIAL = 6, TECH_BLUESPACE = 4)
icon_has_variants = TRUE icon_has_variants = TRUE
var/crystal_type = CRYSTAL_TYPE_TELECRYSTAL var/crystal_type = CRYSTAL_TYPE_TELECRYSTAL

View File

@@ -23,6 +23,8 @@
randpixel = 7 randpixel = 7
drop_sound = 'sound/items/drop/axe.ogg' drop_sound = 'sound/items/drop/axe.ogg'
pickup_sound = 'sound/items/pickup/axe.ogg' pickup_sound = 'sound/items/pickup/axe.ogg'
item_flags = 0
obj_flags = 0
/obj/item/stack/tile/New() /obj/item/stack/tile/New()
..() ..()
@@ -40,7 +42,6 @@
throwforce = 1.0 throwforce = 1.0
throw_speed = 5 throw_speed = 5
throw_range = 20 throw_range = 20
flags = 0
origin_tech = list(TECH_BIO = 1) origin_tech = list(TECH_BIO = 1)
drop_sound = 'sound/items/drop/herb.ogg' drop_sound = 'sound/items/drop/herb.ogg'
pickup_sound = 'sound/items/pickup/herb.ogg' pickup_sound = 'sound/items/pickup/herb.ogg'
@@ -57,7 +58,6 @@
throwforce = 1.0 throwforce = 1.0
throw_speed = 5 throw_speed = 5
throw_range = 20 throw_range = 20
flags = 0
drop_sound = 'sound/items/drop/wooden.ogg' drop_sound = 'sound/items/drop/wooden.ogg'
pickup_sound = 'sound/items/pickup/wooden.ogg' pickup_sound = 'sound/items/pickup/wooden.ogg'
@@ -108,7 +108,6 @@
throwforce = 1.0 throwforce = 1.0
throw_speed = 5 throw_speed = 5
throw_range = 20 throw_range = 20
flags = 0
drop_sound = 'sound/items/drop/cloth.ogg' drop_sound = 'sound/items/drop/cloth.ogg'
pickup_sound = 'sound/items/pickup/cloth.ogg' pickup_sound = 'sound/items/pickup/cloth.ogg'
@@ -177,7 +176,6 @@
throwforce = 1.0 throwforce = 1.0
throw_speed = 5 throw_speed = 5
throw_range = 20 throw_range = 20
flags = 0
drop_sound = 'sound/items/drop/cloth.ogg' drop_sound = 'sound/items/drop/cloth.ogg'
pickup_sound = 'sound/items/pickup/cloth.ogg' pickup_sound = 'sound/items/pickup/cloth.ogg'
matter = list(MATERIAL_PLASTIC = TILE_MATERIAL_AMOUNT) matter = list(MATERIAL_PLASTIC = TILE_MATERIAL_AMOUNT)
@@ -200,7 +198,7 @@
throwforce = 15.0 throwforce = 15.0
throw_speed = 5 throw_speed = 5
throw_range = 20 throw_range = 20
flags = CONDUCT obj_flags = OBJ_FLAG_CONDUCTABLE
/obj/item/stack/tile/circuit_green /obj/item/stack/tile/circuit_green
name = "circuit tile" name = "circuit tile"
@@ -212,7 +210,7 @@
throwforce = 15.0 throwforce = 15.0
throw_speed = 5 throw_speed = 5
throw_range = 20 throw_range = 20
flags = CONDUCT obj_flags = OBJ_FLAG_CONDUCTABLE
/* /*
* Floors * Floors
@@ -228,7 +226,7 @@
throwforce = 6 throwforce = 6
throw_speed = 5 throw_speed = 5
throw_range = 10 throw_range = 10
flags = CONDUCT obj_flags = OBJ_FLAG_CONDUCTABLE
/obj/item/stack/tile/floor/full_stack/Initialize(mapload) /obj/item/stack/tile/floor/full_stack/Initialize(mapload)
. = ..() . = ..()

View File

@@ -3,7 +3,7 @@
desc = "It's a sticker." desc = "It's a sticker."
icon = 'icons/obj/sticker.dmi' icon = 'icons/obj/sticker.dmi'
icon_state = "sticker" icon_state = "sticker"
flags = NOBLUDGEON item_flags = ITEM_FLAG_NO_BLUDGEON
w_class = ITEMSIZE_TINY w_class = ITEMSIZE_TINY
vis_flags = VIS_INHERIT_LAYER | VIS_INHERIT_DIR vis_flags = VIS_INHERIT_LAYER | VIS_INHERIT_DIR

View File

@@ -571,7 +571,7 @@
drop_sound = 'sound/items/drop/gun.ogg' drop_sound = 'sound/items/drop/gun.ogg'
pickup_sound = /singleton/sound_category/sword_pickup_sound pickup_sound = /singleton/sound_category/sword_pickup_sound
equip_sound = /singleton/sound_category/sword_equip_sound equip_sound = /singleton/sound_category/sword_equip_sound
flags = CONDUCT obj_flags = OBJ_FLAG_CONDUCTABLE
slot_flags = SLOT_BELT | SLOT_BACK slot_flags = SLOT_BELT | SLOT_BACK
force = 5 force = 5
throwforce = 5 throwforce = 5
@@ -602,7 +602,7 @@
/obj/item/toy/snappop/Crossed(H as mob|obj) /obj/item/toy/snappop/Crossed(H as mob|obj)
if((ishuman(H))) //i guess carp and shit shouldn't set them off if((ishuman(H))) //i guess carp and shit shouldn't set them off
var/mob/living/carbon/human/M = H var/mob/living/carbon/human/M = H
if(M.shoes?.item_flags & LIGHTSTEP) if(M.shoes?.item_flags & ITEM_FLAG_LIGHT_STEP)
return return
if(M.m_intent == M_RUN) if(M.m_intent == M_RUN)
to_chat(M, SPAN_WARNING("You step on the snap pop!")) to_chat(M, SPAN_WARNING("You step on the snap pop!"))

View File

@@ -12,7 +12,7 @@ AI MODULES
icon_state = "std_mod" icon_state = "std_mod"
item_state = "electronic" item_state = "electronic"
desc = "An AI Module for transmitting encrypted instructions to the AI." desc = "An AI Module for transmitting encrypted instructions to the AI."
flags = CONDUCT obj_flags = OBJ_FLAG_CONDUCTABLE
force = 5.0 force = 5.0
w_class = ITEMSIZE_SMALL w_class = ITEMSIZE_SMALL
throwforce = 5.0 throwforce = 5.0

View File

@@ -22,7 +22,7 @@
opacity = FALSE opacity = FALSE
density = FALSE density = FALSE
anchored = FALSE anchored = FALSE
flags = CONDUCT obj_flags = OBJ_FLAG_CONDUCTABLE
force = 5 force = 5
throwforce = 10 throwforce = 10
throw_speed = 1 throw_speed = 1

View File

@@ -7,7 +7,7 @@
desc = "Extracts information on wounds." desc = "Extracts information on wounds."
icon = 'icons/obj/device.dmi' icon = 'icons/obj/device.dmi'
icon_state = "autopsy" icon_state = "autopsy"
flags = CONDUCT obj_flags = OBJ_FLAG_CONDUCTABLE
w_class = ITEMSIZE_SMALL w_class = ITEMSIZE_SMALL
origin_tech = list(TECH_MATERIAL = 1, TECH_BIO = 1) origin_tech = list(TECH_MATERIAL = 1, TECH_BIO = 1)
var/list/datum/autopsy_data_scanner/wdata = list() var/list/datum/autopsy_data_scanner/wdata = list()

View File

@@ -260,7 +260,7 @@
icon_state = "urn" icon_state = "urn"
applies_material_colour = TRUE applies_material_colour = TRUE
w_class = ITEMSIZE_SMALL w_class = ITEMSIZE_SMALL
flags = NOBLUDGEON item_flags = ITEM_FLAG_NO_BLUDGEON
/obj/item/material/urn/afterattack(var/obj/A, var/mob/user, var/proximity) /obj/item/material/urn/afterattack(var/obj/A, var/mob/user, var/proximity)
if(!istype(A, /obj/effect/decal/cleanable/ash)) if(!istype(A, /obj/effect/decal/cleanable/ash))

View File

@@ -32,7 +32,7 @@
/obj/item/clothing/mask/chewable/Initialize() /obj/item/clothing/mask/chewable/Initialize()
create_reagents(chem_volume) // making the cigarrete a chemical holder with a maximum volume of 15 create_reagents(chem_volume) // making the cigarrete a chemical holder with a maximum volume of 15
. = ..() . = ..()
flags |= NOREACT // so it doesn't react until you light it atom_flags |= ATOM_FLAG_NO_REACT // so it doesn't react until you light it
if(wrapped) if(wrapped)
slot_flags = null slot_flags = null
update_icon() update_icon()

View File

@@ -172,7 +172,7 @@ CIGARETTE PACKETS ARE IN FANCY.DM
/obj/item/clothing/mask/smokable/Initialize() /obj/item/clothing/mask/smokable/Initialize()
. = ..() . = ..()
flags |= NOREACT // so it doesn't react until you light it atom_flags |= ATOM_FLAG_NO_REACT // so it doesn't react until you light it
create_reagents(chem_volume) // making the cigarrete a chemical holder with a maximum volume of 15 create_reagents(chem_volume) // making the cigarrete a chemical holder with a maximum volume of 15
/obj/item/clothing/mask/smokable/process() /obj/item/clothing/mask/smokable/process()
@@ -213,7 +213,7 @@ CIGARETTE PACKETS ARE IN FANCY.DM
e.start() e.start()
qdel(src) qdel(src)
return return
flags &= ~NOREACT // allowing reagents to react after being lit atom_flags &= ~ATOM_FLAG_NO_REACT // allowing reagents to react after being lit
reagents.handle_reactions() reagents.handle_reactions()
icon_state = icon_on icon_state = icon_on
item_state = icon_on item_state = icon_on
@@ -705,7 +705,7 @@ CIGARETTE PACKETS ARE IN FANCY.DM
) )
w_class = ITEMSIZE_TINY w_class = ITEMSIZE_TINY
throwforce = 4 throwforce = 4
flags = CONDUCT obj_flags = OBJ_FLAG_CONDUCTABLE
slot_flags = SLOT_BELT slot_flags = SLOT_BELT
attack_verb = list("burnt", "singed") attack_verb = list("burnt", "singed")
var/base_state var/base_state

View File

@@ -12,7 +12,7 @@
item_state = "electronic" item_state = "electronic"
origin_tech = list(TECH_DATA = 2) origin_tech = list(TECH_DATA = 2)
w_class = ITEMSIZE_SMALL w_class = ITEMSIZE_SMALL
flags = CONDUCT obj_flags = OBJ_FLAG_CONDUCTABLE
force = 5 force = 5
throwforce = 5 throwforce = 5
throw_speed = 3 throw_speed = 3

View File

@@ -9,7 +9,7 @@
icon = 'icons/obj/device.dmi' icon = 'icons/obj/device.dmi'
icon_state = "shield0" icon_state = "shield0"
var/active = 0.0 var/active = 0.0
flags = CONDUCT obj_flags = OBJ_FLAG_CONDUCTABLE
item_state = "electronic" item_state = "electronic"
throwforce = 10.0 throwforce = 10.0
throw_speed = 2 throw_speed = 2

View File

@@ -246,7 +246,7 @@
icon_state = "ecartridge" icon_state = "ecartridge"
matter = list(MATERIAL_STEEL = 50, MATERIAL_GLASS = 10) matter = list(MATERIAL_STEEL = 50, MATERIAL_GLASS = 10)
volume = 20 volume = 20
flags = OPENCONTAINER atom_flags = ATOM_FLAG_OPEN_CONTAINER
/obj/item/reagent_containers/ecig_cartridge/examine(mob/user) /obj/item/reagent_containers/ecig_cartridge/examine(mob/user)
. = ..() . = ..()

View File

@@ -5,7 +5,7 @@
icon = 'icons/obj/assemblies.dmi' icon = 'icons/obj/assemblies.dmi'
icon_state = "plastic-explosive0" icon_state = "plastic-explosive0"
item_state = "plasticx" item_state = "plasticx"
flags = NOBLUDGEON item_flags = ITEM_FLAG_NO_BLUDGEON
w_class = ITEMSIZE_SMALL w_class = ITEMSIZE_SMALL
origin_tech = list(TECH_ILLEGAL = 2) origin_tech = list(TECH_ILLEGAL = 2)
var/datum/wires/explosive/c4/wires = null var/datum/wires/explosive/c4/wires = null

View File

@@ -5,7 +5,8 @@
icon_state = "metal_canister" icon_state = "metal_canister"
item_state = "metal_canister" item_state = "metal_canister"
hitsound = 'sound/weapons/smash.ogg' hitsound = 'sound/weapons/smash.ogg'
flags = CONDUCT | OPENCONTAINER atom_flags = ATOM_FLAG_OPEN_CONTAINER
obj_flags = OBJ_FLAG_CONDUCTABLE
throwforce = 8 throwforce = 8
w_class = ITEMSIZE_NORMAL w_class = ITEMSIZE_NORMAL
throw_speed = 2 throw_speed = 2
@@ -22,9 +23,9 @@
/obj/item/reagent_containers/extinguisher_refill/attackby(obj/item/O, mob/user) /obj/item/reagent_containers/extinguisher_refill/attackby(obj/item/O, mob/user)
if(O.isscrewdriver()) if(O.isscrewdriver())
if(is_open_container()) if(is_open_container())
flags &= ~OPENCONTAINER atom_flags &= ~ATOM_FLAG_OPEN_CONTAINER
else else
flags |= OPENCONTAINER atom_flags |= ATOM_FLAG_OPEN_CONTAINER
to_chat(user, SPAN_NOTICE("Using \the [O], you [is_open_container() ? "unsecure" : "secure"] the cartridge's lid!")) to_chat(user, SPAN_NOTICE("Using \the [O], you [is_open_container() ? "unsecure" : "secure"] the cartridge's lid!"))
return TRUE return TRUE
@@ -48,7 +49,7 @@
if(is_open_container()) if(is_open_container())
if(LAZYLEN(reagents.reagent_volumes)) if(LAZYLEN(reagents.reagent_volumes))
to_chat(user,"<span class='notice'>With a quick twist of the cartridge's lid, you secure the reagents inside \the [src].</span>") to_chat(user,"<span class='notice'>With a quick twist of the cartridge's lid, you secure the reagents inside \the [src].</span>")
flags &= ~OPENCONTAINER atom_flags &= ~ATOM_FLAG_OPEN_CONTAINER
else else
to_chat(user,"<span class='notice'>You can't secure the cartridge without putting reagents in!</span>") to_chat(user,"<span class='notice'>You can't secure the cartridge without putting reagents in!</span>")
else else
@@ -78,7 +79,7 @@
/obj/item/reagent_containers/extinguisher_refill/filled/Initialize() /obj/item/reagent_containers/extinguisher_refill/filled/Initialize()
. = ..() . = ..()
reagents.add_reagent(/singleton/reagent/toxin/fertilizer/monoammoniumphosphate, volume) reagents.add_reagent(/singleton/reagent/toxin/fertilizer/monoammoniumphosphate, volume)
flags &= ~OPENCONTAINER atom_flags &= ~ATOM_FLAG_OPEN_CONTAINER
/obj/item/extinguisher /obj/item/extinguisher
name = "fire extinguisher" name = "fire extinguisher"
@@ -87,7 +88,7 @@
icon_state = "fire_extinguisher0" icon_state = "fire_extinguisher0"
item_state = "fire_extinguisher" item_state = "fire_extinguisher"
hitsound = 'sound/weapons/smash.ogg' hitsound = 'sound/weapons/smash.ogg'
flags = CONDUCT obj_flags = OBJ_FLAG_CONDUCTABLE
throwforce = 10 throwforce = 10
w_class = ITEMSIZE_HUGE w_class = ITEMSIZE_HUGE
throw_speed = 2 throw_speed = 2
@@ -112,7 +113,7 @@
icon_state = "miniFE0" icon_state = "miniFE0"
item_state = "miniFE" item_state = "miniFE"
hitsound = null //it is much lighter, after all. hitsound = null //it is much lighter, after all.
flags = OPENCONTAINER atom_flags = ATOM_FLAG_OPEN_CONTAINER
throwforce = 2 throwforce = 2
w_class = ITEMSIZE_SMALL w_class = ITEMSIZE_SMALL
force = 2.0 force = 2.0

View File

@@ -7,7 +7,7 @@
contained_sprite = TRUE contained_sprite = TRUE
w_class = ITEMSIZE_LARGE w_class = ITEMSIZE_LARGE
flags = CONDUCT obj_flags = OBJ_FLAG_CONDUCTABLE
force = 3 force = 3
throwforce = 10 throwforce = 10
throw_speed = 1 throw_speed = 1

View File

@@ -11,7 +11,7 @@
item_state = "grenade" item_state = "grenade"
throw_speed = 4 throw_speed = 4
throw_range = 20 throw_range = 20
flags = CONDUCT obj_flags = OBJ_FLAG_CONDUCTABLE
slot_flags = SLOT_BELT slot_flags = SLOT_BELT
contained_sprite = 1 contained_sprite = 1
var/active = 0 var/active = 0

View File

@@ -7,7 +7,7 @@
sprite_sheets = list( sprite_sheets = list(
BODYTYPE_VAURCA_BULWARK = 'icons/mob/species/bulwark/cuff.dmi' BODYTYPE_VAURCA_BULWARK = 'icons/mob/species/bulwark/cuff.dmi'
) )
flags = CONDUCT obj_flags = OBJ_FLAG_CONDUCTABLE
slot_flags = SLOT_BELT slot_flags = SLOT_BELT
throwforce = 5 throwforce = 5
w_class = ITEMSIZE_SMALL w_class = ITEMSIZE_SMALL

View File

@@ -44,7 +44,7 @@
desc = "A rod with some wire wrapped around the top. It'd be easy to attach something to the top bit." desc = "A rod with some wire wrapped around the top. It'd be easy to attach something to the top bit."
icon_state = "wiredrod" icon_state = "wiredrod"
item_state = "rods" item_state = "rods"
flags = CONDUCT obj_flags = OBJ_FLAG_CONDUCTABLE
force = 8 force = 8
throwforce = 10 throwforce = 10
w_class = ITEMSIZE_NORMAL w_class = ITEMSIZE_NORMAL

View File

@@ -5,7 +5,7 @@
icon_state = "ipc_tag_scanner" icon_state = "ipc_tag_scanner"
item_state = "ipc_tag_scanner" item_state = "ipc_tag_scanner"
contained_sprite = TRUE contained_sprite = TRUE
flags = CONDUCT obj_flags = OBJ_FLAG_CONDUCTABLE
slot_flags = SLOT_BELT slot_flags = SLOT_BELT
throwforce = 3 throwforce = 3
w_class = ITEMSIZE_SMALL w_class = ITEMSIZE_SMALL

View File

@@ -59,7 +59,7 @@
if(deployed || ignore_deployment) if(deployed || ignore_deployment)
if(ishuman(AM)) if(ishuman(AM))
var/mob/living/carbon/human/H = AM var/mob/living/carbon/human/H = AM
if(H.shoes?.item_flags & LIGHTSTEP) if(H.shoes?.item_flags & ITEM_FLAG_LIGHT_STEP)
..() ..()
return return
if(isliving(AM)) if(isliving(AM))

View File

@@ -24,7 +24,7 @@
return return
if(H.resting) if(H.resting)
return return
if(H.shoes?.item_flags & LIGHTSTEP) if(H.shoes?.item_flags & ITEM_FLAG_LIGHT_STEP)
return return
to_chat(H, SPAN_DANGER("You step on \the [src]!")) to_chat(H, SPAN_DANGER("You step on \the [src]!"))

View File

@@ -7,7 +7,7 @@
contained_sprite = TRUE contained_sprite = TRUE
icon_state = "knife" icon_state = "knife"
desc = "A general purpose Chef's Knife made by SpaceCook Incorporated. Guaranteed to stay sharp for years to come." desc = "A general purpose Chef's Knife made by SpaceCook Incorporated. Guaranteed to stay sharp for years to come."
flags = CONDUCT obj_flags = OBJ_FLAG_CONDUCTABLE
sharp = 1 sharp = 1
edge = TRUE edge = TRUE
var/active = 1 // For butterfly knives var/active = 1 // For butterfly knives

View File

@@ -351,7 +351,7 @@
desc = "A robust tree-cutting chainsaw intended to cut down various types of invasive spaceplants that grow on the station." desc = "A robust tree-cutting chainsaw intended to cut down various types of invasive spaceplants that grow on the station."
icon_state = "chainsaw_off" icon_state = "chainsaw_off"
base_icon = "chainsaw_off" base_icon = "chainsaw_off"
flags = CONDUCT obj_flags = OBJ_FLAG_CONDUCTABLE
force = 10 force = 10
force_unwielded = 10 force_unwielded = 10
force_wielded = 20 force_wielded = 20

View File

@@ -6,7 +6,7 @@
sharp = 0 sharp = 0
edge = FALSE edge = FALSE
armor_penetration = 20 armor_penetration = 20
flags = NOBLOODY atom_flags = ATOM_FLAG_NO_BLOOD
can_embed = 0//No embedding pls can_embed = 0//No embedding pls
var/base_reflectchance = 40 var/base_reflectchance = 40
var/base_block_chance = 25 var/base_block_chance = 25
@@ -141,7 +141,8 @@
throw_speed = 5 throw_speed = 5
throw_range = 10 throw_range = 10
w_class = ITEMSIZE_HUGE w_class = ITEMSIZE_HUGE
flags = CONDUCT | NOBLOODY atom_flags = ATOM_FLAG_NO_BLOOD
obj_flags = OBJ_FLAG_CONDUCTABLE
origin_tech = list(TECH_COMBAT = 6, TECH_PHORON = 4, TECH_MATERIAL = 7, TECH_ILLEGAL = 4) origin_tech = list(TECH_COMBAT = 6, TECH_PHORON = 4, TECH_MATERIAL = 7, TECH_ILLEGAL = 4)
attack_verb = list("stabbed", "chopped", "sliced", "cleaved", "slashed", "cut") attack_verb = list("stabbed", "chopped", "sliced", "cleaved", "slashed", "cut")
sharp = 1 sharp = 1
@@ -189,7 +190,8 @@
throw_speed = 1 throw_speed = 1
throw_range = 5 throw_range = 5
w_class = ITEMSIZE_NORMAL w_class = ITEMSIZE_NORMAL
flags = CONDUCT | NOBLOODY atom_flags = ATOM_FLAG_NO_BLOOD
obj_flags = OBJ_FLAG_CONDUCTABLE
origin_tech = list(TECH_MAGNET = 3, TECH_COMBAT = 4) origin_tech = list(TECH_MAGNET = 3, TECH_COMBAT = 4)
attack_verb = list("attacked", "chopped", "cleaved", "torn", "cut") attack_verb = list("attacked", "chopped", "cleaved", "torn", "cut")
sharp = 1 sharp = 1
@@ -236,7 +238,7 @@
throw_speed = 1 throw_speed = 1
throw_range = 5 throw_range = 5
w_class = ITEMSIZE_SMALL w_class = ITEMSIZE_SMALL
flags = NOBLOODY atom_flags = ATOM_FLAG_NO_BLOOD
origin_tech = list(TECH_MAGNET = 3, TECH_ILLEGAL = 4) origin_tech = list(TECH_MAGNET = 3, TECH_ILLEGAL = 4)
sharp = 1 sharp = 1
edge = TRUE edge = TRUE
@@ -402,7 +404,7 @@
throw_speed = 1 throw_speed = 1
throw_range = 1 throw_range = 1
w_class = ITEMSIZE_LARGE//So you can't hide it in your pocket or some such. w_class = ITEMSIZE_LARGE//So you can't hide it in your pocket or some such.
flags = NOBLOODY atom_flags = ATOM_FLAG_NO_BLOOD
attack_verb = list("attacked", "slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut") attack_verb = list("attacked", "slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut")
var/mob/living/creator var/mob/living/creator
base_reflectchance = 140 base_reflectchance = 140

View File

@@ -13,7 +13,7 @@
desc = "A tool used by great men to placate the frothing masses." desc = "A tool used by great men to placate the frothing masses."
icon_state = "chain" icon_state = "chain"
item_state = "chain" item_state = "chain"
flags = CONDUCT obj_flags = OBJ_FLAG_CONDUCTABLE
slot_flags = SLOT_BELT slot_flags = SLOT_BELT
force = 10 force = 10
throwforce = 7 throwforce = 7
@@ -27,7 +27,7 @@
desc = "A deadly chainsaw in the shape of a sword." desc = "A deadly chainsaw in the shape of a sword."
icon = 'icons/obj/weapons.dmi' icon = 'icons/obj/weapons.dmi'
icon_state = "chainswordoff" icon_state = "chainswordoff"
flags = CONDUCT obj_flags = OBJ_FLAG_CONDUCTABLE
slot_flags = SLOT_BELT slot_flags = SLOT_BELT
force = 15 force = 15
throwforce = 7 throwforce = 7
@@ -183,7 +183,7 @@
icon_state = "officersword" icon_state = "officersword"
item_state = "officersword" item_state = "officersword"
contained_sprite = TRUE contained_sprite = TRUE
flags = CONDUCT obj_flags = OBJ_FLAG_CONDUCTABLE
slot_flags = SLOT_BELT slot_flags = SLOT_BELT
force = 15 force = 15
throwforce = 5 throwforce = 5

View File

@@ -13,7 +13,7 @@
possible_transfer_amounts = list(10,20,30,60) possible_transfer_amounts = list(10,20,30,60)
volume = 60 volume = 60
unacidable = 0 unacidable = 0
flags = OPENCONTAINER atom_flags = ATOM_FLAG_OPEN_CONTAINER
fragile = 0 fragile = 0
var/paint_reagent = null //name of the reagent responsible for colouring the paint var/paint_reagent = null //name of the reagent responsible for colouring the paint
var/paint_type = null //used for colouring detective technicolor coat and hat var/paint_type = null //used for colouring detective technicolor coat and hat

View File

@@ -60,7 +60,7 @@
name = "riot shield" name = "riot shield"
desc = "A shield adept at blocking blunt objects from connecting with the torso of the shield wielder." desc = "A shield adept at blocking blunt objects from connecting with the torso of the shield wielder."
icon_state = "riot" icon_state = "riot"
flags = CONDUCT obj_flags = OBJ_FLAG_CONDUCTABLE
slot_flags = SLOT_BACK slot_flags = SLOT_BACK
force = 5.0 force = 5.0
throwforce = 5.0 throwforce = 5.0
@@ -130,7 +130,7 @@
name = "energy combat shield" name = "energy combat shield"
desc = "A shield capable of stopping most projectile and melee attacks. It can be retracted, expanded, and stored anywhere." desc = "A shield capable of stopping most projectile and melee attacks. It can be retracted, expanded, and stored anywhere."
icon_state = "eshield0" icon_state = "eshield0"
flags = CONDUCT obj_flags = OBJ_FLAG_CONDUCTABLE
force = 3.0 force = 3.0
throwforce = 5.0 throwforce = 5.0
throw_speed = 1 throw_speed = 1

View File

@@ -15,7 +15,7 @@
throwforce = 0 throwforce = 0
throw_speed = 4 throw_speed = 4
throw_range = 20 throw_range = 20
flags = OPENCONTAINER atom_flags = ATOM_FLAG_OPEN_CONTAINER
var/key_data var/key_data
var/clean_msg var/clean_msg
var/last_clean var/last_clean
@@ -50,7 +50,7 @@
if(isliving(AM)) if(isliving(AM))
if(ishuman(AM)) if(ishuman(AM))
var/mob/living/carbon/human/H = AM var/mob/living/carbon/human/H = AM
if(H.shoes?.item_flags & LIGHTSTEP) if(H.shoes?.item_flags & ITEM_FLAG_LIGHT_STEP)
return return
var/mob/living/M = AM var/mob/living/M = AM
M.slip("the [src.name]",3) M.slip("the [src.name]",3)

View File

@@ -275,7 +275,7 @@
desc = "A bag for carrying lots of money. It's got a big dollar sign printed on the front." desc = "A bag for carrying lots of money. It's got a big dollar sign printed on the front."
icon_state = "moneybag" icon_state = "moneybag"
item_state = "moneybag" item_state = "moneybag"
flags = CONDUCT obj_flags = OBJ_FLAG_CONDUCTABLE
max_storage_space = 100 max_storage_space = 100
w_class = ITEMSIZE_LARGE w_class = ITEMSIZE_LARGE
can_hold = list(/obj/item/coin,/obj/item/spacecash) can_hold = list(/obj/item/coin,/obj/item/spacecash)

View File

@@ -5,7 +5,7 @@
icon_state = "briefcase" icon_state = "briefcase"
item_state = "briefcase" item_state = "briefcase"
contained_sprite = TRUE contained_sprite = TRUE
flags = CONDUCT obj_flags = OBJ_FLAG_CONDUCTABLE
force = 8.0 force = 8.0
throw_speed = 1 throw_speed = 1
throw_range = 4 throw_range = 4

View File

@@ -304,7 +304,7 @@
var/cigarette_to_spawn = /obj/item/clothing/mask/smokable/cigarette var/cigarette_to_spawn = /obj/item/clothing/mask/smokable/cigarette
/obj/item/storage/box/fancy/cigarettes/Initialize() /obj/item/storage/box/fancy/cigarettes/Initialize()
flags |= NOREACT atom_flags |= ATOM_FLAG_NO_REACT
create_reagents(15 * storage_slots) //so people can inject cigarettes without opening a packet, now with being able to inject the whole one create_reagents(15 * storage_slots) //so people can inject cigarettes without opening a packet, now with being able to inject the whole one
. = ..() . = ..()

View File

@@ -6,7 +6,7 @@
icon_state = "red" icon_state = "red"
item_state = "red" item_state = "red"
center_of_mass = list("x" = 16,"y" = 11) center_of_mass = list("x" = 16,"y" = 11)
flags = CONDUCT obj_flags = OBJ_FLAG_CONDUCTABLE
force = 5 force = 5
throwforce = 10 throwforce = 10
throw_speed = 1 throw_speed = 1

Some files were not shown because too many files have changed in this diff Show More