replaces atom.initialized with ATOM_INITIALIZED

refactors atom/var/flags to atom_flags and area_flags
moves NOBLOODY, NOBLUDGEON, and PHORONGUARD to item_flags instead of atom_flags
corrects various misapplied flags
This commit is contained in:
spookerton
2022-10-18 09:36:36 +01:00
parent 650ee09942
commit 3abdbbaa1c
150 changed files with 414 additions and 431 deletions
+1 -1
View File
@@ -5,7 +5,7 @@
description_info = "Some blob types will have core effects when the chunk is used in-hand, toggled with an alt click, or constantly active."
icon = 'icons/mob/blob.dmi'
icon_state = "blobcore"
flags = OPENCONTAINER
atom_flags = OPENCONTAINER
var/datum/blob_type/blob_type // The blob type this dropped from.
var/active_ability_cooldown = 20 SECONDS
+2 -2
View File
@@ -103,6 +103,6 @@
#ifdef CARDINAL_INPUT_ONLY
/// Movement dir of the most recently pressed movement key. Used in cardinal-only movement mode.
var/last_move_dir_pressed = NONE
var/last_move_dir_pressed = EMPTY_BITFIELD
#endif
#endif
+1 -1
View File
@@ -356,7 +356,7 @@
H.drop_from_inventory(ring) //Remove the ring (or other under-glove item in the hand slot?) so you can put on the gloves.
ring.forceMove(src)
to_chat(user, "You slip \the [src] on over \the [src.ring].")
if(!(flags & THICKMATERIAL))
if(!(item_flags & THICKMATERIAL))
punch_force += ring.punch_force
else
ring = null
+2 -2
View File
@@ -169,7 +169,7 @@ BLIND // can't see anything
/obj/item/clothing/glasses/night/vox
name = "Alien Optics"
species_restricted = list("Vox")
flags = PHORONGUARD
item_flags = PHORONGUARD
/obj/item/clothing/glasses/night/Initialize()
. = ..()
@@ -542,7 +542,7 @@ BLIND // can't see anything
item_state_slots = list(slot_r_hand_str = "sunglasses", slot_l_hand_str = "sunglasses")
toggleable = 1
action_button_name = "Toggle Monocle"
flags = null //doesn't protect eyes because it's a monocle, duh
atom_flags = 0
body_parts_covered = 0
+1 -1
View File
@@ -1,7 +1,7 @@
/obj/item/clothing/glasses/hud
name = "HUD"
desc = "A heads-up display that provides important info in (almost) real time."
flags = 0 //doesn't protect eyes because it's a monocle, duh
atom_flags = 0 //doesn't protect eyes because it's a monocle, duh
origin_tech = list(TECH_MAGNET = 3, TECH_BIO = 2)
/obj/item/clothing/glasses/hud/health
@@ -109,7 +109,7 @@
name = "insulated gauntlets"
icon_state = "gloves-vox"
item_state = "gloves-vox"
flags = PHORONGUARD
item_flags = PHORONGUARD
siemens_coefficient = 0
permeability_coefficient = 0.05
species_restricted = list("Vox")
@@ -127,7 +127,7 @@
icon_state = "knuckledusters"
matter = list(MAT_STEEL = 500)
attack_verb = list("punched", "beaten", "struck")
flags = THICKMATERIAL // Stops rings from increasing hit strength
item_flags = THICKMATERIAL // Stops rings from increasing hit strength
siemens_coefficient = 1
fingerprint_chance = 100
overgloves = 1
@@ -166,4 +166,4 @@
glovecolor = "orange"
/obj/item/clothing/gloves/ranger/yellow
glovecolor = "yellow"
glovecolor = "yellow"
+2 -3
View File
@@ -4,7 +4,7 @@
icon_state = "helmet"
valid_accessory_slots = (ACCESSORY_SLOT_HELM_C)
restricted_accessory_slots = (ACCESSORY_SLOT_HELM_C)
flags = THICKMATERIAL
item_flags = THICKMATERIAL
armor = list(melee = 40, bullet = 30, laser = 30, energy = 10, bomb = 10, bio = 0, rad = 0)
flags_inv = HIDEEARS|BLOCKHEADHAIR
cold_protection = HEAD
@@ -127,7 +127,7 @@
name = "explorer hood"
desc = "An armoured hood for exploring harsh environments."
icon_state = "explorer"
flags = THICKMATERIAL
item_flags = THICKMATERIAL
min_cold_protection_temperature = SPACE_SUIT_MIN_COLD_PROTECTION_TEMPERATURE
siemens_coefficient = 0.9
armor = list(melee = 30, bullet = 20, laser = 20, energy = 20, bomb = 35, bio = 75, rad = 35)
@@ -267,4 +267,3 @@
name = "emergency response team medical helmet"
desc = "A set of armor worn by medical members of the NanoTrasen Emergency Response Team. Has red and white highlights."
icon_state = "erthelmet_med"
+1 -1
View File
@@ -188,7 +188,7 @@
name = "explorer hood"
desc = "An armoured hood for exploring harsh environments."
icon_state = "explorer"
flags = THICKMATERIAL
item_flags = THICKMATERIAL
min_cold_protection_temperature = SPACE_SUIT_MIN_COLD_PROTECTION_TEMPERATURE
siemens_coefficient = 0.9
armor = list(melee = 30, bullet = 20, laser = 20, energy = 20, bomb = 35, bio = 75, rad = 35)
+2 -2
View File
@@ -8,7 +8,7 @@
sprite_sheets = list(
SPECIES_TESHARI = 'icons/mob/species/teshari/pilot_helmet.dmi'
)
flags = THICKMATERIAL
item_flags = THICKMATERIAL
armor = list(melee = 20, bullet = 10, laser = 10, energy = 5, bomb = 10, bio = 0, rad = 0)
flags_inv = HIDEEARS
cold_protection = HEAD
@@ -198,4 +198,4 @@
else
src.icon_state = initial(icon_state)
to_chat(user, "You lower the visor on the pilot helmet.")
update_clothing_icon() //so our mob-overlays update
update_clothing_icon() //so our mob-overlays update
+1 -2
View File
@@ -85,8 +85,7 @@
/obj/item/clothing/mask/gas/swat/vox
name = "alien mask"
desc = "Clearly not designed for a human face."
flags = PHORONGUARD
item_flags = BLOCK_GAS_SMOKE_EFFECT | AIRTIGHT
item_flags = BLOCK_GAS_SMOKE_EFFECT | AIRTIGHT | PHORONGUARD
species_restricted = list(SPECIES_VOX)
filtered_gases = list("oxygen", "phoron", "nitrous_oxide")
action_button_name = "Toggle Feeding Port"
+1 -1
View File
@@ -31,7 +31,7 @@
//Reagent Rings
/obj/item/clothing/gloves/ring/reagent
flags = OPENCONTAINER
atom_flags = OPENCONTAINER
origin_tech = list(TECH_MATERIAL = 2, TECH_ILLEGAL = 4)
/obj/item/clothing/gloves/ring/reagent/Initialize()
+3 -3
View File
@@ -2,7 +2,7 @@
desc = "Magnetic boots, often used during extravehicular activity to ensure the user remains safely attached to the vehicle. They're large enough to be worn over other footwear."
name = "magboots"
icon_state = "magboots0"
flags = PHORONGUARD
item_flags = PHORONGUARD
item_state_slots = list(slot_r_hand_str = "magboots", slot_l_hand_str = "magboots")
species_restricted = null
center_of_mass = list("x" = 17,"y" = 12)
@@ -88,7 +88,7 @@
name = "vox magclaws"
item_state = "boots-vox"
icon_state = "boots-vox"
flags = PHORONGUARD
item_flags = PHORONGUARD
species_restricted = list(SPECIES_VOX)
action_button_name = "Toggle the magclaws"
@@ -126,4 +126,4 @@
/obj/item/clothing/shoes/magboots/vox/examine(mob/user)
. = ..()
if(magpulse)
. += "It would be hard to take these off without relaxing your grip first." // Theoretically this message should only be seen by the wearer when the claws are equipped.
. += "It would be hard to take these off without relaxing your grip first." // Theoretically this message should only be seen by the wearer when the claws are equipped.
+2 -4
View File
@@ -31,8 +31,7 @@
// Can't be equipped by any other species due to bone structure and vox cybernetics.
/obj/item/clothing/suit/space/vox
w_class = ITEMSIZE_NORMAL
flags = PHORONGUARD
item_flags = THICKMATERIAL
item_flags = THICKMATERIAL | PHORONGUARD
allowed = list(/obj/item/gun,/obj/item/ammo_magazine,/obj/item/ammo_casing,/obj/item/melee/baton,/obj/item/melee/energy/sword,/obj/item/handcuffs,/obj/item/tank)
armor = list(melee = 60, bullet = 50, laser = 40,energy = 15, bomb = 30, bio = 100, rad = 50)
siemens_coefficient = 0.2
@@ -43,8 +42,7 @@
/obj/item/clothing/head/helmet/space/vox
armor = list(melee = 60, bullet = 50, laser = 40, energy = 15, bomb = 30, bio = 100, rad = 50)
siemens_coefficient = 0.2
flags = PHORONGUARD
item_flags = THICKMATERIAL | AIRTIGHT
item_flags = THICKMATERIAL | AIRTIGHT | PHORONGUARD
flags_inv = 0
species_restricted = list(SPECIES_VOX)
+1 -1
View File
@@ -11,7 +11,7 @@
name = "hardsuit control module"
icon = 'icons/obj/rig_modules.dmi'
desc = "A back-mounted hardsuit deployment and control mechanism."
flags = PHORONGUARD
item_flags = PHORONGUARD
slot_flags = SLOT_BACK
req_one_access = list()
req_access = list()
@@ -23,8 +23,7 @@
/obj/item/clothing/gloves/gauntlets/rig
name = "gauntlets"
flags = PHORONGUARD
item_flags = THICKMATERIAL
item_flags = THICKMATERIAL | PHORONGUARD
body_parts_covered = HANDS
heat_protection = HANDS
cold_protection = HANDS
@@ -119,7 +118,7 @@
body_parts_covered = HEAD|FACE|EYES
heat_protection = HEAD|FACE|EYES
cold_protection = HEAD|FACE|EYES
flags = THICKMATERIAL|AIRTIGHT
item_flags = THICKMATERIAL|AIRTIGHT
species_restricted = null
/obj/item/clothing/suit/lightrig
@@ -129,7 +128,7 @@
heat_protection = UPPER_TORSO|LOWER_TORSO|LEGS|ARMS
cold_protection = UPPER_TORSO|LOWER_TORSO|LEGS|ARMS
flags_inv = HIDEJUMPSUIT
flags = THICKMATERIAL
item_flags = THICKMATERIAL
species_restricted = null
/obj/item/clothing/shoes/lightrig
@@ -142,7 +141,7 @@
/obj/item/clothing/gloves/gauntlets/lightrig
name = "gloves"
flags = THICKMATERIAL
item_flags = THICKMATERIAL
body_parts_covered = HANDS
heat_protection = HANDS
cold_protection = HANDS
@@ -47,8 +47,7 @@
suit_type = "alien"
icon_state = "vox_rig"
armor = list(melee = 60, bullet = 50, laser = 40, energy = 15, bomb = 30, bio = 100, rad = 50)
flags = PHORONGUARD
item_flags = THICKMATERIAL
item_flags = THICKMATERIAL | PHORONGUARD
siemens_coefficient = 0.2
offline_slowdown = 2.5
allowed = list(
@@ -123,4 +122,4 @@
/obj/item/rig_module/vision,
/obj/item/rig_module/power_sink,
/obj/item/rig_module/self_destruct
)
)
@@ -80,7 +80,7 @@
/obj/item/clothing/shoes/lightrig/hacker
siemens_coefficient = 0.4
step_volume_mod = 0.3 //Special sneaky cyber-soles, for infiltration.
flags = NOSLIP //They're not magboots, so they're not super good for exterior hull walking, BUT for interior infiltration they'll do swell.
item_flags = NOSLIP //They're not magboots, so they're not super good for exterior hull walking, BUT for interior infiltration they'll do swell.
/obj/item/clothing/gloves/gauntlets/rig/light/hacker
siemens_coefficient = 0
@@ -8,8 +8,7 @@
desc = "A special helmet designed for work in a hazardous, low-pressure environment."
randpixel = 0
center_of_mass = null
flags = PHORONGUARD
item_flags = THICKMATERIAL | AIRTIGHT | ALLOW_SURVIVALFOOD
item_flags = THICKMATERIAL | AIRTIGHT | ALLOW_SURVIVALFOOD | PHORONGUARD
permeability_coefficient = 0.01
armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 100, rad = 50)
flags_inv = HIDEMASK|HIDEEARS|HIDEEYES|HIDEFACE|BLOCKHAIR
@@ -72,8 +71,7 @@
w_class = ITEMSIZE_HUGE // So you can't fit this in your bag and be prepared at all times.
gas_transfer_coefficient = 0.01
permeability_coefficient = 0.02
flags = PHORONGUARD
item_flags = THICKMATERIAL
item_flags = THICKMATERIAL | PHORONGUARD
body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|FEET|ARMS|HANDS
allowed = list(/obj/item/flashlight,/obj/item/tank/emergency/oxygen,/obj/item/suit_cooling_unit)
slowdown = 1.5
+2 -2
View File
@@ -543,7 +543,7 @@
name = "explorer suit"
desc = "A lightweight explorer plate carrier. It can be equipped with armor plates, but only protects from the cold on it's own."
icon_state = "explorer"
flags = THICKMATERIAL
item_flags = THICKMATERIAL
min_cold_protection_temperature = SPACE_SUIT_MIN_COLD_PROTECTION_TEMPERATURE
cold_protection = UPPER_TORSO|LOWER_TORSO|LEGS|ARMS
@@ -639,4 +639,4 @@
starting_accessories = list(/obj/item/clothing/accessory/armor/armorplate/bulletproof, /obj/item/clothing/accessory/armor/armguards/bulletproof, /obj/item/clothing/accessory/armor/legguards/bulletproof, /obj/item/clothing/accessory/storage/pouches)
/obj/item/clothing/suit/armor/pcarrier/riot/full
starting_accessories = list(/obj/item/clothing/accessory/armor/armorplate/riot, /obj/item/clothing/accessory/armor/armguards/riot, /obj/item/clothing/accessory/armor/legguards/riot, /obj/item/clothing/accessory/storage/pouches)
starting_accessories = list(/obj/item/clothing/accessory/armor/armorplate/riot, /obj/item/clothing/accessory/armor/armguards/riot, /obj/item/clothing/accessory/armor/legguards/riot, /obj/item/clothing/accessory/storage/pouches)
+3 -5
View File
@@ -10,8 +10,7 @@
flags_inv = HIDEMASK|HIDEEARS|HIDEEYES|BLOCKHAIR
body_parts_covered = HEAD|FACE|EYES
siemens_coefficient = 0.9
flags = PHORONGUARD
item_flags = THICKMATERIAL | ALLOW_SURVIVALFOOD
item_flags = THICKMATERIAL | ALLOW_SURVIVALFOOD | PHORONGUARD
/obj/item/clothing/suit/bio_suit
name = "bio suit"
@@ -26,8 +25,7 @@
armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 100, rad = 20)
flags_inv = HIDEGLOVES|HIDESHOES|HIDEJUMPSUIT|HIDETAIL|HIDETIE|HIDEHOLSTER
siemens_coefficient = 0.9
flags = PHORONGUARD
item_flags = THICKMATERIAL
item_flags = THICKMATERIAL | PHORONGUARD
//Standard biosuit, orange stripe
/obj/item/clothing/head/bio_hood/general
@@ -92,4 +90,4 @@
desc = "It protected doctors from the Black Death, back then. You bet your arse it's gonna help you against viruses."
icon_state = "plaguedoctor"
item_state_slots = list(slot_r_hand_str = "bio", slot_l_hand_str = "bio")
flags_inv = HIDEGLOVES|HIDEJUMPSUIT|HIDETAIL|HIDETIE|HIDEHOLSTER
flags_inv = HIDEGLOVES|HIDEJUMPSUIT|HIDETAIL|HIDETIE|HIDEHOLSTER
+1 -1
View File
@@ -381,7 +381,7 @@
desc = "An armoured suit for exploring harsh environments."
icon_state = "explorer"
item_state = "explorer"
flags = THICKMATERIAL
item_flags = THICKMATERIAL
body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|ARMS
min_cold_protection_temperature = SPACE_SUIT_MIN_COLD_PROTECTION_TEMPERATURE
cold_protection = UPPER_TORSO|LOWER_TORSO|LEGS|ARMS
+2 -4
View File
@@ -2,7 +2,7 @@
has_sensor = 0
species_restricted = list(SPECIES_VOX)
starting_accessories = list(/obj/item/clothing/accessory/storage/vox) // Dont' start with a backback, so free webbing
flags = PHORONGUARD
item_flags = PHORONGUARD
/obj/item/clothing/under/vox/vox_utility
name = "alien clothing"
@@ -22,9 +22,7 @@
name = "alien mesh"
desc = "An alien mesh. Seems to be made up mostly of pockets and writhing flesh."
icon_state = "webbing-vox"
flags = PHORONGUARD
item_flags = PHORONGUARD
slots = 3
/obj/item/clothing/accessory/storage/vox/Initialize()
+2 -1
View File
@@ -23,7 +23,8 @@
possible_transfer_amounts = list(5)
volume = 10
can_be_placed_into = null
flags = OPENCONTAINER | NOBLUDGEON
atom_flags = OPENCONTAINER
item_flags = NOBLUDGEON
unacidable = 0
drop_sound = 'sound/items/drop/cloth.ogg'
pickup_sound = 'sound/items/pickup/cloth.ogg'
+1 -1
View File
@@ -5,7 +5,7 @@
var/list/stored = list()
w_class = ITEMSIZE_SMALL
item_state = "electronic"
flags = NOBLUDGEON
item_flags = NOBLUDGEON
slot_flags = SLOT_BELT
var/reveal_fingerprints = TRUE
-1
View File
@@ -3,7 +3,6 @@
desc = "Swipe your ID card to make purchases electronically."
icon = 'icons/obj/stationobjs.dmi'
icon_state = "register_idle"
flags = NOBLUDGEON
req_access = list(access_heads)
anchored = 1
+2 -2
View File
@@ -5,7 +5,7 @@
pickup_sound = 'sound/items/pickup/device.ogg'
drop_sound = 'sound/items/drop/device.ogg'
icon_state = "retail_idle"
flags = NOBLUDGEON
item_flags = NOBLUDGEON
slot_flags = SLOT_BELT
req_access = list(access_heads)
w_class = ITEMSIZE_SMALL
@@ -425,4 +425,4 @@
account_to_connect = "Cargo"
/obj/item/retail_scanner/civilian
account_to_connect = "Civilian"
account_to_connect = "Civilian"
+1 -1
View File
@@ -37,7 +37,7 @@
if(!(S.z in affecting_z))
continue
var/area/A = get_area(S)
if(!A || A.flags & RAD_SHIELDED) // Rad shielding will protect from ions too
if(!A || A.area_flags & RAD_SHIELDED) // Rad shielding will protect from ions too
continue
to_chat(S, "<span class='warning'>Your integrated sensors detect an ionospheric anomaly. Your systems will be impacted as you begin a partial restart.</span>")
var/ionbug = rand(3, 9)
+1 -1
View File
@@ -37,7 +37,7 @@
var/area/A = get_area(C)
if(!A)
continue
if(A.flags & RAD_SHIELDED)
if(A.area_flags & RAD_SHIELDED)
continue
if(istype(C,/mob/living/carbon/human))
var/mob/living/carbon/human/H = C
+3 -3
View File
@@ -43,7 +43,7 @@
armor_stats += "\n"
if(flags & AIRTIGHT)
if(item_flags & AIRTIGHT)
armor_stats += "It is airtight. \n"
if(min_pressure_protection == 0)
@@ -54,7 +54,7 @@
if(max_pressure_protection != null)
armor_stats += "Wearing this will protect you from high pressures. \n"
if(flags & THICKMATERIAL)
if(item_flags & THICKMATERIAL)
armor_stats += "The material is exceptionally thick. \n"
if(max_heat_protection_temperature == FIRESUIT_MAX_HEAT_PROTECTION_TEMPERATURE)
@@ -80,4 +80,4 @@
if(slots.len)
armor_stats += "It can be worn on your [english_list(slots)]. \n"
return armor_stats
return armor_stats
+1 -1
View File
@@ -12,7 +12,7 @@
var/contain_state = "net_full"
w_class = ITEMSIZE_SMALL
flags = NOBLUDGEON
item_flags = NOBLUDGEON
slowdown = 0.5
@@ -23,7 +23,7 @@ var/global/const/DRINK_ICON_NOISY = "_noise"
amount_per_transfer_from_this = 5
possible_transfer_amounts = list(5,10,15,30)
flags = OPENCONTAINER
atom_flags = OPENCONTAINER
matter = list("glass" = 60)
@@ -163,4 +163,4 @@ var/global/const/DRINK_ICON_NOISY = "_noise"
if(afterattack(target, user)) //Check to see if harm intent & splash.
return
else
..() //If they're splashed, no need to do anything else.
..() //If they're splashed, no need to do anything else.
+2 -2
View File
@@ -1,7 +1,7 @@
/obj/item/reagent_containers/food/drinks/cans
volume = 40 //just over one and a half cups
amount_per_transfer_from_this = 5
flags = 0 //starts closed
atom_flags = 0 //starts closed
drop_sound = 'sound/items/drop/soda.ogg'
pickup_sound = 'sound/items/pickup/soda.ogg'
@@ -371,4 +371,4 @@
/obj/item/reagent_containers/food/drinks/cans/alecan/Initialize()
. = ..()
reagents.add_reagent("ale", 30)
reagents.add_reagent("ale", 30)
+1 -1
View File
@@ -10,7 +10,7 @@
desc = "Just your average condiment container."
icon = 'icons/obj/food.dmi'
icon_state = "emptycondiment"
flags = OPENCONTAINER
atom_flags = OPENCONTAINER
possible_transfer_amounts = list(1,5,10)
center_of_mass = list("x"=16, "y"=6)
volume = 50
+5 -5
View File
@@ -8,7 +8,7 @@
drop_sound = 'sound/items/drop/drinkglass.ogg'
pickup_sound = 'sound/items/pickup/drinkglass.ogg'
icon_state = null
flags = OPENCONTAINER
atom_flags = OPENCONTAINER
amount_per_transfer_from_this = 5
possible_transfer_amounts = list(5,10,15,25,30)
volume = 50
@@ -49,10 +49,10 @@
playsound(src,"canopen", rand(10,50), 1)
GLOB.cans_opened_roundstat++
to_chat(user, "<span class='notice'>You open [src] with an audible pop!</span>")
flags |= OPENCONTAINER
atom_flags |= OPENCONTAINER
/obj/item/reagent_containers/food/drinks/attack(mob/M as mob, mob/user as mob, def_zone)
if(force && !(flags & NOBLUDGEON) && user.a_intent == I_HURT)
if(force && !(item_flags & NOBLUDGEON) && user.a_intent == I_HURT)
return ..()
if(standard_feed_mob(user, M))
@@ -124,7 +124,7 @@
amount_per_transfer_from_this = 20
possible_transfer_amounts = null
volume = 150
flags = OPENCONTAINER
atom_flags = OPENCONTAINER
/obj/item/reagent_containers/food/drinks/golden_cup/on_reagent_change()
..()
@@ -418,4 +418,4 @@
desc = "Keeping your drinks at the perfect temperature since 1892."
icon_state = "vacuumflask"
volume = 60
center_of_mass = list("x"=15, "y"=4)
center_of_mass = list("x"=15, "y"=4)
+5 -5
View File
@@ -119,14 +119,14 @@
to_chat(user, "<span class='notice'>You stuff [R] into [src].</span>")
rag = R
rag.forceMove(src)
flags &= ~OPENCONTAINER
atom_flags &= ~OPENCONTAINER
update_icon()
/obj/item/reagent_containers/food/drinks/bottle/proc/remove_rag(mob/user)
if(!rag) return
user.put_in_hands(rag)
rag = null
flags |= (initial(flags) & OPENCONTAINER)
atom_flags |= (initial(atom_flags) & OPENCONTAINER)
update_icon()
/obj/item/reagent_containers/food/drinks/bottle/open(mob/user)
@@ -182,7 +182,7 @@
throw_speed = 3
throw_range = 5
item_state = "beer"
flags = NOCONDUCT
atom_flags = NOCONDUCT
attack_verb = list("stabbed", "slashed", "attacked")
sharp = 1
edge = 0
@@ -625,7 +625,7 @@
/obj/item/reagent_containers/food/drinks/bottle/small
volume = 50
smash_duration = 1
flags = 0 //starts closed
atom_flags = 0 //starts closed
rag_underlay = "rag_small"
/obj/item/reagent_containers/food/drinks/bottle/small/beer
@@ -732,4 +732,4 @@
/obj/item/reagent_containers/food/drinks/bottle/small/dr_gibb/Initialize()
. = ..()
reagents.add_reagent("dr_gibb", 50)
reagents.add_reagent("dr_gibb", 50)
+5 -5
View File
@@ -1816,7 +1816,7 @@
filling_color = "#ADAC7F"
center_of_mass = list("x"=16, "y"=14)
w_class = ITEMSIZE_TINY
flags = OPENCONTAINER
atom_flags = OPENCONTAINER
var/wrapped = 0
var/contents_type = "item"
var/monkey_type = "Monkey"
@@ -1849,7 +1849,7 @@
desc = "Just add water!"
to_chat(user, "You unwrap the cube.")
wrapped = 0
flags |= OPENCONTAINER
atom_flags |= OPENCONTAINER
return
/obj/item/reagent_containers/food/snacks/cube/On_Consume(var/mob/M)
@@ -1884,7 +1884,7 @@
/obj/item/reagent_containers/food/snacks/cube/monkeycube/wrapped
desc = "Still wrapped in some paper."
icon_state = "monkeycubewrap"
flags = 0
atom_flags = 0
wrapped = 1
/obj/item/reagent_containers/food/snacks/cube/monkeycube/farwacube
@@ -6856,7 +6856,7 @@
/obj/item/reagent_containers/food/snacks/canned
name = "void can"
icon = 'icons/obj/food_canned.dmi'
flags = 0
atom_flags = 0
var/sealed = TRUE
/obj/item/reagent_containers/food/snacks/canned/Initialize()
@@ -6869,7 +6869,7 @@
to_chat(user, "It is [sealed ? "" : "un"]sealed.")
/obj/item/reagent_containers/food/snacks/canned/proc/unseal()
flags |= OPENCONTAINER
atom_flags |= OPENCONTAINER
sealed = FALSE
update_icon()
+1 -1
View File
@@ -9,7 +9,7 @@
item_state = "atoxinbottle"
amount_per_transfer_from_this = 10
possible_transfer_amounts = list(5,10,15,25,30,60)
flags = 0
atom_flags = 0
volume = 60
drop_sound = 'sound/items/drop/bottle.ogg'
pickup_sound = 'sound/items/pickup/bottle.ogg'
+1 -1
View File
@@ -2,7 +2,7 @@
/obj/item/reagent_containers/glass/bottle/robot
amount_per_transfer_from_this = 10
possible_transfer_amounts = list(5,10,15,25,30,50,100)
flags = OPENCONTAINER
atom_flags = OPENCONTAINER
volume = 60
var/reagent = ""
@@ -8,7 +8,7 @@
var/max_space = 20//Maximum sum of w-classes of foods in this container at once
var/max_reagents = 80//Maximum units of reagents
var/food_items = 0 // Used for icon updates
flags = OPENCONTAINER | NOREACT
atom_flags = OPENCONTAINER | NOREACT
var/list/insertable = list(
/obj/item/reagent_containers/food/snacks,
/obj/item/holder,
@@ -22,7 +22,7 @@
/obj/item/reagent_containers/cooking_container/Initialize()
. = ..()
create_reagents(max_reagents)
flags |= OPENCONTAINER | NOREACT
atom_flags |= OPENCONTAINER | NOREACT
/obj/item/reagent_containers/cooking_container/examine(var/mob/user)
+2 -2
View File
@@ -15,7 +15,7 @@
density = 1
anchored = 0
use_power = USE_POWER_OFF
flags = OPENCONTAINER | NOREACT
atom_flags = OPENCONTAINER | NOREACT
var/list/product_types = list()
var/dispense_flavour = ICECREAM_VANILLA
@@ -193,4 +193,4 @@
#undef ICECREAM_STRAWBERRY
#undef ICECREAM_BLUE
#undef CONE_WAFFLE
#undef CONE_CHOC
#undef CONE_CHOC
+5 -5
View File
@@ -11,7 +11,7 @@
active_power_usage = 2000
clicksound = "button"
clickvol = "30"
flags = OPENCONTAINER | NOREACT
atom_flags = OPENCONTAINER | NOREACT
circuit = /obj/item/circuitboard/microwave
var/operating = 0 // Is it on?
var/dirty = 0 // = {0..100} Does it need cleaning?
@@ -100,7 +100,7 @@
src.icon_state = "mw"
src.broken = 0 // Fix it!
src.dirty = 0 // just to be sure
src.flags = OPENCONTAINER | NOREACT
src.atom_flags = OPENCONTAINER | NOREACT
else
to_chat(user, "<span class='warning'>It's broken!</span>")
return 1
@@ -119,7 +119,7 @@
src.dirty = 0 // It's clean!
src.broken = 0 // just to be sure
src.icon_state = "mw"
src.flags = OPENCONTAINER | NOREACT
src.atom_flags = OPENCONTAINER | NOREACT
else //Otherwise bad luck!!
to_chat(user, "<span class='warning'>It's dirty!</span>")
return 1
@@ -422,7 +422,7 @@
/obj/machinery/microwave/proc/muck_finish()
src.visible_message("<span class='warning'>The microwave gets covered in muck!</span>")
src.dirty = 100 // Make it dirty so it can't be used util cleaned
src.flags = null //So you can't add condiments
src.atom_flags = 0 //So you can't add condiments
src.icon_state = "mwbloody" // Make it look dirty too
src.operating = 0 // Turn it off again aferwards
src.updateUsrDialog()
@@ -436,7 +436,7 @@
src.icon_state = "mwb" // Make it look all busted up and shit
src.visible_message("<span class='warning'>The microwave breaks!</span>") //Let them know they're stupid
src.broken = 2 // Make it broken so it can't be used util fixed
src.flags = null //So you can't add condiments
src.atom_flags = 0 //So you can't add condiments
src.operating = 0 // Turn it off again aferwards
src.updateUsrDialog()
soundloop.stop()
@@ -12,7 +12,7 @@
use_power = USE_POWER_IDLE
idle_power_usage = 5
active_power_usage = 100
flags = NOREACT
atom_flags = NOREACT
var/max_n_of_items = 999 // Sorry but the BYOND infinite loop detector doesn't look things over 1000.
var/list/item_records = list()
var/datum/stored_item/currently_vending = null //What we're putting out of the machine.
@@ -234,14 +234,14 @@
amount = params["amount"]
else
amount = input("How many items?", "How many items would you like to take out?", 1) as num|null
if(QDELETED(src) || QDELETED(usr) || !usr.Adjacent(src))
return FALSE
var/index = text2num(params["index"])
if(index < 1 || index > LAZYLEN(item_records))
return TRUE
vend(item_records[index], amount)
return TRUE
return FALSE
+2 -2
View File
@@ -201,7 +201,7 @@
hit(50)
return
if(W.flags & NOBLUDGEON) return
if(W.item_flags & NOBLUDGEON) return
if(W.is_screwdriver())
to_chat(user, "<span class='notice'>It's a holowindow, you can't unfasten it!</span>")
@@ -288,7 +288,7 @@
throw_range = 5
throwforce = 0
w_class = ITEMSIZE_SMALL
flags = NOBLOODY
item_flags = NOBLOODY
var/active = 0
/obj/item/holo/esword/green
+1 -1
View File
@@ -31,7 +31,7 @@
/obj/machinery/station_map/Initialize()
. = ..()
flags |= ON_BORDER // Why? It doesn't help if its not density
atom_flags |= ON_BORDER // Why? It doesn't help if its not density
/obj/machinery/station_map/Initialize()
. = ..()
+1 -1
View File
@@ -5,7 +5,7 @@
icon = 'icons/obj/hydroponics_products.dmi'
icon_state = "blank"
desc = "Nutritious! Probably."
flags = NOCONDUCT
atom_flags = NOCONDUCT
slot_flags = SLOT_HOLSTER
drop_sound = 'sound/items/drop/herb.ogg'
pickup_sound = 'sound/items/pickup/herb.ogg'
+2 -2
View File
@@ -35,7 +35,7 @@
desc = "A reminder of meals gone by."
icon = 'icons/obj/trash.dmi'
icon_state = "corncob"
flags = NOCONDUCT
atom_flags = NOCONDUCT
w_class = ITEMSIZE_SMALL
throwforce = 0
throw_speed = 4
@@ -54,7 +54,7 @@
desc = "A peel from a banana."
icon = 'icons/obj/items.dmi'
icon_state = "banana_peel"
flags = NOCONDUCT
atom_flags = NOCONDUCT
w_class = ITEMSIZE_SMALL
throwforce = 0
throw_speed = 4
+1 -1
View File
@@ -5,7 +5,7 @@
icon_state = "hydrotray3"
density = 1
anchored = 1
flags = OPENCONTAINER
atom_flags = OPENCONTAINER
volume = 100
var/mechanical = 1 // Set to 0 to stop it from drawing the alert lights.
@@ -1,7 +1,7 @@
/obj/item/plantspray
icon = 'icons/obj/hydroponics_machines.dmi'
item_state = "spraycan"
flags = NOBLUDGEON
item_flags = NOBLUDGEON
slot_flags = SLOT_BELT
throwforce = 4
w_class = ITEMSIZE_SMALL
@@ -110,7 +110,7 @@
icon_state = "chemical_cell"
extended_desc = "This is effectively an internal beaker. It will consume and produce power from phoron, slime jelly, welding fuel, carbon,\
ethanol, nutriments and blood, in order of decreasing efficiency. It will consume fuel only if the battery can take more energy."
flags = OPENCONTAINER
atom_flags = OPENCONTAINER
complexity = 4
inputs = list()
outputs = list("volume used" = IC_PINTYPE_NUMBER,"self reference" = IC_PINTYPE_REF)
@@ -15,7 +15,7 @@
icon_state = "smoke"
extended_desc = "This smoke generator creates clouds of smoke on command. It can also hold liquids inside, which will go \
into the smoke clouds when activated. The reagents are consumed when smoke is made."
flags = OPENCONTAINER
atom_flags = OPENCONTAINER
complexity = 20
cooldown_per_use = 30 SECONDS
inputs = list()
@@ -52,7 +52,7 @@
icon_state = "injector"
extended_desc = "This autoinjector can push reagents into another container or someone else outside of the machine. The target \
must be adjacent to the machine, and if it is a person, they cannot be wearing thick clothing. A negative amount makes the injector draw out reagents."
flags = OPENCONTAINER
atom_flags = OPENCONTAINER
complexity = 20
cooldown_per_use = 6 SECONDS
inputs = list("target" = IC_PINTYPE_REF, "injection amount" = IC_PINTYPE_NUMBER)
@@ -186,7 +186,7 @@
extended_desc = "This is a pump, which will move liquids from the source ref to the target ref. The third pin determines \
how much liquid is moved per pulse, between 0 and 50. The pump can move reagents to any open container inside the machine, or \
outside the machine if it is next to the machine. Note that this cannot be used on entities."
flags = OPENCONTAINER
atom_flags = OPENCONTAINER
complexity = 8
inputs = list("source" = IC_PINTYPE_REF, "target" = IC_PINTYPE_REF, "injection amount" = IC_PINTYPE_NUMBER)
inputs_default = list("3" = 5)
@@ -240,7 +240,7 @@
desc = "Stores liquid inside, and away from electrical components. Can store up to 60u."
icon_state = "reagent_storage"
extended_desc = "This is effectively an internal beaker."
flags = OPENCONTAINER
atom_flags = OPENCONTAINER
complexity = 4
inputs = list()
outputs = list("volume used" = IC_PINTYPE_NUMBER,"self reference" = IC_PINTYPE_REF)
@@ -264,7 +264,7 @@
desc = "Stores liquid inside, and away from electrical components. Can store up to 60u. This will also suppress reactions."
icon_state = "reagent_storage_cryo"
extended_desc = "This is effectively an internal cryo beaker."
flags = OPENCONTAINER | NOREACT
atom_flags = OPENCONTAINER | NOREACT
complexity = 8
spawn_flags = IC_SPAWN_RESEARCH
origin_tech = list(TECH_MATERIAL = 4, TECH_ENGINEERING = 2, TECH_DATA = 2, TECH_BIO = 2)
@@ -274,7 +274,7 @@
desc = "Stores liquid inside, and away from electrical components. Can store up to 180u."
icon_state = "reagent_storage_big"
extended_desc = "This is effectively an internal beaker."
flags = OPENCONTAINER
atom_flags = OPENCONTAINER
complexity = 16
volume = 180
spawn_flags = IC_SPAWN_RESEARCH
@@ -285,7 +285,7 @@
desc = "Stores liquid inside, and away from electrical components. Can store up to 60u. On pulse this beaker will send list of contained reagents."
icon_state = "reagent_scan"
extended_desc = "Mostly useful for reagent filter."
flags = OPENCONTAINER
atom_flags = OPENCONTAINER
complexity = 8
outputs = list("volume used" = IC_PINTYPE_NUMBER,"self reference" = IC_PINTYPE_REF,"list of reagents" = IC_PINTYPE_LIST)
activators = list("scan" = IC_PINTYPE_PULSE_IN)
@@ -308,7 +308,7 @@
It will move all reagents, except list, given in fourth pin if amount value is positive.\
Or it will move only desired reagents if amount is negative, The third pin determines \
how much reagent is moved per pulse, between 0 and 50. Amount is given for each separate reagent."
flags = OPENCONTAINER
atom_flags = OPENCONTAINER
complexity = 8
inputs = list("source" = IC_PINTYPE_REF, "target" = IC_PINTYPE_REF, "injection amount" = IC_PINTYPE_NUMBER, "list of reagents" = IC_PINTYPE_LIST)
inputs_default = list("3" = 5)
@@ -356,6 +356,3 @@
source.reagents.trans_id_to(target, G.id, transfer_amount)
activate_pin(2)
push_data()
+2 -2
View File
@@ -174,7 +174,7 @@ Book Cart End
item_state = "book"
throw_speed = 1
throw_range = 5
flags = NOCONDUCT
atom_flags = NOCONDUCT
w_class = ITEMSIZE_NORMAL //upped to three because books are, y'know, pretty big. (and you could hide them inside eachother recursively forever)
attack_verb = list("bashed", "whacked", "educated")
var/dat // Actual page content
@@ -405,4 +405,4 @@ Book Cart End
to_chat(user, "<font color=green>Computer has been associated with this unit.</font>")
else
to_chat(user, "<font color=red>No associated computer found. Only local scans will function properly.</font>")
to_chat(user, "\n")
to_chat(user, "\n")
-9
View File
@@ -43,15 +43,6 @@
else
light = new /datum/light_source(src, .)
/atom/Initialize()
. = ..()
if(light_power && light_range)
update_light()
if(opacity && isturf(loc))
var/turf/T = loc
T.has_opaque_atom = TRUE // No need to recalculate it in this case, it's guranteed to be on afterwards anyways.
/atom/Destroy()
if(light)
+1 -1
View File
@@ -41,7 +41,7 @@
color = material.icon_colour
if(!material.conductive)
flags |= NOCONDUCT
atom_flags |= NOCONDUCT
matter = material.get_matter()
update_strings()
+2 -2
View File
@@ -29,7 +29,7 @@
if(istype(M, /mob/living/carbon/human))
var/mob/living/carbon/human/H = user
var/obj/item/clothing/gloves/G = H.gloves
if(istype(G) && ((G.flags & THICKMATERIAL && prob(70)) || istype(G, /obj/item/clothing/gloves/gauntlets)))
if(istype(G) && ((G.item_flags & THICKMATERIAL && prob(70)) || istype(G, /obj/item/clothing/gloves/gauntlets)))
burn_user = FALSE
if(burn_user)
@@ -52,4 +52,4 @@
qdel(src)
return
SSradiation.radiate(get_turf(src), amount * 2)
..()
..()
+2 -3
View File
@@ -751,7 +751,7 @@ var/global/list/mining_overlay_cache = list()
if(mineral_name && (mineral_name in GLOB.ore_data))
mineral = GLOB.ore_data[mineral_name]
if(initialized)
if(atom_flags & ATOM_INITIALIZED)
UpdateMineral()
update_icon()
@@ -767,7 +767,7 @@ var/global/list/mining_overlay_cache = list()
if(isnull(T.geologic_data))
T.geologic_data = new /datum/geosample(T)
if(isnull(T.finds) || isemptylist(T.finds))
T.finds = list()
if(prob(50))
@@ -792,4 +792,3 @@ var/global/list/mining_overlay_cache = list()
T.artifact_find = new()
T.update_icon()
+1 -1
View File
@@ -415,7 +415,7 @@
return 1
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 & ON_BORDER))
return 1
return 0
@@ -308,7 +308,7 @@ emp_act
if(!((I.damtype == BRUTE) || (I.damtype == HALLOSS)))
return
if(!(I.flags & NOBLOODY))
if(!(I.item_flags & NOBLOODY))
I.add_blood(src)
var/bloody = 0
@@ -145,7 +145,7 @@ Whatever you did that made the last camera window disappear-- don't do that agai
name = ""
icon = 'icons/misc/pic_in_pic.dmi'
icon_state = "room_background"
flags = NOJAUNT
atom_flags = NOJAUNT
plane = SPACE_PLANE
layer = AREA_LAYER + 0.1
@@ -10,7 +10,7 @@
drop_sound = 'sound/items/drop/device.ogg'
icon_state = "gripper"
flags = NOBLUDGEON
item_flags = NOBLUDGEON
//Has a list of items that it can hold.
var/list/can_hold = list(
+1 -1
View File
@@ -19,7 +19,7 @@
name = "grab"
icon = 'icons/mob/screen1.dmi'
icon_state = "reinforce"
flags = 0
atom_flags = 0
var/obj/screen/grab/hud = null
var/mob/living/affecting = null
var/mob/living/carbon/human/assailant = null
+2 -2
View File
@@ -357,14 +357,14 @@
// Called on everything that falling_atom might hit. Return TRUE if you're handling it so find_fall_target() will stop checking.
/atom/proc/CheckFall(var/atom/movable/falling_atom)
if(density && !(flags & ON_BORDER))
if(density && !(atom_flags & ON_BORDER))
return TRUE
// If you are hit: how is it handled.
// Return TRUE if the generic fall_impact should be called
// Return FALSE if you handled it yourself or if there's no effect from hitting you
/atom/proc/check_impact(var/atom/movable/falling_atom)
if(density && !(flags & ON_BORDER))
if(density && !(atom_flags & ON_BORDER))
return TRUE
// By default all turfs are gonna let you hit them regardless of density.
+1 -1
View File
@@ -181,7 +181,7 @@ GLOBAL_LIST_BOILERPLATE(all_brain_organs, /obj/item/organ/internal/brain)
decays = FALSE
parent_organ = BP_TORSO
clone_source = TRUE
flags = OPENCONTAINER
atom_flags = OPENCONTAINER
var/list/owner_flavor_text = list()
/obj/item/organ/internal/brain/slime/is_open_container()
+3 -3
View File
@@ -84,7 +84,7 @@
/obj/effect/shuttle_landmark/ship
name = "Open Space"
landmark_tag = "ship"
flags = SLANDMARK_FLAG_ZERO_G // *Not* AUTOSET, these must be world.turf and world.area for lazy loading to work.
atom_flags = SLANDMARK_FLAG_ZERO_G // *Not* AUTOSET, these must be world.turf and world.area for lazy loading to work.
var/shuttle_name
var/list/visitors // landmark -> visiting shuttle stationed there
@@ -117,7 +117,7 @@
//
/obj/effect/shuttle_landmark/visiting_shuttle
flags = SLANDMARK_FLAG_AUTOSET | SLANDMARK_FLAG_ZERO_G
atom_flags = SLANDMARK_FLAG_AUTOSET | SLANDMARK_FLAG_ZERO_G
var/obj/effect/shuttle_landmark/ship/core_landmark
/obj/effect/shuttle_landmark/visiting_shuttle/Initialize(mapload, obj/effect/shuttle_landmark/ship/master, _name)
@@ -207,4 +207,4 @@
if(SHIP_STATUS_TRANSIT)
return "Maneuvering under secondary thrust."
if(SHIP_STATUS_OVERMAP)
return "In open space."
return "In open space."
+1 -1
View File
@@ -17,7 +17,7 @@
pixel_x = rand(-9, 9)
if(newPaper)
internalPaper = newPaper
flags = newPaper.flags
atom_flags = newPaper.atom_flags
color = newPaper.color
newPaper.forceMove(src)
else
+1 -1
View File
@@ -116,7 +116,7 @@
*/
/obj/item/pen/reagent
flags = OPENCONTAINER
atom_flags = OPENCONTAINER
origin_tech = list(TECH_MATERIAL = 2, TECH_ILLEGAL = 5)
/obj/item/pen/reagent/Initialize()
@@ -77,7 +77,7 @@
if(!T || !(T.z in using_map.station_levels) )
return FALSE
var/area/A = get_area(T)
if(!A || (A.flags & AREA_FLAG_IS_NOT_PERSISTENT))
if(!A || (A.area_flags & AREA_FLAG_IS_NOT_PERSISTENT))
return FALSE
return TRUE
@@ -104,7 +104,7 @@
/datum/persistent/proc/Shutdown()
if(fexists(filename))
fdel(filename)
var/list/to_store = list()
for(var/thing in SSpersistence.tracking_values[type])
if(!IsValidEntry(thing))
@@ -121,10 +121,10 @@
var/list/my_tracks = SSpersistence.tracking_values[type]
if(!my_tracks?.len)
return
. = list("<tr><td colspan = 4><b>[capitalize(name)]</b></td></tr>")
. += "<tr><td colspan = 4><hr></td></tr>"
for(var/thing in my_tracks)
. += "<tr>[GetAdminDataStringFor(thing, can_modify, user)]</tr>"
. += "<tr><td colspan = 4><hr></td></tr>"
@@ -147,4 +147,4 @@
if(.)
var/mob/user = locate(href_list["caller"])
if(user)
SSpersistence.show_info(user)
SSpersistence.show_info(user)
+1 -1
View File
@@ -231,7 +231,7 @@ var/global/list/possible_cable_coil_colours = list(
shock(user, 5, 0.2)
else
if(!(W.flags & NOCONDUCT))
if(!(W.atom_flags & NOCONDUCT))
shock(user, 50, 0.7)
src.add_fingerprint(user)
+2 -2
View File
@@ -550,7 +550,7 @@ var/global/list/light_type_cache = list()
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 & NOCONDUCT))
if(on && !(W.atom_flags & NOCONDUCT))
//if(!user.mutations & COLD_RESISTANCE)
if (prob(12))
electrocute_mob(user, get_area(src), src, 0.3)
@@ -570,7 +570,7 @@ var/global/list/light_type_cache = list()
return
to_chat(user, "You stick \the [W] into the light socket!")
if(has_power() && !(W.flags & NOCONDUCT))
if(has_power() && !(W.atom_flags & NOCONDUCT))
var/datum/effect_system/spark_spread/s = new /datum/effect_system/spark_spread
s.set_up(3, 1, src)
s.start()
+2 -2
View File
@@ -135,7 +135,7 @@
var/impact_effect_type = null
var/list/impacted_mobs = list()
// TGMC Ammo HUD Port
var/hud_state = "unknown" // What HUD state we use when we have ammunition.
var/hud_state_empty = "unknown" // The empty state. DON'T USE _FLASH IN THE NAME OF THE EMPTY STATE STRING, THAT IS ADDED BY THE CODE.
@@ -636,7 +636,7 @@
return 1
/obj/item/projectile/proc/check_fire(atom/target as mob, mob/living/user as mob) //Checks if you can hit them or not.
check_trajectory(target, user, pass_flags, flags)
check_trajectory(target, user, pass_flags, atom_flags)
/obj/item/projectile/CanPass()
return TRUE
+3 -3
View File
@@ -1,6 +1,6 @@
// Helper proc to check if you can hit them or not.
// Will return a list of hit mobs/objects.
/proc/check_trajectory(atom/target as mob|obj, atom/firer as mob|obj, var/pass_flags=PASSTABLE|PASSGLASS|PASSGRILLE, flags=null)
/proc/check_trajectory(atom/target as mob|obj, atom/firer as mob|obj, var/pass_flags=PASSTABLE|PASSGLASS|PASSGRILLE, flags=0)
if(!istype(target) || !istype(firer))
return 0
@@ -8,13 +8,13 @@
//Set the flags and pass flags to that of the real projectile...
if(!isnull(flags))
trace.flags = flags
trace.atom_flags = flags
trace.pass_flags = pass_flags
return trace.launch_projectile(target) //Test it!
/obj/item/projectile/proc/_check_fire(atom/target as mob, var/mob/living/user as mob) //Checks if you can hit them or not.
check_trajectory(target, user, pass_flags, flags)
check_trajectory(target, user, pass_flags, atom_flags)
//"Tracing" projectile
/obj/item/projectile/test //Used to see if you can hit them.
+2 -2
View File
@@ -1,7 +1,7 @@
/datum/reagents/distilling/handle_reactions()
if(QDELETED(my_atom))
return FALSE
if(my_atom.flags & NOREACT)
if(my_atom.atom_flags & NOREACT)
return FALSE
var/reaction_occurred
var/list/eligible_reactions = list()
@@ -23,4 +23,4 @@
for(var/i in effect_reactions)
var/decl/chemical_reaction/C = i
C.post_reaction(src)
update_total()
update_total()
+1 -1
View File
@@ -78,7 +78,7 @@
/datum/reagents/proc/handle_reactions()
if(QDELETED(my_atom))
return FALSE
if(my_atom.flags & NOREACT)
if(my_atom.atom_flags & NOREACT)
return FALSE
var/reaction_occurred
var/list/eligible_reactions = list()
@@ -19,7 +19,7 @@
var/pillsprite = 1
var/max_pill_count = 20
var/printing = FALSE
flags = OPENCONTAINER
atom_flags = OPENCONTAINER
clicksound = "button"
/obj/machinery/chem_master/Initialize()
@@ -495,4 +495,4 @@
/obj/machinery/chem_master/condimaster
name = "CondiMaster 3000"
condi = 1
condi = 1
@@ -53,11 +53,11 @@
to_chat(user, span("notice", "Contains [R.volume]u of <b>[R.name]</b>.<br>[R.description]<br>"))
// Last, unseal it if it's an autoinjector.
if(istype(I,/obj/item/reagent_containers/hypospray/autoinjector/biginjector) && !(I.flags & OPENCONTAINER))
I.flags |= OPENCONTAINER
if(istype(I,/obj/item/reagent_containers/hypospray/autoinjector/biginjector) && !(I.atom_flags & OPENCONTAINER))
I.atom_flags |= OPENCONTAINER
to_chat(user, span("notice", "Sample container unsealed.<br>"))
to_chat(user, span("notice", "Scanning of \the [I] complete."))
analyzing = FALSE
update_icon()
return
return
@@ -55,10 +55,10 @@
..()
if (is_open_container())
to_chat(usr, "<span class = 'notice'>You put the cap on \the [src].</span>")
flags ^= OPENCONTAINER
atom_flags ^= OPENCONTAINER
else
to_chat(usr, "<span class = 'notice'>You take the cap off \the [src].</span>")
flags |= OPENCONTAINER
atom_flags |= OPENCONTAINER
/obj/item/reagent_containers/chem_disp_cartridge/afterattack(obj/target, mob/user , flag)
if (!is_open_container() || !flag)
@@ -14,7 +14,7 @@
possible_transfer_amounts = list(5,10,15,25,30,60)
volume = 60
w_class = ITEMSIZE_SMALL
flags = OPENCONTAINER | NOCONDUCT
atom_flags = OPENCONTAINER | NOCONDUCT
unacidable = 1 //glass doesn't dissolve in acid
drop_sound = 'sound/items/drop/bottle.ogg'
pickup_sound = 'sound/items/pickup/bottle.ogg'
@@ -74,14 +74,14 @@
..()
if(is_open_container())
to_chat(usr, "<span class = 'notice'>You put the lid on \the [src].</span>")
flags ^= OPENCONTAINER
atom_flags ^= OPENCONTAINER
else
to_chat(usr, "<span class = 'notice'>You take the lid off \the [src].</span>")
flags |= OPENCONTAINER
atom_flags |= OPENCONTAINER
update_icon()
/obj/item/reagent_containers/glass/attack(mob/M as mob, mob/user as mob, def_zone)
if(force && !(flags & NOBLUDGEON) && user.a_intent == I_HURT)
if(force && !(item_flags & NOBLUDGEON) && user.a_intent == I_HURT)
return ..()
if(standard_feed_mob(user, M))
@@ -134,7 +134,7 @@
update_name_label()
if(istype(W,/obj/item/storage/bag))
..()
if(W && W.w_class <= w_class && (flags & OPENCONTAINER) && user.a_intent != I_HELP)
if(W && W.w_class <= w_class && (atom_flags & OPENCONTAINER) && user.a_intent != I_HELP)
to_chat(user, "<span class='notice'>You dip \the [W] into \the [src].</span>")
reagents.touch_obj(W, reagents.total_volume)
@@ -209,7 +209,7 @@
volume = 120
amount_per_transfer_from_this = 10
possible_transfer_amounts = list(5,10,15,25,30,60,120)
flags = OPENCONTAINER
atom_flags = OPENCONTAINER
/obj/item/reagent_containers/glass/beaker/noreact
name = "cryostasis beaker"
@@ -219,7 +219,7 @@
matter = list("glass" = 500)
volume = 60
amount_per_transfer_from_this = 10
flags = OPENCONTAINER | NOREACT
atom_flags = OPENCONTAINER | NOREACT
/obj/item/reagent_containers/glass/beaker/bluespace
name = "bluespace beaker"
@@ -230,7 +230,7 @@
volume = 300
amount_per_transfer_from_this = 10
possible_transfer_amounts = list(5,10,15,25,30,60,120,300)
flags = OPENCONTAINER
atom_flags = OPENCONTAINER
/obj/item/reagent_containers/glass/beaker/vial
name = "vial"
@@ -242,7 +242,7 @@
w_class = ITEMSIZE_TINY
amount_per_transfer_from_this = 10
possible_transfer_amounts = list(5,10,15,30)
flags = OPENCONTAINER
atom_flags = OPENCONTAINER
/obj/item/reagent_containers/glass/beaker/cryoxadone
name = "beaker (cryoxadone)"
@@ -259,7 +259,7 @@
volume = 120
amount_per_transfer_from_this = 10
possible_transfer_amounts = list(5,10,15,25,30,60,120)
flags = OPENCONTAINER
atom_flags = OPENCONTAINER
/obj/item/reagent_containers/glass/bucket
desc = "It's a bucket."
@@ -273,7 +273,7 @@
amount_per_transfer_from_this = 20
possible_transfer_amounts = list(10,20,30,60,120)
volume = 120
flags = OPENCONTAINER
atom_flags = OPENCONTAINER
unacidable = 0
drop_sound = 'sound/items/drop/helm.ogg'
pickup_sound = 'sound/items/pickup/helm.ogg'
@@ -331,7 +331,7 @@
amount_per_transfer_from_this = 20
possible_transfer_amounts = list(10,20,30,60,120)
volume = 120
flags = OPENCONTAINER
atom_flags = OPENCONTAINER
unacidable = 0
drop_sound = 'sound/items/drop/wooden.ogg'
pickup_sound = 'sound/items/pickup/wooden.ogg'
@@ -12,7 +12,7 @@
unacidable = 1
volume = 30
possible_transfer_amounts = null
flags = OPENCONTAINER
atom_flags = OPENCONTAINER
slot_flags = SLOT_BELT
drop_sound = 'sound/items/drop/gun.ogg'
pickup_sound = 'sound/items/pickup/gun.ogg'
@@ -115,7 +115,7 @@
if(!do_after(user,30) || loaded_vial || !(W in user))
return 0
if(W.is_open_container())
W.flags ^= OPENCONTAINER
W.atom_flags ^= OPENCONTAINER
W.update_icon()
user.drop_item()
W.loc = src
@@ -152,13 +152,13 @@
/obj/item/reagent_containers/hypospray/autoinjector/used/Initialize()
. = ..()
flags &= ~OPENCONTAINER
atom_flags &= ~OPENCONTAINER
icon_state = "[initial(icon_state)]0"
/obj/item/reagent_containers/hypospray/autoinjector/do_injection(mob/living/carbon/human/H, mob/living/user)
. = ..()
if(.) // Will occur if successfully injected.
flags &= ~OPENCONTAINER
atom_flags &= ~OPENCONTAINER
update_icon()
/obj/item/reagent_containers/hypospray/autoinjector/update_icon()
@@ -5,7 +5,8 @@
icon_state = "cleaner"
item_state = "cleaner"
center_of_mass = list("x" = 16,"y" = 10)
flags = OPENCONTAINER|NOBLUDGEON
atom_flags = OPENCONTAINER
item_flags = NOBLUDGEON
matter = list("glass" = 300, MAT_STEEL = 300)
slot_flags = SLOT_BELT
throwforce = 3
@@ -7,102 +7,102 @@
// The good.
/obj/item/reagent_containers/hypospray/autoinjector/bonemed/unidentified
init_hide_identity = TRUE
flags = 0
atom_flags = 0
/obj/item/reagent_containers/hypospray/autoinjector/clonemed/unidentified
init_hide_identity = TRUE
flags = 0
atom_flags = 0
/obj/item/reagent_containers/hypospray/autoinjector/biginjector/brute/unidentified
init_hide_identity = TRUE
flags = 0
atom_flags = 0
/obj/item/reagent_containers/hypospray/autoinjector/biginjector/burn/unidentified
init_hide_identity = TRUE
flags = 0
atom_flags = 0
/obj/item/reagent_containers/hypospray/autoinjector/biginjector/toxin/unidentified
init_hide_identity = TRUE
flags = 0
atom_flags = 0
/obj/item/reagent_containers/hypospray/autoinjector/biginjector/oxy/unidentified
init_hide_identity = TRUE
flags = 0
atom_flags = 0
/obj/item/reagent_containers/hypospray/autoinjector/biginjector/purity/unidentified
init_hide_identity = TRUE
flags = 0
atom_flags = 0
/obj/item/reagent_containers/hypospray/autoinjector/biginjector/pain/unidentified
init_hide_identity = TRUE
flags = 0
atom_flags = 0
/obj/item/reagent_containers/hypospray/autoinjector/biginjector/organ/unidentified
init_hide_identity = TRUE
flags = 0
atom_flags = 0
/obj/item/reagent_containers/hypospray/autoinjector/biginjector/clotting/unidentified
init_hide_identity = TRUE
flags = 0
atom_flags = 0
/obj/item/reagent_containers/hypospray/autoinjector/biginjector/combat/unidentified
init_hide_identity = TRUE
flags = 0
atom_flags = 0
/obj/item/reagent_containers/hypospray/autoinjector/biginjector/healing_nanites/unidentified
init_hide_identity = TRUE
flags = 0
atom_flags = 0
// The somewhat bad.
/obj/item/reagent_containers/hypospray/autoinjector/biginjector/stimm/unidentified
init_hide_identity = TRUE
flags = 0
atom_flags = 0
/obj/item/reagent_containers/hypospray/autoinjector/biginjector/bliss/unidentified
init_hide_identity = TRUE
flags = 0
atom_flags = 0
/obj/item/reagent_containers/hypospray/autoinjector/biginjector/expired/unidentified
init_hide_identity = TRUE
flags = 0
atom_flags = 0
/obj/item/reagent_containers/hypospray/autoinjector/biginjector/serotrotium/unidentified
init_hide_identity = TRUE
flags = 0
atom_flags = 0
/obj/item/reagent_containers/hypospray/autoinjector/biginjector/cryptobiolin/unidentified
init_hide_identity = TRUE
flags = 0
atom_flags = 0
/obj/item/reagent_containers/hypospray/autoinjector/biginjector/mindbreaker/unidentified
init_hide_identity = TRUE
flags = 0
atom_flags = 0
/obj/item/reagent_containers/hypospray/autoinjector/biginjector/psilocybin/unidentified
init_hide_identity = TRUE
flags = 0
atom_flags = 0
/obj/item/reagent_containers/hypospray/autoinjector/biginjector/soporific/unidentified
init_hide_identity = TRUE
flags = 0
atom_flags = 0
// The very bad.
/obj/item/reagent_containers/hypospray/autoinjector/biginjector/cyanide/unidentified
init_hide_identity = TRUE
flags = 0
atom_flags = 0
/obj/item/reagent_containers/hypospray/autoinjector/biginjector/impedrezene/unidentified
init_hide_identity = TRUE
flags = 0
atom_flags = 0
/obj/item/reagent_containers/hypospray/autoinjector/biginjector/mutagen/unidentified
init_hide_identity = TRUE
flags = 0
atom_flags = 0
/obj/item/reagent_containers/hypospray/autoinjector/biginjector/defective_nanites/unidentified
init_hide_identity = TRUE
flags = 0
atom_flags = 0
/obj/item/reagent_containers/hypospray/autoinjector/biginjector/contaminated/unidentified
init_hide_identity = TRUE
flags = 0
atom_flags = 0
@@ -6,7 +6,6 @@
var/obj/wrapped = null
density = 1
var/sortTag = null
flags = NOBLUDGEON
mouse_drag_pointer = MOUSE_ACTIVE_POINTER
var/examtext = null
var/nameset = 0
+1 -1
View File
@@ -7,7 +7,7 @@ using metal and glass, it uses glass and reagents (usually sulphuric acid).
/obj/machinery/r_n_d/circuit_imprinter
name = "Circuit Imprinter"
icon_state = "circuit_imprinter"
flags = OPENCONTAINER
atom_flags = OPENCONTAINER
circuit = /obj/item/circuitboard/circuit_imprinter
var/list/datum/design/queue = list()
var/progress = 0
+2 -2
View File
@@ -1,7 +1,7 @@
/obj/machinery/r_n_d/protolathe
name = "Protolathe"
icon_state = "protolathe"
flags = OPENCONTAINER
atom_flags = OPENCONTAINER
circuit = /obj/item/circuitboard/protolathe
use_power = USE_POWER_IDLE
idle_power_usage = 30
@@ -237,4 +237,4 @@
return
materials[material] -= ejected * S.perunit
if(recursive && materials[material] >= S.perunit)
eject_materials(material, -1)
eject_materials(material, -1)
+3 -3
View File
@@ -7,7 +7,7 @@
unacidable = 1
simulated = 0
invisibility = 101
flags = SLANDMARK_FLAG_AUTOSET // We generally want to use current area/turf as base.
atom_flags = SLANDMARK_FLAG_AUTOSET // We generally want to use current area/turf as base.
//ID of the landmark
var/landmark_tag
@@ -30,7 +30,7 @@
. = INITIALIZE_HINT_LATELOAD
// Even if this flag is set, hardcoded values take precedence.
if(flags & SLANDMARK_FLAG_AUTOSET)
if(atom_flags & SLANDMARK_FLAG_AUTOSET)
if(ispath(base_area))
var/area/A = locate(base_area)
if(!istype(A))
@@ -123,7 +123,7 @@
/obj/effect/shuttle_landmark/automatic
name = "Navpoint"
landmark_tag = "navpoint"
flags = SLANDMARK_FLAG_AUTOSET
atom_flags = SLANDMARK_FLAG_AUTOSET
/obj/effect/shuttle_landmark/automatic/Initialize()
landmark_tag += "-[x]-[y]-[z]-[random_id("landmarks",1,9999)]"
+1 -1
View File
@@ -290,7 +290,7 @@
// If shuttle has no internal gravity, update our gravity with destination gravity
if((flags & SHUTTLE_FLAGS_ZERO_G))
var/new_grav = 1
if(destination.flags & SLANDMARK_FLAG_ZERO_G)
if(destination.atom_flags & SLANDMARK_FLAG_ZERO_G)
var/area/new_area = get_area(destination)
new_grav = new_area.has_gravity
for(var/area/our_area in shuttle_area)
+1 -1
View File
@@ -215,4 +215,4 @@
return //do nothing for now
/obj/effect/shuttle_landmark/transit
flags = SLANDMARK_FLAG_ZERO_G|SLANDMARK_FLAG_AUTOSET
atom_flags = SLANDMARK_FLAG_ZERO_G|SLANDMARK_FLAG_AUTOSET
@@ -91,7 +91,7 @@
/obj/effect/dummy/spell_jaunt/relaymove(var/mob/user, direction)
if (!src.canmove || reappearing) return
var/turf/newLoc = get_step(src,direction)
if(!(newLoc.flags & NOJAUNT))
if(!(newLoc.atom_flags & NOJAUNT))
loc = newLoc
var/turf/T = get_turf(loc)
if(!T.contains_dense_objects())
@@ -104,4 +104,4 @@
/obj/effect/dummy/spell_jaunt/ex_act(blah)
return
/obj/effect/dummy/spell_jaunt/bullet_act(blah)
return
return
+3 -3
View File
@@ -88,7 +88,7 @@
layer = ABOVE_MOB_LAYER
climbable = 0 //flipping tables allows them to be used as makeshift barriers
flipped = 1
flags |= ON_BORDER
atom_flags |= ON_BORDER
for(var/D in list(turn(direction, 90), turn(direction, -90)))
var/obj/structure/table/T = locate() in get_step(src,D)
if(T && T.flipped == 0 && material && T.material && T.material.name == material.name)
@@ -106,7 +106,7 @@
reset_plane_and_layer()
flipped = 0
climbable = initial(climbable)
flags &= ~ON_BORDER
atom_flags &= ~ON_BORDER
for(var/D in list(turn(dir, 90), turn(dir, -90)))
var/obj/structure/table/T = locate() in get_step(src.loc,D)
if(T && T.flipped == 1 && T.dir == src.dir && material && T.material&& T.material.name == material.name)
@@ -115,4 +115,4 @@
update_connections(1)
update_icon()
return 1
return 1
+1 -4
View File
@@ -12,7 +12,7 @@
origin_tech = list(TECH_BIO = 4)
var/uses = 1 // uses before it goes inert
var/enhanced = FALSE
flags = OPENCONTAINER
atom_flags = OPENCONTAINER
/obj/item/slime_extract/Initialize()
@@ -986,6 +986,3 @@
/decl/chemical_reaction/instant/slime/rainbow_unity/on_reaction(var/datum/reagents/holder)
new /obj/item/slimepotion/unity(get_turf(holder.my_atom))
..()