diff --git a/code/ATMOSPHERICS/atmospherics.dm b/code/ATMOSPHERICS/atmospherics.dm
index 9481a7f603c..f34dd1ce993 100644
--- a/code/ATMOSPHERICS/atmospherics.dm
+++ b/code/ATMOSPHERICS/atmospherics.dm
@@ -12,6 +12,7 @@ GLOBAL_DATUM_INIT(pipe_icon_manager, /datum/pipe_icon_manager, new())
/obj/machinery/atmospherics
anchored = 1
layer = GAS_PIPE_HIDDEN_LAYER //under wires
+ resistance_flags = FIRE_PROOF
plane = FLOOR_PLANE
idle_power_usage = 0
active_power_usage = 0
diff --git a/code/ATMOSPHERICS/components/unary_devices/heat_exchanger.dm b/code/ATMOSPHERICS/components/unary_devices/heat_exchanger.dm
index e4afcadc7fa..0eface28b85 100644
--- a/code/ATMOSPHERICS/components/unary_devices/heat_exchanger.dm
+++ b/code/ATMOSPHERICS/components/unary_devices/heat_exchanger.dm
@@ -10,7 +10,6 @@
var/obj/machinery/atmospherics/unary/heat_exchanger/partner = null
var/update_cycle
- burn_state = LAVA_PROOF
/obj/machinery/atmospherics/unary/heat_exchanger/update_icon()
..()
diff --git a/code/ATMOSPHERICS/components/unary_devices/outlet_injector.dm b/code/ATMOSPHERICS/components/unary_devices/outlet_injector.dm
index 5302a99caa1..a312a28b36e 100644
--- a/code/ATMOSPHERICS/components/unary_devices/outlet_injector.dm
+++ b/code/ATMOSPHERICS/components/unary_devices/outlet_injector.dm
@@ -4,6 +4,8 @@
use_power = IDLE_POWER_USE
layer = GAS_SCRUBBER_LAYER
+ resistance_flags = FIRE_PROOF | UNACIDABLE | ACID_PROOF //really helpful in building gas chambers for xenomorphs
+
can_unwrench = 1
name = "air injector"
@@ -39,7 +41,7 @@
/obj/machinery/atmospherics/unary/outlet_injector/update_icon()
..()
-
+
if(!powered())
icon_state = "off"
else
diff --git a/code/ATMOSPHERICS/pipes/simple/pipe_simple_he.dm b/code/ATMOSPHERICS/pipes/simple/pipe_simple_he.dm
index cb7ec277f95..654ee16ea98 100644
--- a/code/ATMOSPHERICS/pipes/simple/pipe_simple_he.dm
+++ b/code/ATMOSPHERICS/pipes/simple/pipe_simple_he.dm
@@ -12,6 +12,7 @@
color = "#404040"
buckle_lying = 1
var/icon_temperature = T20C //stop small changes in temperature causing icon refresh
+ resistance_flags = LAVA_PROOF | FIRE_PROOF
/obj/machinery/atmospherics/pipe/simple/heat_exchanging/process_atmos()
var/environment_temperature = 0
diff --git a/code/LINDA/LINDA_fire.dm b/code/LINDA/LINDA_fire.dm
index 00fddd5b1f0..8b3347eec4f 100644
--- a/code/LINDA/LINDA_fire.dm
+++ b/code/LINDA/LINDA_fire.dm
@@ -47,7 +47,6 @@
/obj/effect/hotspot
anchored = 1
mouse_opacity = MOUSE_OPACITY_TRANSPARENT
- unacidable = 1//So you can't melt fire with acid.
icon = 'icons/goonstation/effects/fire.dmi'
icon_state = "1"
layer = MASSIVE_OBJ_LAYER
diff --git a/code/_onclick/hud/screen_objects.dm b/code/_onclick/hud/screen_objects.dm
index 739b059f3bd..dc9b8674c69 100644
--- a/code/_onclick/hud/screen_objects.dm
+++ b/code/_onclick/hud/screen_objects.dm
@@ -11,9 +11,7 @@
icon = 'icons/mob/screen_gen.dmi'
layer = HUD_LAYER
plane = HUD_PLANE
- resistance_flags = INDESTRUCTIBLE
- burn_state = LAVA_PROOF
- unacidable = TRUE
+ resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | UNACIDABLE | ACID_PROOF
var/obj/master = null //A reference to the object in the slot. Grabs or items, generally.
var/datum/hud/hud = null
appearance_flags = NO_CLIENT_COLOR
diff --git a/code/datums/spells/ethereal_jaunt.dm b/code/datums/spells/ethereal_jaunt.dm
index 10695595c75..31827fedbee 100644
--- a/code/datums/spells/ethereal_jaunt.dm
+++ b/code/datums/spells/ethereal_jaunt.dm
@@ -78,7 +78,7 @@
density = 0
anchored = 1
invisibility = 60
- burn_state = LAVA_PROOF
+ resistance_flags = LAVA_PROOF | FIRE_PROOF | UNACIDABLE | ACID_PROOF
/obj/effect/dummy/spell_jaunt/Destroy()
// Eject contents if deleted somehow
diff --git a/code/game/gamemodes/cult/cult_structures.dm b/code/game/gamemodes/cult/cult_structures.dm
index c6a6a3b7490..76d78666199 100644
--- a/code/game/gamemodes/cult/cult_structures.dm
+++ b/code/game/gamemodes/cult/cult_structures.dm
@@ -263,7 +263,6 @@ var/list/blacklisted_pylon_turfs = typecacheof(list(
icon = 'icons/obj/cult.dmi'
icon_state = "hole"
density = 1
- unacidable = 1
anchored = 1.0
/obj/effect/gateway/Bumped(mob/M as mob|obj)
diff --git a/code/game/gamemodes/cult/runes.dm b/code/game/gamemodes/cult/runes.dm
index 56f07d52826..d0b872ae006 100644
--- a/code/game/gamemodes/cult/runes.dm
+++ b/code/game/gamemodes/cult/runes.dm
@@ -18,9 +18,9 @@ To draw a rune, use an arcane tome.
anchored = 1
icon = 'icons/obj/rune.dmi'
icon_state = "1"
+ resistance_flags = FIRE_PROOF | UNACIDABLE | ACID_PROOF
var/visibility = 0
var/view_range = 7
- unacidable = 1
layer = TURF_LAYER
var/invocation = "Aiy ele-mayo!" //This is said by cultists when the rune is invoked.
diff --git a/code/game/gamemodes/miniantags/abduction/machinery/camera.dm b/code/game/gamemodes/miniantags/abduction/machinery/camera.dm
index 25b9025a764..951ee6806de 100644
--- a/code/game/gamemodes/miniantags/abduction/machinery/camera.dm
+++ b/code/game/gamemodes/miniantags/abduction/machinery/camera.dm
@@ -12,6 +12,7 @@
icon = 'icons/obj/abductor.dmi'
icon_state = "camera"
+ resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | ACID_PROOF
/obj/machinery/computer/camera_advanced/abductor/New()
GLOB.abductor_equipment.Add(src)
diff --git a/code/game/gamemodes/miniantags/abduction/machinery/console.dm b/code/game/gamemodes/miniantags/abduction/machinery/console.dm
index 3598a5775a7..b162103c88b 100644
--- a/code/game/gamemodes/miniantags/abduction/machinery/console.dm
+++ b/code/game/gamemodes/miniantags/abduction/machinery/console.dm
@@ -1,6 +1,7 @@
//Common
/obj/machinery/abductor
+ resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | ACID_PROOF
var/team = 0
/obj/machinery/abductor/New()
diff --git a/code/game/gamemodes/miniantags/bot_swarm/swarmer.dm b/code/game/gamemodes/miniantags/bot_swarm/swarmer.dm
index 3c0ca1955fb..43f43608dc9 100644
--- a/code/game/gamemodes/miniantags/bot_swarm/swarmer.dm
+++ b/code/game/gamemodes/miniantags/bot_swarm/swarmer.dm
@@ -177,6 +177,15 @@
S.DisIntegrate(src)
return TRUE
+/obj/swarmer_act(mob/living/simple_animal/hostile/swarmer/S)
+ if(resistance_flags & INDESTRUCTIBLE)
+ return FALSE
+ for(var/mob/living/L in contents)
+ if(!issilicon(L) && !isbrain(L))
+ to_chat(S, "An organism has been detected inside this object. Aborting.")
+ return FALSE
+ return ..()
+
/obj/item/swarmer_act(mob/living/simple_animal/hostile/swarmer/S)
S.Integrate(src)
return FALSE
@@ -466,11 +475,11 @@
icon_state = "ui_light"
layer = MOB_LAYER
anchored = 1
- unacidable = 1
light_range = 1
mouse_opacity = MOUSE_OPACITY_ICON
- var/health = 30
+ resistance_flags = FIRE_PROOF | UNACIDABLE | ACID_PROOF
light_color = LIGHT_COLOR_CYAN
+ max_integrity = 30
var/lon_range = 1
/obj/structure/swarmer/New()
diff --git a/code/game/gamemodes/miniantags/slaughter/bloodcrawl.dm b/code/game/gamemodes/miniantags/slaughter/bloodcrawl.dm
index 2c34503781e..55ea0adddaa 100644
--- a/code/game/gamemodes/miniantags/slaughter/bloodcrawl.dm
+++ b/code/game/gamemodes/miniantags/slaughter/bloodcrawl.dm
@@ -157,7 +157,7 @@
density = 0
anchored = 1
invisibility = 60
- burn_state = LAVA_PROOF
+ resistance_flags = LAVA_PROOF | FIRE_PROOF | UNACIDABLE | ACID_PROOF
/obj/effect/dummy/slaughter/relaymove(mob/user, direction)
forceMove(get_step(src,direction))
diff --git a/code/game/gamemodes/nuclear/nuclearbomb.dm b/code/game/gamemodes/nuclear/nuclearbomb.dm
index ffb3a8fa6e2..8119c1d6bcc 100644
--- a/code/game/gamemodes/nuclear/nuclearbomb.dm
+++ b/code/game/gamemodes/nuclear/nuclearbomb.dm
@@ -6,6 +6,7 @@ var/bomb_set
icon = 'icons/obj/stationobjs.dmi'
icon_state = "nuclearbomb0"
density = 1
+ resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | UNACIDABLE | ACID_PROOF
var/deployable = 0
var/extended = 0
var/lighthack = 0
@@ -20,7 +21,6 @@ var/bomb_set
var/lastentered
var/is_syndicate = 0
use_power = NO_POWER_USE
- unacidable = 1
var/previous_level = ""
var/datum/wires/nuclearbomb/wires = null
@@ -406,6 +406,7 @@ var/bomb_set
desc = "Better keep this safe."
icon_state = "nucleardisk"
armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 30, "bio" = 0, "rad" = 0, "fire" = 100, "acid" = 100)
+ resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | ACID_PROOF
/obj/item/disk/nuclear/unrestricted
desc = "Seems to have been stripped of its safeties, you better not lose it."
diff --git a/code/game/gamemodes/nuclear/pinpointer.dm b/code/game/gamemodes/nuclear/pinpointer.dm
index 07ee2219157..b6ec5cb74a5 100644
--- a/code/game/gamemodes/nuclear/pinpointer.dm
+++ b/code/game/gamemodes/nuclear/pinpointer.dm
@@ -9,6 +9,7 @@
throw_speed = 4
throw_range = 20
materials = list(MAT_METAL=500)
+ resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | ACID_PROOF
var/obj/item/disk/nuclear/the_disk = null
var/active = 0
var/shows_nuke_timer = TRUE
@@ -165,13 +166,13 @@
var/targetitem = input("Select item to search for.", "Item Mode Select","") as null|anything in item_names
if(!targetitem)
return
-
+
var/list/target_candidates = get_all_of_type(item_paths[targetitem], subtypes = TRUE)
for(var/obj/item/candidate in target_candidates)
if(!is_admin_level((get_turf(candidate)).z))
target = candidate
break
-
+
if(!target)
to_chat(usr, "Failed to locate [targetitem]!")
return
diff --git a/code/game/gamemodes/wizard/artefact.dm b/code/game/gamemodes/wizard/artefact.dm
index 1eedc354f5e..3ef7f655cd2 100644
--- a/code/game/gamemodes/wizard/artefact.dm
+++ b/code/game/gamemodes/wizard/artefact.dm
@@ -142,7 +142,6 @@
icon = 'icons/obj/biomass.dmi'
icon_state = "rift"
density = 1
- unacidable = 1
anchored = 1.0
var/spawn_path = /mob/living/simple_animal/cow //defaulty cows to prevent unintentional narsies
var/spawn_amt_left = 20
@@ -637,7 +636,7 @@ var/global/list/multiverse = list()
if(M.stat != DEAD)
to_chat(user, "This artifact can only affect the dead!")
return
-
+
if((!M.mind || !M.client) && !M.grab_ghost())
to_chat(user,"There is no soul connected to this body...")
return
@@ -773,8 +772,8 @@ var/global/list/multiverse = list()
var/obj/item/link = null
var/cooldown_time = 30 //3s
var/cooldown = 0
- burntime = 0
- burn_state = FLAMMABLE
+ max_integrity = 10
+ resistance_flags = FLAMMABLE
/obj/item/voodoo/attackby(obj/item/I as obj, mob/user as mob, params)
if(target && cooldown < world.time)
diff --git a/code/game/machinery/alarm.dm b/code/game/machinery/alarm.dm
index 3f83a354db4..9cbb17cd12b 100644
--- a/code/game/machinery/alarm.dm
+++ b/code/game/machinery/alarm.dm
@@ -81,6 +81,7 @@
power_channel = ENVIRON
req_one_access = list(access_atmospherics, access_engine_equip)
armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 100, "bomb" = 0, "bio" = 100, "rad" = 100, "fire" = 90, "acid" = 30)
+ resistance_flags = FIRE_PROOF
siemens_strength = 1
var/alarm_id = null
var/frequency = ATMOS_VENTSCRUB
diff --git a/code/game/machinery/atmo_control.dm b/code/game/machinery/atmo_control.dm
index 1d0b8dde152..e704015589c 100644
--- a/code/game/machinery/atmo_control.dm
+++ b/code/game/machinery/atmo_control.dm
@@ -1,6 +1,7 @@
/obj/machinery/air_sensor
icon = 'icons/obj/stationobjs.dmi'
icon_state = "gsensor1"
+ resistance_flags = FIRE_PROOF
name = "gas sensor"
req_one_access_txt = "24;10"
diff --git a/code/game/machinery/buttons.dm b/code/game/machinery/buttons.dm
index 08ac9540b72..e8da8014663 100644
--- a/code/game/machinery/buttons.dm
+++ b/code/game/machinery/buttons.dm
@@ -16,6 +16,7 @@
use_power = IDLE_POWER_USE
idle_power_usage = 2
active_power_usage = 4
+ resistance_flags = LAVA_PROOF | FIRE_PROOF
var/range = 7
var/datum/radio_frequency/radio_connection
@@ -23,6 +24,9 @@
var/logic_id_tag = "default" //Defines the ID tag to send logic signals to, so you don't have to unlink from doors and stuff
var/logic_connect = 0 //Set this to allow the button to send out logic signals when pressed in addition to normal stuff
+/obj/machinery/button/indestructible
+ resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | UNACIDABLE | ACID_PROOF
+
/obj/machinery/driver_button/New(turf/loc, var/w_dir=null)
..()
switch(w_dir)
diff --git a/code/game/machinery/camera/camera.dm b/code/game/machinery/camera/camera.dm
index 72e19ba9088..402bc9c3028 100644
--- a/code/game/machinery/camera/camera.dm
+++ b/code/game/machinery/camera/camera.dm
@@ -7,6 +7,7 @@
idle_power_usage = 5
active_power_usage = 10
layer = WALL_OBJ_LAYER
+ resistance_flags = FIRE_PROOF
armor = list("melee" = 50, "bullet" = 20, "laser" = 20, "energy" = 20, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 90, "acid" = 50)
var/datum/wires/camera/wires = null // Wires datum
diff --git a/code/game/machinery/deployable.dm b/code/game/machinery/deployable.dm
index 63537b116da..0735a65570b 100644
--- a/code/game/machinery/deployable.dm
+++ b/code/game/machinery/deployable.dm
@@ -101,8 +101,6 @@
icon_state = "woodenbarricade"
bar_material = WOOD
stacktype = /obj/item/stack/sheet/wood
- burn_state = FLAMMABLE
- burntime = 25
/obj/structure/barricade/wooden/attackby(obj/item/I, mob/user)
if(istype(I,/obj/item/stack/sheet/wood))
diff --git a/code/game/machinery/doors/airlock_control.dm b/code/game/machinery/doors/airlock_control.dm
index 3b12c6f554a..9b42578cb3b 100644
--- a/code/game/machinery/doors/airlock_control.dm
+++ b/code/game/machinery/doors/airlock_control.dm
@@ -150,6 +150,7 @@
icon_state = "airlock_sensor_off"
name = "airlock sensor"
anchored = 1
+ resistance_flags = FIRE_PROOF
power_channel = ENVIRON
var/id_tag
diff --git a/code/game/machinery/doors/firedoor.dm b/code/game/machinery/doors/firedoor.dm
index de06af3742d..d874367e261 100644
--- a/code/game/machinery/doors/firedoor.dm
+++ b/code/game/machinery/doors/firedoor.dm
@@ -14,8 +14,8 @@
icon_state = "door_open"
opacity = 0
density = FALSE
- burn_state = FIRE_PROOF
max_integrity = 300
+ resistance_flags = FIRE_PROOF
heat_proof = TRUE
glass = TRUE
explosion_block = 1
diff --git a/code/game/machinery/doors/poddoor.dm b/code/game/machinery/doors/poddoor.dm
index 012b695fc7a..f606e2c8c1e 100644
--- a/code/game/machinery/doors/poddoor.dm
+++ b/code/game/machinery/doors/poddoor.dm
@@ -9,7 +9,7 @@
heat_proof = TRUE
safe = FALSE
armor = list("melee" = 50, "bullet" = 100, "laser" = 100, "energy" = 100, "bomb" = 50, "bio" = 100, "rad" = 100, "fire" = 100, "acid" = 70)
- burn_state = FIRE_PROOF
+ resistance_flags = FIRE_PROOF
damage_deflection = 70
var/id_tag = 1.0
var/protected = 1
@@ -22,7 +22,7 @@
/obj/machinery/door/poddoor/impassable
name = "reinforced blast door"
desc = "A heavy duty blast door that opens mechanically. Looks even tougher than usual."
- resistance_flags = INDESTRUCTIBLE
+ resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | UNACIDABLE | ACID_PROOF
/obj/machinery/door/poddoor/impassable/emag_act(mob/user)
to_chat(user, "The electronic systems in this door are far too advanced for your primitive hacking peripherals.")
diff --git a/code/game/machinery/doors/windowdoor.dm b/code/game/machinery/doors/windowdoor.dm
index 6356982a7ca..ee6ec7f1ed2 100644
--- a/code/game/machinery/doors/windowdoor.dm
+++ b/code/game/machinery/doors/windowdoor.dm
@@ -5,6 +5,7 @@
icon_state = "left"
layer = ABOVE_WINDOW_LAYER
closingLayer = ABOVE_WINDOW_LAYER
+ resistance_flags = ACID_PROOF
visible = 0
flags = ON_BORDER
opacity = 0
@@ -12,7 +13,6 @@
max_integrity = 150 //If you change this, consider changing ../door/window/brigdoor/ max_integrity at the bottom of this .dm file
integrity_failure = 0
armor = list("melee" = 20, "bullet" = 50, "laser" = 50, "energy" = 50, "bomb" = 10, "bio" = 100, "rad" = 100, "fire" = 70, "acid" = 100)
- unacidable = 1
var/obj/item/airlock_electronics/electronics
var/base_state = "left"
var/reinf = 0
@@ -335,7 +335,7 @@
base_state = "clockwork"
shards = 0
rods = 0
- burn_state = FIRE_PROOF
+ resistance_flags = ACID_PROOF | FIRE_PROOF
cancolor = FALSE
var/made_glow = FALSE
diff --git a/code/game/machinery/firealarm.dm b/code/game/machinery/firealarm.dm
index 3f4be729cac..f2ea47e2004 100644
--- a/code/game/machinery/firealarm.dm
+++ b/code/game/machinery/firealarm.dm
@@ -17,6 +17,7 @@ FIRE ALARM
idle_power_usage = 2
active_power_usage = 6
power_channel = ENVIRON
+ resistance_flags = FIRE_PROOF
var/last_process = 0
var/wiresexposed = 0
var/buildstage = 2 // 2 = complete, 1 = no wires, 0 = circuit gone
diff --git a/code/game/machinery/igniter.dm b/code/game/machinery/igniter.dm
index 60e4616828b..305871c9196 100755
--- a/code/game/machinery/igniter.dm
+++ b/code/game/machinery/igniter.dm
@@ -5,6 +5,7 @@
icon_state = "igniter1"
plane = FLOOR_PLANE
armor = list(melee = 50, bullet = 30, laser = 70, energy = 50, bomb = 20, bio = 0, rad = 0, fire = 100, acid = 70)
+ resistance_flags = FIRE_PROOF
var/id = null
var/on = FALSE
anchored = TRUE
@@ -53,6 +54,7 @@
desc = "A wall-mounted ignition device."
icon = 'icons/obj/stationobjs.dmi'
icon_state = "migniter"
+ resistance_flags = FIRE_PROOF
var/id = null
var/disable = FALSE
var/last_spark = FALSE
diff --git a/code/game/machinery/machinery.dm b/code/game/machinery/machinery.dm
index 776769fca92..11dfe17da11 100644
--- a/code/game/machinery/machinery.dm
+++ b/code/game/machinery/machinery.dm
@@ -499,7 +499,7 @@ Class Procs:
if(stat & BROKEN)
to_chat(user, "It looks broken and non-functional.")
if(!(resistance_flags & INDESTRUCTIBLE))
- if(burn_state == ON_FIRE)
+ if(resistance_flags & ON_FIRE)
to_chat(user, "It's on fire!")
var/healthpercent = (obj_integrity/max_integrity) * 100
switch(healthpercent)
diff --git a/code/game/machinery/pipe/construction.dm b/code/game/machinery/pipe/construction.dm
index 955d82309b1..1dc3fa70f4e 100644
--- a/code/game/machinery/pipe/construction.dm
+++ b/code/game/machinery/pipe/construction.dm
@@ -159,6 +159,8 @@
var/obj/machinery/atmospherics/binary/circulator/circP = make_from
if(istype(circP) && circP.side == circP.CIRC_RIGHT)
icon_state = "m_[icon_state]"
+ if(istype(make_from, /obj/machinery/atmospherics/pipe/simple/heat_exchanging))
+ resistance_flags |= FIRE_PROOF | LAVA_PROOF
// called by turf to know if should treat as bent or not on placement
/obj/item/pipe/proc/is_bent_pipe()
diff --git a/code/game/machinery/shieldgen.dm b/code/game/machinery/shieldgen.dm
index f652dc9899e..26f41717e80 100644
--- a/code/game/machinery/shieldgen.dm
+++ b/code/game/machinery/shieldgen.dm
@@ -6,7 +6,7 @@
density = 1
opacity = FALSE
anchored = 1
- unacidable = 1
+ resistance_flags = LAVA_PROOF | FIRE_PROOF | UNACIDABLE | ACID_PROOF
var/const/max_health = 200
var/health = max_health //The shield can only take so much beating (prevents perma-prisons)
@@ -529,8 +529,8 @@
icon_state = "shieldwall"
anchored = 1
density = 1
- unacidable = 1
- luminosity = 3
+ resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | UNACIDABLE | ACID_PROOF
+ light_range = 3
var/needs_power = 0
var/active = 1
var/delay = 5
diff --git a/code/game/machinery/syndicatebomb.dm b/code/game/machinery/syndicatebomb.dm
index 3630beb1f6c..3fdedd4224e 100644
--- a/code/game/machinery/syndicatebomb.dm
+++ b/code/game/machinery/syndicatebomb.dm
@@ -10,7 +10,7 @@
anchored = 0
density = 0
layer = BELOW_MOB_LAYER //so people can't hide it and it's REALLY OBVIOUS
- unacidable = 1
+ resistance_flags = FIRE_PROOF | ACID_PROOF
var/datum/wires/syndicatebomb/wires = null
var/minimum_timer = 90
@@ -300,7 +300,7 @@
item_state = "eshield0"
w_class = WEIGHT_CLASS_NORMAL
origin_tech = "syndicate=5;combat=6"
- burn_state = FLAMMABLE //Burnable (but the casing isn't)
+ resistance_flags = FLAMMABLE //Burnable (but the casing isn't)
var/adminlog = null
var/range_heavy = 3
var/range_medium = 9
diff --git a/code/game/machinery/turret_control.dm b/code/game/machinery/turret_control.dm
index af2a1a8d9c0..7336704555c 100644
--- a/code/game/machinery/turret_control.dm
+++ b/code/game/machinery/turret_control.dm
@@ -13,6 +13,7 @@
icon_state = "control_standby"
anchored = 1
density = 0
+ resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | UNACIDABLE | ACID_PROOF
var/enabled = 0
var/lethal = 0
var/locked = 1
diff --git a/code/game/machinery/vending.dm b/code/game/machinery/vending.dm
index f228148926b..e3778f87a9f 100644
--- a/code/game/machinery/vending.dm
+++ b/code/game/machinery/vending.dm
@@ -1072,6 +1072,7 @@
premium = list(/obj/item/ammo_box/magazine/smgm9mm = 2,/obj/item/ammo_box/magazine/m50 = 4,/obj/item/ammo_box/magazine/m45 = 2,/obj/item/ammo_box/magazine/m75 = 2)
contraband = list(/obj/item/clothing/under/patriotsuit = 1,/obj/item/bedsheet/patriot = 3)
armor = list(melee = 100, bullet = 100, laser = 100, energy = 100, bomb = 0, bio = 0, rad = 0, fire = 100, acid = 50)
+ resistance_flags = FIRE_PROOF
/obj/machinery/vending/toyliberationstation
@@ -1099,6 +1100,7 @@
/obj/item/twohanded/dualsaber/toy = 5,
/obj/item/toy/cards/deck/syndicate = 10) //Gambling and it hurts, making it a +18 item
armor = list(melee = 100, bullet = 100, laser = 100, energy = 100, bomb = 0, bio = 0, rad = 0, fire = 100, acid = 50)
+ resistance_flags = FIRE_PROOF
/obj/machinery/vending/cigarette
name = "cigarette machine"
@@ -1174,6 +1176,7 @@
/obj/item/healthupgrade = 4, /obj/item/reagent_containers/hypospray/safety = 2, /obj/item/sensor_device = 2, /obj/item/pinpointer/crew = 2)
contraband = list(/obj/item/reagent_containers/glass/bottle/sulfonal = 1, /obj/item/reagent_containers/glass/bottle/pancuronium = 1)
armor = list(melee = 100, bullet = 100, laser = 100, energy = 100, bomb = 0, bio = 0, rad = 0, fire = 100, acid = 50)
+ resistance_flags = FIRE_PROOF
refill_canister = /obj/item/vending_refill/medical
/obj/machinery/vending/medical/syndicate_access
@@ -1206,6 +1209,7 @@
products = list(/obj/item/stack/medical/bruise_pack = 2, /obj/item/stack/medical/ointment = 2, /obj/item/reagent_containers/hypospray/autoinjector = 4, /obj/item/healthanalyzer = 1)
contraband = list(/obj/item/reagent_containers/syringe/charcoal = 4, /obj/item/reagent_containers/syringe/antiviral = 4, /obj/item/reagent_containers/food/pill/tox = 1)
armor = list(melee = 100, bullet = 100, laser = 100, energy = 100, bomb = 0, bio = 0, rad = 0, fire = 100, acid = 50)
+ resistance_flags = FIRE_PROOF
refill_canister = /obj/item/vending_refill/wallmed
/obj/machinery/vending/wallmed/Initialize(mapload)
@@ -1359,6 +1363,7 @@
/obj/item/twohanded/staff = 2)
contraband = list(/obj/item/reagent_containers/glass/bottle/wizarditis = 1)
armor = list(melee = 100, bullet = 100, laser = 100, energy = 100, bomb = 0, bio = 0, rad = 0, fire = 100, acid = 50)
+ resistance_flags = FIRE_PROOF
/obj/machinery/vending/autodrobe
name = "\improper AutoDrobe"
@@ -1540,6 +1545,7 @@
product_ads = "For Tsar and Country.;Have you fulfilled your nutrition quota today?;Very nice!;We are simple people, for this is all we eat.;If there is a person, there is a problem. If there is no person, then there is no problem."
products = list(/obj/item/reagent_containers/food/drinks/drinkingglass/soda = 30)
contraband = list(/obj/item/reagent_containers/food/drinks/drinkingglass/cola = 20)
+ resistance_flags = FIRE_PROOF
refill_canister = /obj/item/vending_refill/sovietsoda
/obj/machinery/vending/sovietsoda/Initialize(mapload)
@@ -1562,6 +1568,7 @@
contraband = list(/obj/item/weldingtool/hugetank = 2,/obj/item/clothing/gloves/color/fyellow = 2)
premium = list(/obj/item/clothing/gloves/color/yellow = 1)
armor = list(melee = 100, bullet = 100, laser = 100, energy = 100, bomb = 0, bio = 0, rad = 0, fire = 100, acid = 70)
+ resistance_flags = FIRE_PROOF
/obj/machinery/vending/engivend
name = "\improper Engi-Vend"
diff --git a/code/game/mecha/combat/marauder.dm b/code/game/mecha/combat/marauder.dm
index 27b9a9c3a16..ee951a9050b 100644
--- a/code/game/mecha/combat/marauder.dm
+++ b/code/game/mecha/combat/marauder.dm
@@ -9,7 +9,7 @@
damage_absorption = list("brute"=0.5,"fire"=0.7,"bullet"=0.45,"laser"=0.6,"energy"=0.7,"bomb"=0.7)
armor = list("melee" = 50, "bullet" = 55, "laser" = 40, "energy" = 30, "bomb" = 30, "bio" = 0, "rad" = 60, "fire" = 100, "acid" = 100)
max_temperature = 60000
- burn_state = LAVA_PROOF
+ resistance_flags = LAVA_PROOF | FIRE_PROOF | ACID_PROOF
infra_luminosity = 3
operation_req_access = list(access_cent_specops)
wreckage = /obj/effect/decal/mecha_wreckage/marauder
diff --git a/code/game/mecha/equipment/tools/mining_tools.dm b/code/game/mecha/equipment/tools/mining_tools.dm
index a0f6e4408d7..bc7bf2c8ff4 100644
--- a/code/game/mecha/equipment/tools/mining_tools.dm
+++ b/code/game/mecha/equipment/tools/mining_tools.dm
@@ -22,8 +22,7 @@
return
if(isobj(target))
var/obj/target_obj = target
- if(target_obj.unacidable && !ismecha(target_obj))
- occupant_message("[target] is too durable to drill through.")
+ if(target_obj.resistance_flags & UNACIDABLE)
return
target.visible_message("[chassis] starts to drill [target].",
"[chassis] starts to drill [target]...",
diff --git a/code/game/mecha/mecha.dm b/code/game/mecha/mecha.dm
index c6862c9cedc..b35c920f517 100644
--- a/code/game/mecha/mecha.dm
+++ b/code/game/mecha/mecha.dm
@@ -18,7 +18,7 @@
density = 1 //Dense. To raise the heat.
opacity = 1 ///opaque. Menacing.
anchored = 1 //no pulling around.
- unacidable = 1 //and no deleting hoomans inside
+ resistance_flags = FIRE_PROOF | ACID_PROOF
layer = MOB_LAYER //icon draw layer
infra_luminosity = 15 //byond implementation is bugged.
force = 5
diff --git a/code/game/mecha/working/ripley.dm b/code/game/mecha/working/ripley.dm
index e4004b11edc..ae8673a6baf 100644
--- a/code/game/mecha/working/ripley.dm
+++ b/code/game/mecha/working/ripley.dm
@@ -75,7 +75,7 @@
initial_icon = "firefighter"
max_temperature = 65000
health = 250
- burn_state = LAVA_PROOF
+ resistance_flags = LAVA_PROOF | FIRE_PROOF | ACID_PROOF
lights_power = 7
damage_absorption = list("brute"=0.6,"fire"=0.5,"bullet"=0.7,"laser"=0.7,"energy"=1,"bomb"=0.4)
armor = list("melee" = 40, "bullet" = 30, "laser" = 30, "energy" = 30, "bomb" = 60, "bio" = 0, "rad" = 70, "fire" = 100, "acid" = 100)
diff --git a/code/game/objects/buckling.dm b/code/game/objects/buckling.dm
index a89be1c211e..202f773ea7b 100644
--- a/code/game/objects/buckling.dm
+++ b/code/game/objects/buckling.dm
@@ -58,7 +58,7 @@
/obj/buckle_mob(mob/living/M, force = 0)
. = ..()
if(.)
- if(burn_state == ON_FIRE) //Sets the mob on fire if you buckle them to a burning atom/movableect
+ if(resistance_flags & ON_FIRE) //Sets the mob on fire if you buckle them to a burning atom/movableect
M.adjust_fire_stacks(1)
M.IgniteMob()
diff --git a/code/game/objects/effects/anomalies.dm b/code/game/objects/effects/anomalies.dm
index 41d2c256c2b..774174f6b2f 100644
--- a/code/game/objects/effects/anomalies.dm
+++ b/code/game/objects/effects/anomalies.dm
@@ -5,7 +5,6 @@
icon = 'icons/effects/effects.dmi'
desc = "A mysterious anomaly, seen commonly only in the region of space that the station orbits..."
icon_state = "bhole3"
- unacidable = 1
density = 0
anchored = 1
luminosity = 3
diff --git a/code/game/objects/effects/decals/Cleanable/misc.dm b/code/game/objects/effects/decals/Cleanable/misc.dm
index 223732d8b20..122840c1e67 100644
--- a/code/game/objects/effects/decals/Cleanable/misc.dm
+++ b/code/game/objects/effects/decals/Cleanable/misc.dm
@@ -83,7 +83,7 @@
layer = OBJ_LAYER
icon = 'icons/effects/effects.dmi'
icon_state = "cobweb1"
- burntime = 1
+ resistance_flags = FLAMMABLE
/obj/effect/decal/cleanable/molten_object
name = "gooey grey mass"
diff --git a/code/game/objects/effects/decals/contraband.dm b/code/game/objects/effects/decals/contraband.dm
index 2feaea2a149..50d0a8f690e 100644
--- a/code/game/objects/effects/decals/contraband.dm
+++ b/code/game/objects/effects/decals/contraband.dm
@@ -8,7 +8,7 @@
desc = "The poster comes with its own automatic adhesive mechanism, for easy pinning to any vertical surface. Its vulgar themes have marked it as contraband aboard Nanotrasen space facilities."
icon = 'icons/obj/contraband.dmi'
force = 0
- burn_state = FLAMMABLE
+ resistance_flags = FLAMMABLE
var/poster_type
var/obj/structure/sign/poster/poster_structure
diff --git a/code/game/objects/effects/effect_system/effect_system.dm b/code/game/objects/effects/effect_system/effect_system.dm
index 04ea1dc0841..6792f0aa6e2 100644
--- a/code/game/objects/effects/effect_system/effect_system.dm
+++ b/code/game/objects/effects/effect_system/effect_system.dm
@@ -8,7 +8,6 @@ would spawn and follow the beaker, even if it is carried or thrown.
/obj/effect/particle_effect
name = "particle effect"
mouse_opacity = MOUSE_OPACITY_TRANSPARENT
- unacidable = TRUE //So effects are not targeted by alien acid.
pass_flags = PASSTABLE | PASSGRILLE
anchored = TRUE
diff --git a/code/game/objects/effects/effect_system/effects_foam.dm b/code/game/objects/effects/effect_system/effects_foam.dm
index f134bd44b10..50268ad3b78 100644
--- a/code/game/objects/effects/effect_system/effects_foam.dm
+++ b/code/game/objects/effects/effect_system/effects_foam.dm
@@ -170,6 +170,7 @@
desc = "A lightweight foamed metal wall."
icon = 'icons/effects/effects.dmi'
icon_state = "metalfoam"
+ resistance_flags = FIRE_PROOF | ACID_PROOF
density = TRUE
opacity = TRUE // changed in New()
anchored = TRUE
diff --git a/code/game/objects/effects/effects.dm b/code/game/objects/effects/effects.dm
index c1017d399e8..f3e4e97ed6e 100644
--- a/code/game/objects/effects/effects.dm
+++ b/code/game/objects/effects/effects.dm
@@ -4,8 +4,8 @@
/obj/effect
icon = 'icons/effects/effects.dmi'
- burn_state = LAVA_PROOF
- resistance_flags = INDESTRUCTIBLE
+ resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | UNACIDABLE | ACID_PROOF | FREEZE_PROOF
+ move_resist = INFINITY
anchored = 1
can_be_hit = FALSE
@@ -26,6 +26,7 @@
/obj/effect/decal
plane = FLOOR_PLANE
+ resistance_flags = FIRE_PROOF | UNACIDABLE | ACID_PROOF
var/no_scoop = FALSE //if it has this, don't let it be scooped up
var/no_clear = FALSE //if it has this, don't delete it when its' scooped up
var/list/scoop_reagents = null
diff --git a/code/game/objects/effects/forcefields.dm b/code/game/objects/effects/forcefields.dm
index b18f283e9a8..848c6701434 100644
--- a/code/game/objects/effects/forcefields.dm
+++ b/code/game/objects/effects/forcefields.dm
@@ -6,7 +6,6 @@
anchored = 1
opacity = 0
density = 1
- unacidable = 1
var/lifetime = 30 SECONDS
/obj/effect/forcefield/New()
diff --git a/code/game/objects/effects/landmarks.dm b/code/game/objects/effects/landmarks.dm
index 1dacf315e9c..3d2c8a83ef4 100644
--- a/code/game/objects/effects/landmarks.dm
+++ b/code/game/objects/effects/landmarks.dm
@@ -3,7 +3,7 @@
icon = 'icons/mob/screen_gen.dmi'
icon_state = "x2"
anchored = 1.0
- unacidable = 1
+ resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | UNACIDABLE | ACID_PROOF
/obj/effect/landmark/New()
diff --git a/code/game/objects/effects/manifest.dm b/code/game/objects/effects/manifest.dm
index 9b4814237fe..ea1c80e5346 100644
--- a/code/game/objects/effects/manifest.dm
+++ b/code/game/objects/effects/manifest.dm
@@ -2,7 +2,6 @@
name = "manifest"
icon = 'icons/mob/screen_gen.dmi'
icon_state = "x"
- unacidable = 1//Just to be sure.
/obj/effect/manifest/New()
diff --git a/code/game/objects/effects/misc.dm b/code/game/objects/effects/misc.dm
index 191f776d01c..445d6377513 100644
--- a/code/game/objects/effects/misc.dm
+++ b/code/game/objects/effects/misc.dm
@@ -33,11 +33,9 @@
layer = 99
plane = HUD_PLANE
mouse_opacity = MOUSE_OPACITY_TRANSPARENT
- unacidable = 1//Just to be sure.
/obj/effect/beam
name = "beam"
- unacidable = 1//Just to be sure.
var/def_zone
pass_flags = PASSTABLE
@@ -53,7 +51,6 @@
icon = 'icons/obj/stationobjs.dmi'
icon_state = "begin"
anchored = 1.0
- unacidable = 1
/obj/effect/projection
name = "Projection"
diff --git a/code/game/objects/effects/overlays.dm b/code/game/objects/effects/overlays.dm
index 312826d3ddb..4506f9b33a9 100644
--- a/code/game/objects/effects/overlays.dm
+++ b/code/game/objects/effects/overlays.dm
@@ -1,6 +1,5 @@
/obj/effect/overlay
name = "overlay"
- unacidable = 1
var/i_attached//Added for possible image attachments to objects. For hallucinations and the like.
/obj/effect/overlay/singularity_act()
diff --git a/code/game/objects/effects/portals.dm b/code/game/objects/effects/portals.dm
index f36902664f8..99f1ec2965f 100644
--- a/code/game/objects/effects/portals.dm
+++ b/code/game/objects/effects/portals.dm
@@ -3,7 +3,6 @@
desc = "Looks unstable. Best to test it with the clown."
icon = 'icons/obj/stationobjs.dmi'
icon_state = "portal"
- unacidable = TRUE
anchored = TRUE
var/obj/item/target = null
@@ -110,7 +109,7 @@
if(!do_teleport(M, target, precision, bypass_area_flag = ignore_tele_proof_area_setting)) // Try to send them to a turf adjacent to target.
invalid_teleport()
return FALSE
-
+
return TRUE
/obj/effect/portal/proc/invalid_teleport()
diff --git a/code/game/objects/items.dm b/code/game/objects/items.dm
index bdfc39d58bb..9c463aff67a 100644
--- a/code/game/objects/items.dm
+++ b/code/game/objects/items.dm
@@ -245,7 +245,7 @@ var/global/image/fire_overlay = image("icon" = 'icons/goonstation/effects/fire.d
to_chat(user, "You try to move your [temp.name], but cannot!")
return 0
- if(burn_state == ON_FIRE && !pickupfireoverride)
+ if((resistance_flags & ON_FIRE) && !pickupfireoverride)
var/mob/living/carbon/human/H = user
if(istype(H))
if(H.gloves && (H.gloves.max_heat_protection_temperature > 360))
diff --git a/code/game/objects/items/blueprints.dm b/code/game/objects/items/blueprints.dm
index a566f208082..79cc221ee7f 100644
--- a/code/game/objects/items/blueprints.dm
+++ b/code/game/objects/items/blueprints.dm
@@ -92,6 +92,7 @@
icon = 'icons/obj/items.dmi'
icon_state = "blueprints"
fluffnotice = "Property of Nanotrasen. For heads of staff only. Store in high-secure storage."
+ resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | ACID_PROOF
w_class = WEIGHT_CLASS_NORMAL
var/list/showing = list()
var/client/viewing
diff --git a/code/game/objects/items/cardboard_cutouts.dm b/code/game/objects/items/cardboard_cutouts.dm
index 3693acf8e2f..1e1a07b8a3d 100644
--- a/code/game/objects/items/cardboard_cutouts.dm
+++ b/code/game/objects/items/cardboard_cutouts.dm
@@ -4,7 +4,7 @@
desc = "A vaguely humanoid cardboard cutout. It's completely blank."
icon = 'icons/obj/cardboard_cutout.dmi'
icon_state = "cutout_basic"
- burn_state = FLAMMABLE
+ resistance_flags = FLAMMABLE
w_class = WEIGHT_CLASS_BULKY
var/list/possible_appearances = list("Assistant", "Clown", "Mime",
"Traitor", "Nuke Op", "Cultist", "Revolutionary", "Wizard", "Shadowling", "Xenomorph", "Swarmer",
diff --git a/code/game/objects/items/devices/flashlight.dm b/code/game/objects/items/devices/flashlight.dm
index 74f98a9384a..90a778f8e49 100644
--- a/code/game/objects/items/devices/flashlight.dm
+++ b/code/game/objects/items/devices/flashlight.dm
@@ -394,5 +394,4 @@
on = TRUE
anchored = TRUE
var/range = null
- unacidable = TRUE
- burn_state = LAVA_PROOF
+ resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | UNACIDABLE | ACID_PROOF
diff --git a/code/game/objects/items/devices/instruments.dm b/code/game/objects/items/devices/instruments.dm
index 6d3a1c2b49d..a3321112891 100644
--- a/code/game/objects/items/devices/instruments.dm
+++ b/code/game/objects/items/devices/instruments.dm
@@ -4,7 +4,7 @@
icon = 'icons/obj/musician.dmi'
lefthand_file = 'icons/mob/inhands/equipment/instruments_lefthand.dmi'
righthand_file = 'icons/mob/inhands/equipment/instruments_righthand.dmi'
- burn_state = FLAMMABLE
+ resistance_flags = FLAMMABLE
var/datum/song/handheld/song
var/instrumentId = "generic"
var/instrumentExt = "mid"
@@ -55,7 +55,7 @@
desc = "A golden musical instrument with four strings and a bow. \"The devil went down to space, he was looking for an assistant to grief.\""
icon_state = "golden_violin"
item_state = "golden_violin"
- burn_state = LAVA_PROOF
+ resistance_flags = LAVA_PROOF | FIRE_PROOF | ACID_PROOF
/obj/item/instrument/piano_synth
name = "synthesizer"
diff --git a/code/game/objects/items/devices/paicard.dm b/code/game/objects/items/devices/paicard.dm
index 64971ae37a3..2982b2679ea 100644
--- a/code/game/objects/items/devices/paicard.dm
+++ b/code/game/objects/items/devices/paicard.dm
@@ -12,6 +12,7 @@
var/looking_for_personality = 0
var/mob/living/silicon/pai/pai
var/list/faction = list("neutral") // The factions the pAI will inherit from the card
+ resistance_flags = FIRE_PROOF | ACID_PROOF | INDESTRUCTIBLE
/obj/item/paicard/syndicate
name = "syndicate personal AI device"
diff --git a/code/game/objects/items/documents.dm b/code/game/objects/items/documents.dm
index 908c205939d..a2b1f2fdedb 100644
--- a/code/game/objects/items/documents.dm
+++ b/code/game/objects/items/documents.dm
@@ -10,6 +10,7 @@
throw_speed = 1
layer = 4
pressure_resistance = 2
+ resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | ACID_PROOF
/obj/item/documents/nanotrasen
desc = "\"Top Secret\" Nanotrasen documents printed on special copy-protected paper. It is filled with complex diagrams and lists of names, dates and coordinates."
diff --git a/code/game/objects/items/stacks/medical.dm b/code/game/objects/items/stacks/medical.dm
index d021c0254a8..647837a1812 100644
--- a/code/game/objects/items/stacks/medical.dm
+++ b/code/game/objects/items/stacks/medical.dm
@@ -7,6 +7,7 @@
w_class = WEIGHT_CLASS_TINY
throw_speed = 3
throw_range = 7
+ resistance_flags = FLAMMABLE
var/heal_brute = 0
var/heal_burn = 0
var/self_delay = 20
diff --git a/code/game/objects/items/stacks/sheets/glass.dm b/code/game/objects/items/stacks/sheets/glass.dm
index 90ea108f56c..769bc9dad54 100644
--- a/code/game/objects/items/stacks/sheets/glass.dm
+++ b/code/game/objects/items/stacks/sheets/glass.dm
@@ -29,6 +29,7 @@ GLOBAL_LIST_INIT(glass_recipes, list ( \
icon_state = "sheet-glass"
materials = list(MAT_GLASS=MINERAL_MATERIAL_AMOUNT)
armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 50, "acid" = 100)
+ resistance_flags = ACID_PROOF
origin_tech = "materials=1"
created_window = /obj/structure/window/basic
full_window = /obj/structure/window/full/basic
@@ -89,6 +90,7 @@ GLOBAL_LIST_INIT(reinforced_glass_recipes, list ( \
icon_state = "sheet-rglass"
materials = list(MAT_METAL=MINERAL_MATERIAL_AMOUNT/2, MAT_GLASS=MINERAL_MATERIAL_AMOUNT)
armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 70, "acid" = 100)
+ resistance_flags = ACID_PROOF
origin_tech = "materials=2"
created_window = /obj/structure/window/reinforced
full_window = /obj/structure/window/full/reinforced
@@ -115,6 +117,7 @@ GLOBAL_LIST_INIT(pglass_recipes, list ( \
item_state = "sheet-rglass"
materials = list(MAT_GLASS=MINERAL_MATERIAL_AMOUNT*2)
armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 75, "acid" = 100)
+ resistance_flags = ACID_PROOF
origin_tech = "plasmatech=2;materials=2"
created_window = /obj/structure/window/plasmabasic
full_window = /obj/structure/window/full/plasmabasic
@@ -157,6 +160,7 @@ GLOBAL_LIST_INIT(prglass_recipes, list ( \
item_state = "sheet-rglass"
materials = list(MAT_METAL=MINERAL_MATERIAL_AMOUNT/2, MAT_GLASS=MINERAL_MATERIAL_AMOUNT*2)
armor = list("melee" = 20, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 80, "acid" = 100)
+ resistance_flags = ACID_PROOF
origin_tech = "plasmatech=2;materials=2"
created_window = /obj/structure/window/plasmareinforced
full_window = /obj/structure/window/full/plasmareinforced
@@ -178,6 +182,7 @@ GLOBAL_LIST_INIT(titaniumglass_recipes, list(
item_state = "sheet-rglass"
materials = list(MAT_TITANIUM=MINERAL_MATERIAL_AMOUNT, MAT_GLASS=MINERAL_MATERIAL_AMOUNT)
armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 80, "acid" = 100)
+ resistance_flags = ACID_PROOF
merge_type = /obj/item/stack/sheet/titaniumglass
full_window = /obj/structure/window/full/shuttle
@@ -197,6 +202,7 @@ GLOBAL_LIST_INIT(plastitaniumglass_recipes, list(
item_state = "sheet-rglass"
materials = list(MAT_TITANIUM=MINERAL_MATERIAL_AMOUNT, MAT_PLASMA=MINERAL_MATERIAL_AMOUNT, MAT_GLASS=MINERAL_MATERIAL_AMOUNT)
armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 80, "acid" = 100)
+ resistance_flags = ACID_PROOF
merge_type = /obj/item/stack/sheet/plastitaniumglass
full_window = /obj/structure/window/plastitanium
diff --git a/code/game/objects/items/stacks/sheets/mineral.dm b/code/game/objects/items/stacks/sheets/mineral.dm
index c9099d6d38b..047ffb3292a 100644
--- a/code/game/objects/items/stacks/sheets/mineral.dm
+++ b/code/game/objects/items/stacks/sheets/mineral.dm
@@ -208,8 +208,8 @@ GLOBAL_LIST_INIT(sandbag_recipes, list ( \
origin_tech = "plasmatech=2;materials=2"
sheettype = "plasma"
materials = list(MAT_PLASMA=MINERAL_MATERIAL_AMOUNT)
- burn_state = FLAMMABLE
- burntime = 5
+ resistance_flags = FLAMMABLE
+ max_integrity = 100
point_value = 20
/obj/item/stack/sheet/mineral/plasma/New()
diff --git a/code/game/objects/items/stacks/sheets/sheet_types.dm b/code/game/objects/items/stacks/sheets/sheet_types.dm
index 178f9c10462..63b5c6b5b10 100644
--- a/code/game/objects/items/stacks/sheets/sheet_types.dm
+++ b/code/game/objects/items/stacks/sheets/sheet_types.dm
@@ -104,6 +104,7 @@ var/global/list/datum/stack_recipe/metal_recipes = list(
materials = list(MAT_METAL=MINERAL_MATERIAL_AMOUNT)
throwforce = 10.0
flags = CONDUCT
+ resistance_flags = FIRE_PROOF
origin_tech = "materials=1"
merge_type = /obj/item/stack/sheet/metal
point_value = 2
@@ -150,6 +151,7 @@ var/global/list/datum/stack_recipe/plasteel_recipes = list(
item_state = "sheet-metal"
materials = list(MAT_METAL=2000, MAT_PLASMA=2000)
armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 100, "acid" = 80)
+ resistance_flags = FIRE_PROOF
throwforce = 10.0
flags = CONDUCT
origin_tech = "materials=2"
@@ -195,7 +197,7 @@ var/global/list/datum/stack_recipe/wood_recipes = list(
singular_name = "wood plank"
icon_state = "sheet-wood"
origin_tech = "materials=1;biotech=1"
- burn_state = FLAMMABLE
+ resistance_flags = FLAMMABLE
armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 50, "acid" = 0)
merge_type = /obj/item/stack/sheet/wood
@@ -239,7 +241,7 @@ var/global/list/datum/stack_recipe/cloth_recipes = list ( \
singular_name = "cloth roll"
icon_state = "sheet-cloth"
origin_tech = "materials=2"
- burn_state = FLAMMABLE
+ resistance_flags = FLAMMABLE
force = 0
throwforce = 0
merge_type = /obj/item/stack/sheet/cloth
@@ -264,7 +266,7 @@ GLOBAL_LIST_INIT(durathread_recipes, list ( \
singular_name = "durathread roll"
icon_state = "sheet-durathread"
item_state = "sheet-cloth"
- burn_state = FLAMMABLE
+ resistance_flags = FLAMMABLE
force = 0
throwforce = 0
merge_type = /obj/item/stack/sheet/durathread
@@ -278,7 +280,7 @@ GLOBAL_LIST_INIT(durathread_recipes, list ( \
desc = "A bundle of raw cotton ready to be spun on the loom."
singular_name = "raw cotton ball"
icon_state = "sheet-cotton"
- burn_state = FLAMMABLE
+ resistance_flags = FLAMMABLE
force = 0
throwforce = 0
merge_type = /obj/item/stack/sheet/cotton
@@ -329,7 +331,7 @@ var/global/list/datum/stack_recipe/cardboard_recipes = list (
singular_name = "cardboard sheet"
icon_state = "sheet-card"
origin_tech = "materials=1"
- burn_state = FLAMMABLE
+ resistance_flags = FLAMMABLE
merge_type = /obj/item/stack/sheet/cardboard
/obj/item/stack/sheet/cardboard/New(var/loc, var/amt = null)
@@ -409,7 +411,7 @@ var/global/list/datum/stack_recipe/brass_recipes = list (\
singular_name = "brass sheet"
icon_state = "sheet-brass"
icon = 'icons/obj/items.dmi'
- burn_state = FIRE_PROOF
+ resistance_flags = FIRE_PROOF | ACID_PROOF
throwforce = 10
max_amount = 50
throw_speed = 1
diff --git a/code/game/objects/items/stacks/tiles/tile_types.dm b/code/game/objects/items/stacks/tiles/tile_types.dm
index 46ce2913728..a94a3159c31 100644
--- a/code/game/objects/items/stacks/tiles/tile_types.dm
+++ b/code/game/objects/items/stacks/tiles/tile_types.dm
@@ -81,7 +81,7 @@
icon_state = "tile_grass"
origin_tech = "biotech=1"
turf_type = /turf/simulated/floor/grass
- burn_state = FLAMMABLE
+ resistance_flags = FLAMMABLE
//Wood
/obj/item/stack/tile/wood
@@ -92,7 +92,7 @@
icon_state = "tile-wood"
origin_tech = "biotech=1"
turf_type = /turf/simulated/floor/wood
- burn_state = FLAMMABLE
+ resistance_flags = FLAMMABLE
//Carpets
/obj/item/stack/tile/carpet
@@ -101,7 +101,7 @@
desc = "A piece of carpet. It is the same size as a floor tile"
icon_state = "tile-carpet"
turf_type = /turf/simulated/floor/carpet
- burn_state = FLAMMABLE
+ resistance_flags = FLAMMABLE
/obj/item/stack/tile/carpet/black
name = "black carpet"
@@ -124,6 +124,7 @@
turf_type = /turf/simulated/floor/plasteel
mineralType = "metal"
armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 100, "acid" = 70)
+ resistance_flags = FIRE_PROOF
//Light
/obj/item/stack/tile/light
@@ -144,7 +145,7 @@
desc = "A piece of carpet with a convincing star pattern."
icon_state = "tile_space"
turf_type = /turf/simulated/floor/fakespace
- burn_state = FLAMMABLE
+ resistance_flags = FLAMMABLE
merge_type = /obj/item/stack/tile/fakespace
/obj/item/stack/tile/fakespace/loaded
diff --git a/code/game/objects/items/toys.dm b/code/game/objects/items/toys.dm
index edc7b855c99..d8595348368 100644
--- a/code/game/objects/items/toys.dm
+++ b/code/game/objects/items/toys.dm
@@ -404,8 +404,8 @@
obj/item/toy/cards
- burn_state = FLAMMABLE
- burntime = 5
+ resistance_flags = FLAMMABLE
+ max_integrity = 50
var/parentdeck = null
var/deckstyle = "nanotrasen"
var/card_hitsound = null
@@ -627,6 +627,7 @@ obj/item/toy/cards/cardhand/apply_card_vars(obj/item/toy/cards/newobj,obj/item/t
newobj.card_throw_speed = sourceobj.card_throw_speed
newobj.card_throw_range = sourceobj.card_throw_range
newobj.card_attack_verb = sourceobj.card_attack_verb
+ newobj.resistance_flags = sourceobj.resistance_flags
obj/item/toy/cards/singlecard
@@ -752,7 +753,7 @@ obj/item/toy/cards/deck/syndicate
card_throw_speed = 3
card_throw_range = 20
card_attack_verb = list("attacked", "sliced", "diced", "slashed", "cut")
- burn_state = FIRE_PROOF
+ resistance_flags = NONE
/*
|| Custom card decks ||
@@ -890,7 +891,7 @@ obj/item/toy/cards/deck/syndicate/black
icon_state = "carpplushie"
attack_verb = list("bitten", "eaten", "fin slapped")
var/bitesound = 'sound/weapons/bite.ogg'
- burn_state = FLAMMABLE
+ resistance_flags = FLAMMABLE
// Attack mob
/obj/item/toy/carpplushie/attack(mob/M as mob, mob/user as mob)
@@ -953,7 +954,7 @@ obj/item/toy/cards/deck/syndicate/black
icon = 'icons/obj/toy.dmi'
var/poof_sound = 'sound/weapons/thudswoosh.ogg'
attack_verb = list("poofed", "bopped", "whapped","cuddled","fluffed")
- burn_state = FLAMMABLE
+ resistance_flags = FLAMMABLE
/obj/item/toy/plushie/attack(mob/M as mob, mob/user as mob)
playsound(loc, poof_sound, 20, 1) // Play the whoosh sound in local area
@@ -1105,7 +1106,7 @@ obj/item/toy/cards/deck/syndicate/black
item_state = "arm_blade"
attack_verb = list("pricked", "absorbed", "gored")
w_class = WEIGHT_CLASS_SMALL
- burn_state = FLAMMABLE
+ resistance_flags = FLAMMABLE
/*
* Toy/fake flash
@@ -1506,7 +1507,7 @@ obj/item/toy/cards/deck/syndicate/black
icon = 'icons/obj/toy.dmi'
icon_state = "toy_mouse"
w_class = WEIGHT_CLASS_SMALL
- burn_state = FLAMMABLE
+ resistance_flags = FLAMMABLE
var/cooldown = 0
/*
diff --git a/code/game/objects/items/trash.dm b/code/game/objects/items/trash.dm
index 0dce7e51cd1..3a6101b65c7 100644
--- a/code/game/objects/items/trash.dm
+++ b/code/game/objects/items/trash.dm
@@ -6,7 +6,7 @@
icon = 'icons/obj/trash.dmi'
w_class = WEIGHT_CLASS_TINY
desc = "This is rubbish."
- burn_state = FLAMMABLE
+ resistance_flags = FLAMMABLE
/obj/item/trash/raisins
name = "4no raisins"
@@ -43,7 +43,7 @@
/obj/item/trash/plate
name = "Plate"
icon_state = "plate"
- burn_state = FIRE_PROOF
+ resistance_flags = NONE
/obj/item/trash/snack_bowl
name = "Snack bowl"
@@ -60,7 +60,7 @@
/obj/item/trash/tray
name = "Tray"
icon_state = "tray"
- burn_state = FIRE_PROOF
+ resistance_flags = NONE
/obj/item/trash/candle
name = "candle"
@@ -76,7 +76,7 @@
icon_state = "cola"
var/is_glass = 0
var/is_plastic = 0
- burn_state = FIRE_PROOF
+ resistance_flags = NONE
/obj/item/trash/gum
name = "chewed gum"
diff --git a/code/game/objects/items/weapons/RCD.dm b/code/game/objects/items/weapons/RCD.dm
index dc2a9a635ef..a8890e1636e 100644
--- a/code/game/objects/items/weapons/RCD.dm
+++ b/code/game/objects/items/weapons/RCD.dm
@@ -50,6 +50,7 @@ GLOBAL_LIST_INIT(rcd_door_types, list(
flags_2 = NO_MAT_REDEMPTION_2
req_access = list(access_engine)
armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 100, "acid" = 50)
+ resistance_flags = FIRE_PROOF
// Important shit
var/datum/effect_system/spark_spread/spark_system
var/matter = 0
diff --git a/code/game/objects/items/weapons/cards_ids.dm b/code/game/objects/items/weapons/cards_ids.dm
index 208c9ae6a42..8452d8bd987 100644
--- a/code/game/objects/items/weapons/cards_ids.dm
+++ b/code/game/objects/items/weapons/cards_ids.dm
@@ -90,6 +90,7 @@
var/registered_name = "Unknown" // The name registered_name on the card
slot_flags = SLOT_ID
armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 100, "acid" = 100)
+ resistance_flags = FIRE_PROOF | ACID_PROOF
var/untrackable // Can not be tracked by AI's
var/blood_type = "\[UNSET\]"
diff --git a/code/game/objects/items/weapons/cash.dm b/code/game/objects/items/weapons/cash.dm
index 507b19d9f7a..84d7eab9e0b 100644
--- a/code/game/objects/items/weapons/cash.dm
+++ b/code/game/objects/items/weapons/cash.dm
@@ -9,7 +9,7 @@
throw_speed = 1
throw_range = 7
w_class = WEIGHT_CLASS_TINY
- burn_state = FLAMMABLE
+ resistance_flags = FLAMMABLE
singular_name = "credit"
max_amount = 1000000
merge_type = /obj/item/stack/spacecash
diff --git a/code/game/objects/items/weapons/chrono_eraser.dm b/code/game/objects/items/weapons/chrono_eraser.dm
index 7e7f1642e3a..6a8ddffe6c1 100644
--- a/code/game/objects/items/weapons/chrono_eraser.dm
+++ b/code/game/objects/items/weapons/chrono_eraser.dm
@@ -149,9 +149,10 @@
desc = "An aura of time-bluespace energy."
icon = 'icons/effects/effects.dmi'
icon_state = "chronofield"
- density = 1
- anchored = 1
- unacidable = 1
+ density = TRUE
+ anchored = TRUE
+ resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | UNACIDABLE | ACID_PROOF | FREEZE_PROOF
+ move_resist = INFINITY
blend_mode = BLEND_MULTIPLY
var/mob/living/captured = null
var/obj/item/gun/energy/chrono_gun/gun = null
diff --git a/code/game/objects/items/weapons/courtroom.dm b/code/game/objects/items/weapons/courtroom.dm
index 72bb3fceb11..09d43434560 100644
--- a/code/game/objects/items/weapons/courtroom.dm
+++ b/code/game/objects/items/weapons/courtroom.dm
@@ -11,7 +11,7 @@
throwforce = 6.0
w_class = WEIGHT_CLASS_SMALL
attack_verb = list("bashed", "battered", "judged", "whacked")
- burn_state = FLAMMABLE
+ resistance_flags = FLAMMABLE
/obj/item/gavelhammer/suicide_act(mob/user)
user.visible_message("[user] has sentenced [user.p_them()]self to death with the [src.name]! It looks like [user.p_theyre()] trying to commit suicide.")
@@ -26,7 +26,7 @@
force = 2.0
throwforce = 2.0
w_class = WEIGHT_CLASS_TINY
- burn_state = FLAMMABLE
+ resistance_flags = FLAMMABLE
/obj/item/gavelblock/attackby(obj/item/I, mob/user, params)
if(istype(I, /obj/item/gavelhammer))
diff --git a/code/game/objects/items/weapons/defib.dm b/code/game/objects/items/weapons/defib.dm
index e026d1f00f1..771d7bc2330 100644
--- a/code/game/objects/items/weapons/defib.dm
+++ b/code/game/objects/items/weapons/defib.dm
@@ -260,6 +260,7 @@
force = 0
throwforce = 6
w_class = WEIGHT_CLASS_BULKY
+ resistance_flags = INDESTRUCTIBLE
toolspeed = 1
var/revivecost = 1000
diff --git a/code/game/objects/items/weapons/extinguisher.dm b/code/game/objects/items/weapons/extinguisher.dm
index 674329abacb..d27fd10ef87 100644
--- a/code/game/objects/items/weapons/extinguisher.dm
+++ b/code/game/objects/items/weapons/extinguisher.dm
@@ -15,6 +15,7 @@
materials = list(MAT_METAL=90)
attack_verb = list("slammed", "whacked", "bashed", "thunked", "battered", "bludgeoned", "thrashed")
dog_fashion = /datum/dog_fashion/back
+ resistance_flags = FIRE_PROOF
var/max_water = 50
var/last_use = 1.0
var/safety = 1
diff --git a/code/game/objects/items/weapons/flamethrower.dm b/code/game/objects/items/weapons/flamethrower.dm
index d7038fcd752..3e41009bf68 100644
--- a/code/game/objects/items/weapons/flamethrower.dm
+++ b/code/game/objects/items/weapons/flamethrower.dm
@@ -13,6 +13,7 @@
throw_range = 5
w_class = WEIGHT_CLASS_NORMAL
materials = list(MAT_METAL=500)
+ resistance_flags = FIRE_PROOF
origin_tech = "combat=1;plasmatech=2;engineering=2"
var/status = FALSE
var/lit = FALSE //on or off
diff --git a/code/game/objects/items/weapons/gift_wrappaper.dm b/code/game/objects/items/weapons/gift_wrappaper.dm
index 5a6131b2d4a..e8d2b7af526 100644
--- a/code/game/objects/items/weapons/gift_wrappaper.dm
+++ b/code/game/objects/items/weapons/gift_wrappaper.dm
@@ -13,7 +13,7 @@
icon = 'icons/obj/items.dmi'
icon_state = "gift1"
item_state = "gift1"
- burn_state = FLAMMABLE
+ resistance_flags = FLAMMABLE
/obj/item/a_gift/New()
..()
@@ -139,7 +139,7 @@
flags = NOBLUDGEON
amount = 25
max_amount = 25
- burn_state = FLAMMABLE
+ resistance_flags = FLAMMABLE
/obj/item/stack/wrapping_paper/attack_self(mob/user)
to_chat(user, "You need to use it on a package that has already been wrapped!")
diff --git a/code/game/objects/items/weapons/grenades/grenade.dm b/code/game/objects/items/weapons/grenades/grenade.dm
index 09fdfe5a27f..742bceb524a 100644
--- a/code/game/objects/items/weapons/grenades/grenade.dm
+++ b/code/game/objects/items/weapons/grenades/grenade.dm
@@ -9,7 +9,7 @@
throw_range = 20
flags = CONDUCT
slot_flags = SLOT_BELT
- burn_state = FLAMMABLE
+ resistance_flags = FLAMMABLE
burntime = 5
var/active = 0
var/det_time = 50
diff --git a/code/game/objects/items/weapons/lighters.dm b/code/game/objects/items/weapons/lighters.dm
index 56d237c4eda..d69c04792a3 100644
--- a/code/game/objects/items/weapons/lighters.dm
+++ b/code/game/objects/items/weapons/lighters.dm
@@ -14,6 +14,7 @@
flags = CONDUCT
slot_flags = SLOT_BELT
attack_verb = null
+ resistance_flags = FIRE_PROOF
var/lit = 0
/obj/item/lighter/zippo
diff --git a/code/game/objects/items/weapons/melee/energy.dm b/code/game/objects/items/weapons/melee/energy.dm
index 0339a68b66d..cb99b0ac690 100644
--- a/code/game/objects/items/weapons/melee/energy.dm
+++ b/code/game/objects/items/weapons/melee/energy.dm
@@ -11,6 +11,7 @@
hitsound = 'sound/weapons/blade1.ogg' // Probably more appropriate than the previous hitsound. -- Dave
usesound = 'sound/weapons/blade1.ogg'
armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 100, "acid" = 30)
+ resistance_flags = FIRE_PROOF
toolspeed = 1
light_power = 2
var/brightness_on = 2
diff --git a/code/game/objects/items/weapons/mop.dm b/code/game/objects/items/weapons/mop.dm
index 7c5c6f9421f..a92deece906 100644
--- a/code/game/objects/items/weapons/mop.dm
+++ b/code/game/objects/items/weapons/mop.dm
@@ -9,7 +9,7 @@
throw_range = 7
w_class = WEIGHT_CLASS_NORMAL
attack_verb = list("mopped", "bashed", "bludgeoned", "whacked")
- burn_state = FLAMMABLE
+ resistance_flags = FLAMMABLE
var/mopping = 0
var/mopcount = 0
var/mopcap = 5
diff --git a/code/game/objects/items/weapons/paint.dm b/code/game/objects/items/weapons/paint.dm
index dc466f479d0..06345581381 100644
--- a/code/game/objects/items/weapons/paint.dm
+++ b/code/game/objects/items/weapons/paint.dm
@@ -8,8 +8,8 @@
item_state = "paintcan"
materials = list(MAT_METAL=200)
w_class = WEIGHT_CLASS_NORMAL
- burn_state = FLAMMABLE
- burntime = 5
+ resistance_flags = FLAMMABLE
+ max_integrity = 50
amount_per_transfer_from_this = 5
possible_transfer_amounts = list(5,10,20,30,50,70)
volume = 70
diff --git a/code/game/objects/items/weapons/powerfist.dm b/code/game/objects/items/weapons/powerfist.dm
index 5b486f58249..fe849371f05 100644
--- a/code/game/objects/items/weapons/powerfist.dm
+++ b/code/game/objects/items/weapons/powerfist.dm
@@ -10,6 +10,7 @@
throw_range = 7
w_class = WEIGHT_CLASS_NORMAL
armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 100, "acid" = 40)
+ resistance_flags = FIRE_PROOF
origin_tech = "combat=5;powerstorage=3;syndicate=3"
var/click_delay = 1.5
var/fisto_setting = 1
diff --git a/code/game/objects/items/weapons/rpd.dm b/code/game/objects/items/weapons/rpd.dm
index 4377eaff43e..073ae0941e4 100644
--- a/code/game/objects/items/weapons/rpd.dm
+++ b/code/game/objects/items/weapons/rpd.dm
@@ -24,6 +24,7 @@
w_class = WEIGHT_CLASS_NORMAL
materials = list(MAT_METAL = 75000, MAT_GLASS = 37500)
armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 100, "acid" = 50)
+ resistance_flags = FIRE_PROOF
origin_tech = "engineering=4;materials=2"
var/datum/effect_system/spark_spread/spark_system
var/lastused
diff --git a/code/game/objects/items/weapons/scrolls.dm b/code/game/objects/items/weapons/scrolls.dm
index ccee6c18feb..24121debd0d 100644
--- a/code/game/objects/items/weapons/scrolls.dm
+++ b/code/game/objects/items/weapons/scrolls.dm
@@ -9,7 +9,7 @@
throw_speed = 4
throw_range = 20
origin_tech = "bluespace=6"
- burn_state = FLAMMABLE
+ resistance_flags = FLAMMABLE
/obj/item/teleportation_scroll/apprentice
name = "lesser scroll of teleportation"
@@ -51,7 +51,7 @@
if(!A)
return
-
+
var/area/thearea = teleportlocs[A]
if(user.stat || user.restrained())
diff --git a/code/game/objects/items/weapons/shards.dm b/code/game/objects/items/weapons/shards.dm
index 5a750362de6..fa9719dc696 100644
--- a/code/game/objects/items/weapons/shards.dm
+++ b/code/game/objects/items/weapons/shards.dm
@@ -13,6 +13,7 @@
attack_verb = list("stabbed", "slashed", "sliced", "cut")
hitsound = 'sound/weapons/bladeslice.ogg'
armor = list("melee" = 100, "bullet" = 0, "laser" = 0, "energy" = 100, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 50, "acid" = 100)
+ resistance_flags = ACID_PROOF
sharp = TRUE
var/cooldown = 0
var/icon_prefix
diff --git a/code/game/objects/items/weapons/shields.dm b/code/game/objects/items/weapons/shields.dm
index 9520ad92a4b..63e7eeb88fb 100644
--- a/code/game/objects/items/weapons/shields.dm
+++ b/code/game/objects/items/weapons/shields.dm
@@ -53,7 +53,7 @@
item_state = "buckler"
materials = list()
origin_tech = "materials=1;combat=3;biotech=2"
- burn_state = FLAMMABLE
+ resistance_flags = FLAMMABLE
block_chance = 30
/obj/item/shield/energy
diff --git a/code/game/objects/items/weapons/signs.dm b/code/game/objects/items/weapons/signs.dm
index 6c416111db7..56f31188300 100644
--- a/code/game/objects/items/weapons/signs.dm
+++ b/code/game/objects/items/weapons/signs.dm
@@ -6,7 +6,7 @@
force = 5
w_class = WEIGHT_CLASS_BULKY
attack_verb = list("bashed","smacked")
- burn_state = FLAMMABLE
+ resistance_flags = FLAMMABLE
var/delayed = 0 //used to do delays
diff --git a/code/game/objects/items/weapons/staff.dm b/code/game/objects/items/weapons/staff.dm
index 15b0b914391..fa2c6adcc7f 100644
--- a/code/game/objects/items/weapons/staff.dm
+++ b/code/game/objects/items/weapons/staff.dm
@@ -10,7 +10,7 @@
w_class = WEIGHT_CLASS_SMALL
armour_penetration = 100
attack_verb = list("bludgeoned", "whacked", "disciplined")
- burn_state = FLAMMABLE
+ resistance_flags = FLAMMABLE
/obj/item/twohanded/staff/broom
name = "broom"
diff --git a/code/game/objects/items/weapons/storage/backpack.dm b/code/game/objects/items/weapons/storage/backpack.dm
index 228f9d14c09..4d67900a872 100644
--- a/code/game/objects/items/weapons/storage/backpack.dm
+++ b/code/game/objects/items/weapons/storage/backpack.dm
@@ -15,7 +15,7 @@
max_w_class = WEIGHT_CLASS_NORMAL
max_combined_w_class = 21
storage_slots = 21
- burn_state = FLAMMABLE
+ resistance_flags = NONE
burntime = 20
sprite_sheets = list(
"Vox" = 'icons/mob/species/vox/back.dmi',
@@ -56,7 +56,7 @@
item_state = "holdingpack"
max_w_class = WEIGHT_CLASS_HUGE
max_combined_w_class = 35
- burn_state = FIRE_PROOF
+ resistance_flags = FIRE_PROOF
flags_2 = NO_MAT_REDEMPTION_2
cant_hold = list(/obj/item/storage/backpack/holding)
armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 60, "acid" = 50)
@@ -159,7 +159,7 @@
desc = "It's a tough backpack for the daily grind of station life."
icon_state = "engiepack"
item_state = "engiepack"
- burn_state = FIRE_PROOF
+ resistance_flags = FIRE_PROOF
/obj/item/storage/backpack/explorer
name = "explorer bag"
@@ -206,7 +206,7 @@
name = "leather satchel"
desc = "It's a very fancy satchel made with fine leather."
icon_state = "satchel"
- burn_state = FIRE_PROOF
+ resistance_flags = FIRE_PROOF
var/strap_side_straight = FALSE
/obj/item/storage/backpack/satchel/verb/switch_strap()
@@ -242,7 +242,7 @@
name = "industrial satchel"
desc = "A tough satchel with extra pockets."
icon_state = "satchel-eng"
- burn_state = FIRE_PROOF
+ resistance_flags = FIRE_PROOF
/obj/item/storage/backpack/satchel/explorer
name = "explorer satchel"
@@ -336,6 +336,7 @@
origin_tech = "syndicate=1"
silent = 1
slowdown = 0
+ resistance_flags = FIRE_PROOF
/obj/item/storage/backpack/duffel/syndie/med
name = "suspicious duffelbag"
@@ -510,7 +511,7 @@
desc = "A duffelbag designed to hold tools."
icon_state = "duffel-eng"
item_state = "duffel-eng"
- burn_state = FIRE_PROOF
+ resistance_flags = FIRE_PROOF
/obj/item/storage/backpack/duffel/atmos
name = "atmospherics duffelbag"
@@ -537,6 +538,7 @@
desc = "A spacious backpack with lots of pockets, used by members of the Nanotrasen Emergency Response Team."
icon_state = "ert_commander"
item_state = "backpack"
+ resistance_flags = FIRE_PROOF
//Commander
/obj/item/storage/backpack/ert/commander
diff --git a/code/game/objects/items/weapons/storage/bags.dm b/code/game/objects/items/weapons/storage/bags.dm
index e8a181a197b..a3808bf5d80 100644
--- a/code/game/objects/items/weapons/storage/bags.dm
+++ b/code/game/objects/items/weapons/storage/bags.dm
@@ -169,7 +169,7 @@
max_w_class = WEIGHT_CLASS_NORMAL
w_class = WEIGHT_CLASS_TINY
can_hold = list(/obj/item/reagent_containers/food/snacks/grown,/obj/item/seeds,/obj/item/grown,/obj/item/reagent_containers/food/snacks/grown/ash_flora)
- burn_state = FLAMMABLE
+ resistance_flags = FLAMMABLE
/obj/item/storage/bag/plants/portaseeder
name = "portable seed extractor"
@@ -364,7 +364,7 @@
max_w_class = WEIGHT_CLASS_NORMAL
w_class = WEIGHT_CLASS_BULKY //Bigger than a book because physics
can_hold = list(/obj/item/book, /obj/item/storage/bible, /obj/item/tome, /obj/item/spellbook)
- burn_state = FLAMMABLE
+ resistance_flags = FLAMMABLE
/*
* Trays - Agouri
@@ -486,7 +486,7 @@
max_combined_w_class = 200
w_class = WEIGHT_CLASS_TINY
can_hold = list(/obj/item/reagent_containers/food/pill,/obj/item/reagent_containers/glass/beaker,/obj/item/reagent_containers/glass/bottle)
- burn_state = FLAMMABLE
+ resistance_flags = FLAMMABLE
/*
* Biowaste bag (mostly for xenobiologists)
*/
@@ -500,4 +500,4 @@
max_combined_w_class = 200
w_class = WEIGHT_CLASS_TINY
can_hold = list(/obj/item/slime_extract,/obj/item/reagent_containers/food/snacks/monkeycube,/obj/item/reagent_containers/syringe,/obj/item/reagent_containers/glass/beaker,/obj/item/reagent_containers/glass/bottle,/obj/item/reagent_containers/iv_bag,/obj/item/reagent_containers/hypospray/autoinjector)
- burn_state = FLAMMABLE
+ resistance_flags = FLAMMABLE
diff --git a/code/game/objects/items/weapons/storage/belt.dm b/code/game/objects/items/weapons/storage/belt.dm
index 579f2fddf0b..8582692cd39 100644
--- a/code/game/objects/items/weapons/storage/belt.dm
+++ b/code/game/objects/items/weapons/storage/belt.dm
@@ -293,6 +293,7 @@
icon_state = "militarybelt"
item_state = "military"
max_w_class = WEIGHT_CLASS_SMALL
+ resistance_flags = FIRE_PROOF
/obj/item/storage/belt/military/sst
icon_state = "assaultbelt"
diff --git a/code/game/objects/items/weapons/storage/boxes.dm b/code/game/objects/items/weapons/storage/boxes.dm
index d4e1ed2d7f1..776a53a7f26 100644
--- a/code/game/objects/items/weapons/storage/boxes.dm
+++ b/code/game/objects/items/weapons/storage/boxes.dm
@@ -24,7 +24,7 @@
desc = "It's just an ordinary box."
icon_state = "box"
item_state = "syringe_kit"
- burn_state = FLAMMABLE
+ resistance_flags = FLAMMABLE
var/foldable = /obj/item/stack/sheet/cardboard
var/amt = 1
@@ -964,6 +964,7 @@
desc = "A sack neatly crafted out of paper."
icon_state = "paperbag_None"
item_state = "paperbag_None"
+ resistance_flags = FLAMMABLE
foldable = null
var/design = NODESIGN
diff --git a/code/game/objects/items/weapons/storage/briefcase.dm b/code/game/objects/items/weapons/storage/briefcase.dm
index 0a2a8bcfbbc..b8f43de47de 100644
--- a/code/game/objects/items/weapons/storage/briefcase.dm
+++ b/code/game/objects/items/weapons/storage/briefcase.dm
@@ -12,7 +12,7 @@
max_w_class = WEIGHT_CLASS_NORMAL
max_combined_w_class = 21
attack_verb = list("bashed", "battered", "bludgeoned", "thrashed", "whacked")
- burn_state = FLAMMABLE
+ resistance_flags = FLAMMABLE
burntime = 20
/obj/item/storage/briefcase/sniperbundle
diff --git a/code/game/objects/items/weapons/storage/fancy.dm b/code/game/objects/items/weapons/storage/fancy.dm
index 603a86b072b..3b7aee036b9 100644
--- a/code/game/objects/items/weapons/storage/fancy.dm
+++ b/code/game/objects/items/weapons/storage/fancy.dm
@@ -17,7 +17,7 @@
icon = 'icons/obj/food/containers.dmi'
icon_state = "donutbox6"
name = "donut box"
- burn_state = FLAMMABLE
+ resistance_flags = FLAMMABLE
var/icon_type = "donut"
/obj/item/storage/fancy/update_icon(var/itemremoved = 0)
diff --git a/code/game/objects/items/weapons/storage/toolbox.dm b/code/game/objects/items/weapons/storage/toolbox.dm
index aa3b824d40d..e8cc64af842 100644
--- a/code/game/objects/items/weapons/storage/toolbox.dm
+++ b/code/game/objects/items/weapons/storage/toolbox.dm
@@ -121,6 +121,7 @@
desc = "A huge brass box with several indentations in its surface."
icon_state = "brassbox"
item_state = null
+ resistance_flags = FIRE_PROOF | ACID_PROOF
w_class = WEIGHT_CLASS_HUGE
max_w_class = WEIGHT_CLASS_NORMAL
max_combined_w_class = 28
diff --git a/code/game/objects/items/weapons/storage/wallets.dm b/code/game/objects/items/weapons/storage/wallets.dm
index 2b93bec6b52..197a3cad49f 100644
--- a/code/game/objects/items/weapons/storage/wallets.dm
+++ b/code/game/objects/items/weapons/storage/wallets.dm
@@ -5,7 +5,7 @@
icon = 'icons/obj/wallets.dmi'
icon_state = "wallet"
w_class = WEIGHT_CLASS_SMALL
- burn_state = FLAMMABLE
+ resistance_flags = FLAMMABLE
can_hold = list(
/obj/item/stack/spacecash,
/obj/item/card,
diff --git a/code/game/objects/items/weapons/tanks/jetpack.dm b/code/game/objects/items/weapons/tanks/jetpack.dm
index 21f43073b73..3ccc27db955 100644
--- a/code/game/objects/items/weapons/tanks/jetpack.dm
+++ b/code/game/objects/items/weapons/tanks/jetpack.dm
@@ -122,6 +122,7 @@
item_state = "jetpack-captain"
volume = 90
w_class = WEIGHT_CLASS_NORMAL
+ resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | ACID_PROOF //steal objective items are hard to destroy.
/obj/item/tank/jetpack/oxygen/harness
name = "jet harness (oxygen)"
diff --git a/code/game/objects/items/weapons/tanks/watertank.dm b/code/game/objects/items/weapons/tanks/watertank.dm
index 66bc8f6fb66..7819c1c8b54 100644
--- a/code/game/objects/items/weapons/tanks/watertank.dm
+++ b/code/game/objects/items/weapons/tanks/watertank.dm
@@ -10,6 +10,7 @@
slowdown = 1
actions_types = list(/datum/action/item_action/toggle_mister)
armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 100, "acid" = 30)
+ resistance_flags = FIRE_PROOF
var/obj/item/noz
var/on = 0
diff --git a/code/game/objects/items/weapons/teleportation.dm b/code/game/objects/items/weapons/teleportation.dm
index 1869fa6d95f..c463c7897fc 100644
--- a/code/game/objects/items/weapons/teleportation.dm
+++ b/code/game/objects/items/weapons/teleportation.dm
@@ -105,6 +105,7 @@ Frequency:
materials = list(MAT_METAL=10000)
origin_tech = "magnets=3;bluespace=4"
armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 30, "bio" = 0, "rad" = 0, "fire" = 100, "acid" = 100)
+ resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | ACID_PROOF
var/active_portals = 0
/obj/item/hand_tele/attack_self(mob/user as mob)
diff --git a/code/game/objects/items/weapons/tools.dm b/code/game/objects/items/weapons/tools.dm
index a6d914ce553..64e2d23dceb 100644
--- a/code/game/objects/items/weapons/tools.dm
+++ b/code/game/objects/items/weapons/tools.dm
@@ -45,6 +45,7 @@
desc = "A brass wrench. It's faintly warm to the touch."
icon_state = "wrench_brass"
toolspeed = 0.5
+ resistance_flags = FIRE_PROOF | ACID_PROOF
/obj/item/wrench/abductor
name = "alien wrench"
@@ -172,6 +173,7 @@
icon_state = "screwdriver_brass"
toolspeed = 0.5
random_color = FALSE
+ resistance_flags = FIRE_PROOF | ACID_PROOF
/obj/item/screwdriver/abductor
name = "alien screwdriver"
@@ -267,6 +269,7 @@
icon_state = "cutters_brass"
toolspeed = 0.5
random_color = FALSE
+ resistance_flags = FIRE_PROOF | ACID_PROOF
/obj/item/wirecutters/abductor
name = "alien wirecutters"
@@ -330,6 +333,7 @@
var/deac_sound = 'sound/items/welderdeactivate.ogg'
w_class = WEIGHT_CLASS_SMALL
armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 100, "acid" = 30)
+ resistance_flags = FIRE_PROOF
materials = list(MAT_METAL=70, MAT_GLASS=30)
origin_tech = "engineering=1;plasmatech=1"
toolspeed = 1
@@ -661,6 +665,7 @@
desc = "A brass welder that seems to constantly refuel itself. It is faintly warm to the touch."
icon_state = "brasswelder"
item_state = "brasswelder"
+ resistance_flags = FIRE_PROOF | ACID_PROOF
obj/item/weldingtool/experimental/process()
..()
@@ -699,6 +704,7 @@ obj/item/weldingtool/experimental/process()
icon_state = "crowbar_brass"
item_state = "crowbar_brass"
toolspeed = 0.5
+ resistance_flags = FIRE_PROOF | ACID_PROOF
/obj/item/crowbar/abductor
name = "alien crowbar"
diff --git a/code/game/objects/items/weapons/twohanded.dm b/code/game/objects/items/weapons/twohanded.dm
index 546286380ec..27a844ca5c8 100644
--- a/code/game/objects/items/weapons/twohanded.dm
+++ b/code/game/objects/items/weapons/twohanded.dm
@@ -115,6 +115,7 @@
icon_state = "offhand"
name = "offhand"
flags = ABSTRACT
+ resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | UNACIDABLE | ACID_PROOF
/obj/item/twohanded/offhand/unwield()
if(!QDELETED(src))
@@ -182,6 +183,7 @@
hitsound = 'sound/weapons/bladeslice.ogg'
usesound = 'sound/items/crowbar.ogg'
armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 100, "acid" = 30)
+ resistance_flags = FIRE_PROOF
/obj/item/twohanded/fireaxe/update_icon() //Currently only here to fuck with the on-mob icons.
icon_state = "fireaxe[wielded]"
@@ -232,6 +234,7 @@
block_chance = 75
sharp_when_wielded = TRUE // only sharp when wielded
armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 100, "acid" = 70)
+ resistance_flags = FIRE_PROOF
light_power = 2
var/brightness_on = 2
var/colormap = list(red=LIGHT_COLOR_RED, blue=LIGHT_COLOR_LIGHTBLUE, green=LIGHT_COLOR_GREEN, purple=LIGHT_COLOR_PURPLE, rainbow=LIGHT_COLOR_WHITE)
@@ -589,6 +592,7 @@
throw_range = 1
w_class = WEIGHT_CLASS_HUGE
armor = list("melee" = 50, "bullet" = 50, "laser" = 50, "energy" = 0, "bomb" = 50, "bio" = 0, "rad" = 0, "fire" = 100, "acid" = 100)
+ resistance_flags = FIRE_PROOF | ACID_PROOF
var/charged = 5
origin_tech = "combat=4;bluespace=4;plasmatech=7"
@@ -810,6 +814,7 @@
attack_verb = list("attacked", "impaled", "pierced")
hitsound = 'sound/weapons/bladeslice.ogg'
armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 100, "acid" = 30)
+ resistance_flags = FIRE_PROOF
/obj/item/twohanded/pitchfork/demonic
name = "demonic pitchfork"
diff --git a/code/game/objects/items/weapons/weaponry.dm b/code/game/objects/items/weapons/weaponry.dm
index 579870aed28..4f30d5808f0 100644
--- a/code/game/objects/items/weapons/weaponry.dm
+++ b/code/game/objects/items/weapons/weaponry.dm
@@ -10,6 +10,7 @@
throw_range = 15
attack_verb = list("banned")
armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 100, "acid" = 70)
+ resistance_flags = FIRE_PROOF
/obj/item/banhammer/suicide_act(mob/user)
@@ -48,6 +49,7 @@
attack_verb = list("attacked", "slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut")
block_chance = 50
armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 100, "acid" = 50)
+ resistance_flags = FIRE_PROOF
/obj/item/claymore/suicide_act(mob/user)
user.visible_message("[user] is falling on the [name]! It looks like [user.p_theyre()] trying to commit suicide.")
@@ -73,6 +75,7 @@
attack_verb = list("attacked", "slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut")
block_chance = 50
armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 100, "acid" = 50)
+ resistance_flags = FIRE_PROOF
/obj/item/katana/cursed
slot_flags = null
@@ -149,6 +152,7 @@
embedded_fall_chance = 0 //Hahaha!
sharp = 1
materials = list(MAT_METAL=500, MAT_GLASS=500)
+ resistance_flags = FIRE_PROOF
/obj/item/spear/kidan
icon_state = "kidanspear"
diff --git a/code/game/objects/structures.dm b/code/game/objects/structures.dm
index f4ef8744652..868aeeff335 100644
--- a/code/game/objects/structures.dm
+++ b/code/game/objects/structures.dm
@@ -164,7 +164,7 @@
/obj/structure/examine(mob/user)
..()
if(!(resistance_flags & INDESTRUCTIBLE))
- if(burn_state == ON_FIRE)
+ if(resistance_flags & ON_FIRE)
to_chat(user, "It's on fire!")
if(broken)
to_chat(user, "It appears to be broken.")
diff --git a/code/game/objects/structures/bedsheet_bin.dm b/code/game/objects/structures/bedsheet_bin.dm
index ceac14daa5c..af1552de982 100644
--- a/code/game/objects/structures/bedsheet_bin.dm
+++ b/code/game/objects/structures/bedsheet_bin.dm
@@ -16,7 +16,7 @@ LINEN BINS
throw_range = 2
w_class = WEIGHT_CLASS_TINY
item_color = "white"
- burn_state = FLAMMABLE
+ resistance_flags = FLAMMABLE
slot_flags = SLOT_BACK
dog_fashion = /datum/dog_fashion/head/ghost
@@ -236,8 +236,8 @@ LINEN BINS
icon = 'icons/obj/structures.dmi'
icon_state = "linenbin-full"
anchored = 1
- burn_state = FLAMMABLE
- burntime = 20
+ resistance_flags = FLAMMABLE
+ max_integrity = 70
var/amount = 20
var/list/sheets = list()
var/obj/item/hidden = null
diff --git a/code/game/objects/structures/crates_lockers/closets/cardboardbox.dm b/code/game/objects/structures/crates_lockers/closets/cardboardbox.dm
index f642960e52e..6f0bd9f257c 100644
--- a/code/game/objects/structures/crates_lockers/closets/cardboardbox.dm
+++ b/code/game/objects/structures/crates_lockers/closets/cardboardbox.dm
@@ -5,9 +5,9 @@
icon_state = "cardboard"
icon_opened = "cardboard_open"
icon_closed = "cardboard"
- health = 10
- burn_state = FLAMMABLE
- burntime = 20
+ resistance_flags = FLAMMABLE
+ max_integrity = 70
+ integrity_failure = 0
sound = 'sound/effects/rustle2.ogg'
material_drop = /obj/item/stack/sheet/cardboard
var/amt = 4
diff --git a/code/game/objects/structures/crates_lockers/closets/coffin.dm b/code/game/objects/structures/crates_lockers/closets/coffin.dm
index 6e34e70894e..eb0958f03c6 100644
--- a/code/game/objects/structures/crates_lockers/closets/coffin.dm
+++ b/code/game/objects/structures/crates_lockers/closets/coffin.dm
@@ -4,8 +4,8 @@
icon_state = "coffin"
icon_closed = "coffin"
icon_opened = "coffin_open"
- burn_state = FLAMMABLE
- burntime = 20
+ resistance_flags = FLAMMABLE
+ max_integrity = 70
material_drop = /obj/item/stack/sheet/wood
/obj/structure/closet/coffin/update_icon()
diff --git a/code/game/objects/structures/crates_lockers/closets/gimmick.dm b/code/game/objects/structures/crates_lockers/closets/gimmick.dm
index 94895458d2b..6f388b0bd40 100644
--- a/code/game/objects/structures/crates_lockers/closets/gimmick.dm
+++ b/code/game/objects/structures/crates_lockers/closets/gimmick.dm
@@ -4,8 +4,8 @@
icon_state = "cabinet_closed"
icon_closed = "cabinet_closed"
icon_opened = "cabinet_open"
- burn_state = FLAMMABLE
- burntime = 20
+ resistance_flags = FLAMMABLE
+ max_integrity = 70
/obj/structure/closet/cabinet/update_icon()
if(!opened)
diff --git a/code/game/objects/structures/crates_lockers/closets/secure/bar.dm b/code/game/objects/structures/crates_lockers/closets/secure/bar.dm
index 195b9e2864c..b8f57705d64 100644
--- a/code/game/objects/structures/crates_lockers/closets/secure/bar.dm
+++ b/code/game/objects/structures/crates_lockers/closets/secure/bar.dm
@@ -7,8 +7,8 @@
icon_opened = "cabinetdetective_open"
icon_broken = "cabinetdetective_broken"
icon_off = "cabinetdetective_broken"
- burn_state = FLAMMABLE
- burntime = 20
+ resistance_flags = FLAMMABLE
+ max_integrity = 70
/obj/structure/closet/secure_closet/bar/New()
..()
diff --git a/code/game/objects/structures/crates_lockers/closets/secure/personal.dm b/code/game/objects/structures/crates_lockers/closets/secure/personal.dm
index 5c75494a27a..39ccdd14d5d 100644
--- a/code/game/objects/structures/crates_lockers/closets/secure/personal.dm
+++ b/code/game/objects/structures/crates_lockers/closets/secure/personal.dm
@@ -33,8 +33,8 @@
icon_opened = "cabinetdetective_open"
icon_broken = "cabinetdetective_broken"
icon_off = "cabinetdetective_broken"
- burn_state = FLAMMABLE
- burntime = 20
+ resistance_flags = FLAMMABLE
+ max_integrity = 70
/obj/structure/closet/secure_closet/personal/cabinet/update_icon()
if(broken)
diff --git a/code/game/objects/structures/crates_lockers/closets/secure/security.dm b/code/game/objects/structures/crates_lockers/closets/secure/security.dm
index 2501c32c2a6..4eee8bd4245 100644
--- a/code/game/objects/structures/crates_lockers/closets/secure/security.dm
+++ b/code/game/objects/structures/crates_lockers/closets/secure/security.dm
@@ -333,8 +333,8 @@
icon_opened = "cabinetdetective_open"
icon_broken = "cabinetdetective_broken"
icon_off = "cabinetdetective_broken"
- burn_state = FLAMMABLE
- burntime = 20
+ resistance_flags = FLAMMABLE
+ max_integrity = 70
/obj/structure/closet/secure_closet/detective/New()
..()
diff --git a/code/game/objects/structures/displaycase.dm b/code/game/objects/structures/displaycase.dm
index b47d44fa766..871d4827f16 100644
--- a/code/game/objects/structures/displaycase.dm
+++ b/code/game/objects/structures/displaycase.dm
@@ -16,6 +16,7 @@ GLOBAL_LIST_INIT(captain_display_cases, list())
name = "display case frame"
icon = 'icons/obj/stock_parts.dmi'
icon_state = "box_glass"
+ resistance_flags = ACID_PROOF
armor = list("melee" = 30, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 10, "bio" = 0, "rad" = 0, "fire" = 70, "acid" = 100)
var/obj/item/airlock_electronics/circuit = null
var/obj/item/assembly/prox_sensor/sensor = null
@@ -95,7 +96,7 @@ GLOBAL_LIST_INIT(captain_display_cases, list())
desc = "A display case for prized possessions. It taunts you to kick it."
density = TRUE
anchored = TRUE
- unacidable = TRUE //Dissolving the case would also delete the contents.
+ resistance_flags = ACID_PROOF
armor = list("melee" = 30, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 10, "bio" = 0, "rad" = 0, "fire" = 70, "acid" = 100)
var/health = 30
var/obj/item/occupant = null
diff --git a/code/game/objects/structures/dresser.dm b/code/game/objects/structures/dresser.dm
index 998120c3ee8..7fa3dd3f51e 100644
--- a/code/game/objects/structures/dresser.dm
+++ b/code/game/objects/structures/dresser.dm
@@ -5,8 +5,6 @@
icon_state = "dresser"
density = 1
anchored = 1
- burn_state = FLAMMABLE
- burntime = 25
/obj/structure/dresser/attack_hand(mob/user as mob)
if(!Adjacent(user))//no tele-grooming
diff --git a/code/game/objects/structures/false_walls.dm b/code/game/objects/structures/false_walls.dm
index 482bf4b84b6..ed5c43b5a67 100644
--- a/code/game/objects/structures/false_walls.dm
+++ b/code/game/objects/structures/false_walls.dm
@@ -333,8 +333,7 @@
desc = "A huge chunk of warm metal. The clanging of machinery emanates from within."
icon = 'icons/turf/walls/clockwork_wall.dmi'
icon_state = "clockwork_wall"
- burn_state = FIRE_PROOF
- unacidable = TRUE
+ resistance_flags = FIRE_PROOF | ACID_PROOF
mineral_amount = 1
canSmoothWith = list(/obj/effect/clockwork/overlay/wall, /obj/structure/falsewall/brass)
girder_type = /obj/structure/clockwork/wall_gear/displaced
diff --git a/code/game/objects/structures/flora.dm b/code/game/objects/structures/flora.dm
index 9c51cc0d451..7830fd4f101 100644
--- a/code/game/objects/structures/flora.dm
+++ b/code/game/objects/structures/flora.dm
@@ -1,6 +1,6 @@
/obj/structure/flora
- burn_state = FLAMMABLE
- burntime = 30
+ resistance_flags = FLAMMABLE
+ max_integrity = 150
//trees
/obj/structure/flora/tree
@@ -244,7 +244,7 @@
desc = "a rock"
icon_state = "rock1"
icon = 'icons/obj/flora/rocks.dmi'
- burn_state = FIRE_PROOF
+ resistance_flags = FIRE_PROOF
anchored = 1
/obj/structure/flora/rock/New()
diff --git a/code/game/objects/structures/lavaland/necropolis_tendril.dm b/code/game/objects/structures/lavaland/necropolis_tendril.dm
index 7ce1f6626b9..f906bb30a34 100644
--- a/code/game/objects/structures/lavaland/necropolis_tendril.dm
+++ b/code/game/objects/structures/lavaland/necropolis_tendril.dm
@@ -13,7 +13,7 @@
move_resist = INFINITY // just killing it tears a massive hole in the ground, let's not move it
anchored = TRUE
- burn_state = LAVA_PROOF
+ resistance_flags = FIRE_PROOF | LAVA_PROOF
var/gps = null
var/obj/effect/light_emitter/tendril/emitted_light
diff --git a/code/game/objects/structures/mineral_doors.dm b/code/game/objects/structures/mineral_doors.dm
index d65f6fd167c..52a227b66b6 100644
--- a/code/game/objects/structures/mineral_doors.dm
+++ b/code/game/objects/structures/mineral_doors.dm
@@ -250,8 +250,8 @@
closeSound = 'sound/effects/doorcreaky.ogg'
sheetType = /obj/item/stack/sheet/wood
hardness = 1
- burn_state = FLAMMABLE
- burntime = 30
+ resistance_flags = FLAMMABLE
+ max_integrity = 200
/obj/structure/mineral_door/resin
name = "resin door"
diff --git a/code/game/objects/structures/safe.dm b/code/game/objects/structures/safe.dm
index 68a3081fc22..dfab5ccadab 100644
--- a/code/game/objects/structures/safe.dm
+++ b/code/game/objects/structures/safe.dm
@@ -17,8 +17,7 @@ GLOBAL_LIST_EMPTY(safes)
anchored = TRUE
density = TRUE
- burn_state = LAVA_PROOF
- unacidable = TRUE
+ resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | ACID_PROOF
var/open = FALSE
var/locked = TRUE
diff --git a/code/game/objects/structures/signs.dm b/code/game/objects/structures/signs.dm
index 6f7d29ae9cc..f7d0b1cbc07 100644
--- a/code/game/objects/structures/signs.dm
+++ b/code/game/objects/structures/signs.dm
@@ -42,7 +42,7 @@
desc = ""
icon = 'icons/obj/decals.dmi'
w_class = WEIGHT_CLASS_NORMAL
- burn_state = FLAMMABLE
+ resistance_flags = FLAMMABLE
var/sign_state = ""
/obj/item/sign/attackby(obj/item/tool as obj, mob/user as mob) //construction
@@ -125,11 +125,13 @@
name = "\improper DANGER: FIRE"
desc = "A warning sign which reads 'DANGER: FIRE'"
icon_state = "fire"
+ resistance_flags = FIRE_PROOF
/obj/structure/sign/nosmoking_1
name = "\improper NO SMOKING"
desc = "A warning sign which reads 'NO SMOKING'"
icon_state = "nosmoking"
+ resistance_flags = FLAMMABLE
/obj/structure/sign/nosmoking_2
name = "\improper NO SMOKING"
diff --git a/code/game/objects/structures/stool_bed_chair_nest/bed.dm b/code/game/objects/structures/stool_bed_chair_nest/bed.dm
index adbeffd600d..85d58d2de3a 100644
--- a/code/game/objects/structures/stool_bed_chair_nest/bed.dm
+++ b/code/game/objects/structures/stool_bed_chair_nest/bed.dm
@@ -17,8 +17,9 @@
can_buckle = TRUE
anchored = TRUE
buckle_lying = TRUE
- burn_state = FLAMMABLE
- burntime = 30
+ resistance_flags = FLAMMABLE
+ max_integrity = 100
+ integrity_failure = 30
var/buildstacktype = /obj/item/stack/sheet/metal
var/buildstackamount = 2
buckle_offset = -6
@@ -62,7 +63,7 @@
name = "roller bed"
icon = 'icons/obj/rollerbed.dmi'
icon_state = "down"
- burn_state = FIRE_PROOF
+ resistance_flags = NONE
anchored = FALSE
comfort = 1
diff --git a/code/game/objects/structures/stool_bed_chair_nest/chairs.dm b/code/game/objects/structures/stool_bed_chair_nest/chairs.dm
index 8192e39b85d..d389a7e9983 100644
--- a/code/game/objects/structures/stool_bed_chair_nest/chairs.dm
+++ b/code/game/objects/structures/stool_bed_chair_nest/chairs.dm
@@ -7,7 +7,7 @@
can_buckle = TRUE
buckle_lying = FALSE // you sit in a chair, not lay
anchored = TRUE
- burn_state = FIRE_PROOF
+ resistance_flags = NONE
buckle_offset = 0
var/buildstacktype = /obj/item/stack/sheet/metal
var/buildstackamount = 1
@@ -136,8 +136,8 @@
name = "wooden chair"
desc = "Old is never too old to not be in fashion."
icon_state = "wooden_chair"
- burn_state = FLAMMABLE
- burntime = 20
+ resistance_flags = FLAMMABLE
+ max_integrity = 70
buildstackamount = 3
buildstacktype = /obj/item/stack/sheet/wood
item_chair = /obj/item/chair/wood
@@ -154,8 +154,8 @@
desc = "It looks comfy."
icon_state = "comfychair"
color = rgb(255, 255, 255)
- burn_state = FLAMMABLE
- burntime = 30
+ resistance_flags = FLAMMABLE
+ max_integrity = 70
buildstackamount = 2
item_chair = null
var/image/armrest = null
@@ -415,7 +415,7 @@
name = "wooden chair"
icon_state = "wooden_chair_toppled"
item_state = "woodenchair"
- burn_state = FLAMMABLE
+ resistance_flags = FLAMMABLE
max_integrity = 70
hitsound = 'sound/weapons/genhit1.ogg'
origin_type = /obj/structure/chair/wood
diff --git a/code/game/objects/structures/table_frames.dm b/code/game/objects/structures/table_frames.dm
index 1786d8cc8ff..fe2ee995413 100644
--- a/code/game/objects/structures/table_frames.dm
+++ b/code/game/objects/structures/table_frames.dm
@@ -100,7 +100,7 @@
icon_state = "wood_frame"
framestack = /obj/item/stack/sheet/wood
framestackamount = 2
- burn_state = FLAMMABLE
+ resistance_flags = FLAMMABLE
/obj/structure/table_frame/wood/attackby(obj/item/I, mob/user, params)
if(istype(I, /obj/item/stack/sheet/wood))
@@ -127,8 +127,7 @@
name = "brass table frame"
desc = "Four pieces of brass arranged in a square. It's slightly warm to the touch."
icon_state = "brass_frame"
- burn_state = FIRE_PROOF
- unacidable = 1
+ resistance_flags = FIRE_PROOF | ACID_PROOF
framestack = /obj/item/stack/tile/brass
framestackamount = 1
diff --git a/code/game/objects/structures/tables_racks.dm b/code/game/objects/structures/tables_racks.dm
index e44fe844bdd..665175fc4b7 100644
--- a/code/game/objects/structures/tables_racks.dm
+++ b/code/game/objects/structures/tables_racks.dm
@@ -368,9 +368,9 @@
icon = 'icons/obj/smooth_structures/glass_table.dmi'
icon_state = "glass_table"
buildstack = /obj/item/stack/sheet/glass
- max_integrity = 70
- unacidable = 1
canSmoothWith = null
+ max_integrity = 70
+ resistance_flags = ACID_PROOF
armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 80, "acid" = 100)
var/list/debris = list()
@@ -453,8 +453,7 @@
buildstack = /obj/item/stack/sheet/wood
max_integrity = 70
canSmoothWith = list(/obj/structure/table/wood, /obj/structure/table/wood/poker)
- burn_state = FLAMMABLE
- burntime = 20
+ resistance_flags = FLAMMABLE
/obj/structure/table/wood/narsie_act(total_override = TRUE)
if(!total_override)
@@ -550,7 +549,7 @@
desc = "A solid, slightly beveled brass table."
icon = 'icons/obj/smooth_structures/brass_table.dmi'
icon_state = "brass_table"
- burn_state = FIRE_PROOF
+ resistance_flags = FIRE_PROOF | ACID_PROOF
frame = /obj/structure/table_frame/brass
framestack = /obj/item/stack/tile/brass
buildstack = /obj/item/stack/tile/brass
diff --git a/code/game/objects/structures/watercloset.dm b/code/game/objects/structures/watercloset.dm
index 0958f3cc0e0..fc5ec2b9339 100644
--- a/code/game/objects/structures/watercloset.dm
+++ b/code/game/objects/structures/watercloset.dm
@@ -671,6 +671,7 @@
icon_state = "puddle"
can_move = 0
can_rotate = 0
+ resistance_flags = UNACIDABLE
/obj/structure/sink/puddle/attack_hand(mob/M as mob)
icon_state = "puddle-splash"
diff --git a/code/game/objects/structures/window.dm b/code/game/objects/structures/window.dm
index b059daa6d6f..39b40149eba 100644
--- a/code/game/objects/structures/window.dm
+++ b/code/game/objects/structures/window.dm
@@ -32,6 +32,7 @@ var/global/wcCommon = pick(list("#379963", "#0d8395", "#58b5c3", "#49e46e", "#8f
flags = ON_BORDER
can_be_unanchored = TRUE
max_integrity = 25
+ resistance_flags = ACID_PROOF
armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 80, "acid" = 100)
var/ini_dir = null
var/state = WINDOW_OUT_OF_FRAME
@@ -693,8 +694,7 @@ obj/structure/window/full/reinforced/ice
desc = "A paper-thin pane of translucent yet reinforced brass."
icon = 'icons/obj/smooth_structures/clockwork_window.dmi'
icon_state = "clockwork_window_single"
- burn_state = FIRE_PROOF
- unacidable = 1
+ resistance_flags = FIRE_PROOF | ACID_PROOF
max_integrity = 80
armor = list("melee" = 60, "bullet" = 25, "laser" = 0, "energy" = 0, "bomb" = 25, "bio" = 100, "rad" = 100, "fire" = 80, "acid" = 100)
explosion_block = 2 //fancy AND hard to destroy. the most useful combination.
diff --git a/code/game/shuttle_engines.dm b/code/game/shuttle_engines.dm
index b06a08b295d..bd304b93883 100644
--- a/code/game/shuttle_engines.dm
+++ b/code/game/shuttle_engines.dm
@@ -1,6 +1,7 @@
/obj/structure/shuttle
name = "shuttle"
icon = 'icons/turf/shuttle.dmi'
+ resistance_flags = LAVA_PROOF | FIRE_PROOF | ACID_PROOF
armor = list(melee = 100, bullet = 10, laser = 10, energy = 0, bomb = 0, bio = 0, rad = 0, fire = 50, acid = 70) //default + ignores melee
/obj/structure/shuttle/shuttleRotate(rotation)
diff --git a/code/modules/assembly/signaler.dm b/code/modules/assembly/signaler.dm
index addc6f847ab..29f79cae1a7 100644
--- a/code/modules/assembly/signaler.dm
+++ b/code/modules/assembly/signaler.dm
@@ -165,6 +165,7 @@
desc = "The neutralized core of an anomaly. It'd probably be valuable for research."
icon_state = "anomaly core"
item_state = "electronic"
+ resistance_flags = FIRE_PROOF
receiving = TRUE
/obj/item/assembly/signaler/anomaly/receive_signal(datum/signal/signal)
diff --git a/code/modules/awaymissions/gateway.dm b/code/modules/awaymissions/gateway.dm
index d6e72f1505c..86e11158ae5 100644
--- a/code/modules/awaymissions/gateway.dm
+++ b/code/modules/awaymissions/gateway.dm
@@ -6,7 +6,7 @@ var/obj/machinery/gateway/centerstation/the_gateway = null
icon_state = "off"
density = 1
anchored = 1
- unacidable = 1
+ resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | UNACIDABLE | ACID_PROOF
var/active = 0
/obj/machinery/gateway/Initialize()
diff --git a/code/modules/awaymissions/mission_code/ruins/oldstation.dm b/code/modules/awaymissions/mission_code/ruins/oldstation.dm
index b66b272c763..83cdfd8ac5c 100644
--- a/code/modules/awaymissions/mission_code/ruins/oldstation.dm
+++ b/code/modules/awaymissions/mission_code/ruins/oldstation.dm
@@ -160,7 +160,7 @@
item_state = "anc_helm"
armor = list("melee" = 30, "bullet" = 5, "laser" = 5, "energy" = 0, "bomb" = 50, "bio" = 100, "rad" = 100, "fire" = 100, "acid" = 75)
item_color = "ancient"
- burn_state = FIRE_PROOF
+ resistance_flags = FIRE_PROOF
sprite_sheets = null
/obj/item/clothing/suit/space/hardsuit/ancient
@@ -170,7 +170,7 @@
item_state = "anc_hardsuit"
armor = list("melee" = 30, "bullet" = 5, "laser" = 5, "energy" = 0, "bomb" = 50, "bio" = 100, "rad" = 100, "fire" = 100, "acid" = 75)
slowdown = 3
- burn_state = FIRE_PROOF
+ resistance_flags = FIRE_PROOF
sprite_sheets = null
helmettype = /obj/item/clothing/head/helmet/space/hardsuit/ancient
var/footstep = 1
diff --git a/code/modules/clothing/clothing.dm b/code/modules/clothing/clothing.dm
index 05eed4f5951..051b03d2252 100644
--- a/code/modules/clothing/clothing.dm
+++ b/code/modules/clothing/clothing.dm
@@ -1,6 +1,6 @@
/obj/item/clothing
name = "clothing"
- burn_state = FLAMMABLE
+ resistance_flags = FLAMMABLE
var/list/species_restricted = null //Only these species can wear this kit.
var/scan_reagents = 0 //Can the wearer see reagents while it's equipped?
@@ -123,7 +123,7 @@
w_class = WEIGHT_CLASS_TINY
throwforce = 2
slot_flags = SLOT_EARS
- burn_state = FIRE_PROOF
+ resistance_flags = NONE
sprite_sheets = list(
"Vox" = 'icons/mob/species/vox/ears.dmi',
"Vox Armalis" = 'icons/mob/species/armalis/ears.dmi'
@@ -201,7 +201,7 @@
var/over_mask = FALSE //Whether or not the eyewear is rendered above the mask. Purely cosmetic.
strip_delay = 20 // but seperated to allow items to protect but not impair vision, like space helmets
put_on_delay = 25
- burn_state = FIRE_PROOF
+ resistance_flags = NONE
species_restricted = list("exclude","Kidan")
/*
SEE_SELF // can see self, no matter what
@@ -600,7 +600,7 @@ BLIND // can't see anything
flash_protect = 2
strip_delay = 50
put_on_delay = 50
- burn_state = FIRE_PROOF
+ resistance_flags = NONE
dog_fashion = null
/obj/item/clothing/suit/space
@@ -623,7 +623,7 @@ BLIND // can't see anything
max_heat_protection_temperature = SPACE_SUIT_MAX_TEMP_PROTECT
strip_delay = 80
put_on_delay = 80
- burn_state = FIRE_PROOF
+ resistance_flags = NONE
hide_tail_by_species = null
species_restricted = list("exclude","Vox","Wryn")
diff --git a/code/modules/clothing/ears/ears.dm b/code/modules/clothing/ears/ears.dm
index 74164f0e245..2ba883a6f89 100644
--- a/code/modules/clothing/ears/ears.dm
+++ b/code/modules/clothing/ears/ears.dm
@@ -7,7 +7,7 @@
flags_2 = HEALS_EARS_2
strip_delay = 15
put_on_delay = 25
- burn_state = FLAMMABLE
+ resistance_flags = FLAMMABLE
/obj/item/clothing/ears/headphones
name = "headphones"
@@ -16,7 +16,6 @@
icon_state = "headphones0"
item_state = null
actions_types = list(/datum/action/item_action/toggle_headphones)
- burn_state = FLAMMABLE
/obj/item/clothing/ears/headphones/attack_self(mob/user)
on = !on
diff --git a/code/modules/clothing/glasses/glasses.dm b/code/modules/clothing/glasses/glasses.dm
index 6cab9cbddd0..ce29fa8f7b1 100644
--- a/code/modules/clothing/glasses/glasses.dm
+++ b/code/modules/clothing/glasses/glasses.dm
@@ -104,6 +104,7 @@
origin_tech = "magnets=2;engineering=1"
prescription_upgradable = 0
scan_reagents = 1 //You can see reagents while wearing science goggles
+ resistance_flags = ACID_PROOF
armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 80, "acid" = 100)
sprite_sheets = list(
"Vox" = 'icons/mob/species/vox/eyes.dmi',
@@ -449,7 +450,7 @@
flags = NODROP
flags_cover = null
lighting_alpha = LIGHTING_PLANE_ALPHA_MOSTLY_INVISIBLE
-
+ resistance_flags = LAVA_PROOF | FIRE_PROOF
sprite_sheets = list(
"Vox" = 'icons/mob/species/vox/eyes.dmi',
"Grey" = 'icons/mob/species/grey/eyes.dmi',
diff --git a/code/modules/clothing/gloves/color.dm b/code/modules/clothing/gloves/color.dm
index 00a548494ab..3528b19cebd 100644
--- a/code/modules/clothing/gloves/color.dm
+++ b/code/modules/clothing/gloves/color.dm
@@ -6,7 +6,7 @@
siemens_coefficient = 0
permeability_coefficient = 0.05
item_color="yellow"
- burn_state = FIRE_PROOF
+ resistance_flags = NONE
/obj/item/clothing/gloves/color/yellow/power
description_antag = "These are a pair of power gloves, and can be used to fire bolts of electricity while standing over powered power cables."
@@ -58,7 +58,7 @@
siemens_coefficient = 1 //Set to a default of 1, gets overridden in New()
permeability_coefficient = 0.05
item_color="yellow"
- burn_state = FIRE_PROOF
+ resistance_flags = NONE
/obj/item/clothing/gloves/color/fyellow/New()
..()
@@ -82,7 +82,7 @@
min_cold_protection_temperature = GLOVES_MIN_TEMP_PROTECT
heat_protection = HANDS
max_heat_protection_temperature = GLOVES_MAX_TEMP_PROTECT
- burn_state = FIRE_PROOF
+ resistance_flags = NONE
var/can_be_cut = 1
@@ -131,7 +131,7 @@
desc = "These gloves will protect the wearer from electric shock."
siemens_coefficient = 0
permeability_coefficient = 0.05
- burn_state = FIRE_PROOF
+ resistance_flags = NONE
/obj/item/clothing/gloves/color/rainbow
name = "rainbow gloves"
@@ -202,7 +202,7 @@
permeability_coefficient = 0.01
item_color="white"
transfer_prints = TRUE
- burn_state = FIRE_PROOF
+ resistance_flags = NONE
/obj/item/clothing/gloves/color/latex/nitrile
name = "nitrile gloves"
diff --git a/code/modules/clothing/gloves/miscellaneous.dm b/code/modules/clothing/gloves/miscellaneous.dm
index d592f90a407..fef737982fa 100644
--- a/code/modules/clothing/gloves/miscellaneous.dm
+++ b/code/modules/clothing/gloves/miscellaneous.dm
@@ -36,7 +36,7 @@
min_cold_protection_temperature = GLOVES_MIN_TEMP_PROTECT
heat_protection = HANDS
max_heat_protection_temperature = GLOVES_MAX_TEMP_PROTECT
- burn_state = FIRE_PROOF
+ resistance_flags = NONE
armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 80, "acid" = 50)
/obj/item/clothing/gloves/bracer
@@ -64,7 +64,7 @@
min_cold_protection_temperature = GLOVES_MIN_TEMP_PROTECT
heat_protection = HANDS
max_heat_protection_temperature = GLOVES_MAX_TEMP_PROTECT
- burn_state = FIRE_PROOF
+ resistance_flags = NONE
armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 70, "acid" = 30)
/obj/item/clothing/gloves/batmangloves
diff --git a/code/modules/clothing/head/collectable.dm b/code/modules/clothing/head/collectable.dm
index 2cfc2adccaf..cc5c3248b19 100644
--- a/code/modules/clothing/head/collectable.dm
+++ b/code/modules/clothing/head/collectable.dm
@@ -64,7 +64,6 @@
desc = "A Collectable Welding Helmet. Now with 80% less lead! Not for actual welding. Any welding done while wearing this Helmet is done so at the owner's own risk!"
icon_state = "welding"
item_state = "welding"
- burn_state = FIRE_PROOF
sprite_sheets = list(
"Vox" = 'icons/mob/species/vox/helmet.dmi',
@@ -135,14 +134,12 @@
desc = "Go Red! I mean Green! I mean Red! No Green!"
icon_state = "thunderdome"
item_state = "thunderdome"
- burn_state = FIRE_PROOF
/obj/item/clothing/head/collectable/swat
name = "collectable SWAT helmet"
desc = "Now you can be in the Deathsquad too!"
icon_state = "swat"
item_state = "swat"
- burn_state = FIRE_PROOF
sprite_sheets = list(
"Vox" = 'icons/mob/species/vox/helmet.dmi'
diff --git a/code/modules/clothing/head/hardhat.dm b/code/modules/clothing/head/hardhat.dm
index 728062c9745..18b92433f83 100644
--- a/code/modules/clothing/head/hardhat.dm
+++ b/code/modules/clothing/head/hardhat.dm
@@ -10,7 +10,7 @@
armor = list("melee" = 15, "bullet" = 5, "laser" = 20, "energy" = 10, "bomb" = 20, "bio" = 10, "rad" = 20, "fire" = 100, "acid" = 50)
flags_inv = 0
actions_types = list(/datum/action/item_action/toggle_helmet_light)
- burn_state = FIRE_PROOF
+ resistance_flags = FIRE_PROOF
dog_fashion = /datum/dog_fashion/head/hardhat
sprite_sheets = list(
"Grey" = 'icons/mob/species/grey/head.dmi'
diff --git a/code/modules/clothing/head/helmet.dm b/code/modules/clothing/head/helmet.dm
index 211ff97610a..d47e3c32365 100644
--- a/code/modules/clothing/head/helmet.dm
+++ b/code/modules/clothing/head/helmet.dm
@@ -12,7 +12,6 @@
heat_protection = HEAD
max_heat_protection_temperature = HELMET_MAX_TEMP_PROTECT
strip_delay = 60
- burn_state = FIRE_PROOF
dog_fashion = /datum/dog_fashion/head/helmet
sprite_sheets = list(
"Vox" = 'icons/mob/species/vox/helmet.dmi',
@@ -158,6 +157,7 @@
desc = "An ancient helmet made of bronze and leather."
flags = null
armor = list("melee" = 25, "bullet" = 0, "laser" = 25, "energy" = 10, "bomb" = 10, "bio" = 0, "rad" = 0, "fire" = 100, "acid" = 50)
+ resistance_flags = FIRE_PROOF
icon_state = "roman"
item_state = "roman"
strip_delay = 100
@@ -260,6 +260,7 @@ obj/item/clothing/head/blob
desc = "A helmet made from durathread and leather."
icon_state = "durathread"
item_state = "durathread"
+ resistance_flags = FLAMMABLE
armor = list("melee" = 20, "bullet" = 10, "laser" = 30, "energy" = 5, "bomb" = 15, "bio" = 0, "rad" = 0, "fire" = 40, "acid" = 50)
strip_delay = 60
diff --git a/code/modules/clothing/head/misc.dm b/code/modules/clothing/head/misc.dm
index a12b8607f15..97d26b799e2 100644
--- a/code/modules/clothing/head/misc.dm
+++ b/code/modules/clothing/head/misc.dm
@@ -400,7 +400,7 @@
throw_range = 5
w_class = WEIGHT_CLASS_SMALL
attack_verb = list("warned", "cautioned", "smashed")
- burn_state = FIRE_PROOF
+ resistance_flags = NONE
/obj/item/clothing/head/jester
name = "jester hat"
@@ -473,6 +473,7 @@
desc = "A crown fit for a king, a petty king maybe."
icon_state = "crown"
armor = list("melee" = 15, "bullet" = 0, "laser" = 0,"energy" = 15, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 100, "acid" = 50)
+ resistance_flags = FIRE_PROOF
/obj/item/clothing/head/crown/fancy
name = "magnificent crown"
diff --git a/code/modules/clothing/head/misc_special.dm b/code/modules/clothing/head/misc_special.dm
index fb92d82adcf..d939dadffba 100644
--- a/code/modules/clothing/head/misc_special.dm
+++ b/code/modules/clothing/head/misc_special.dm
@@ -25,7 +25,7 @@
flags_inv = (HIDEMASK|HIDEEARS|HIDEEYES|HIDEFACE)
actions_types = list(/datum/action/item_action/toggle)
visor_flags_inv = HIDEMASK|HIDEEARS|HIDEEYES|HIDEFACE
- burn_state = FIRE_PROOF
+ resistance_flags = FIRE_PROOF
sprite_sheets = list(
"Vox" = 'icons/mob/species/vox/head.dmi',
diff --git a/code/modules/clothing/masks/breath.dm b/code/modules/clothing/masks/breath.dm
index 638aa3c2c84..c37fad48906 100644
--- a/code/modules/clothing/masks/breath.dm
+++ b/code/modules/clothing/masks/breath.dm
@@ -9,7 +9,7 @@
gas_transfer_coefficient = 0.10
permeability_coefficient = 0.50
actions_types = list(/datum/action/item_action/adjust)
- burn_state = FIRE_PROOF
+ resistance_flags = NONE
sprite_sheets = list(
"Vox" = 'icons/mob/species/vox/mask.dmi',
"Vox Armalis" = 'icons/mob/species/armalis/mask.dmi',
diff --git a/code/modules/clothing/masks/gasmask.dm b/code/modules/clothing/masks/gasmask.dm
index 74636fc5a7e..b6e3164a44d 100644
--- a/code/modules/clothing/masks/gasmask.dm
+++ b/code/modules/clothing/masks/gasmask.dm
@@ -9,7 +9,7 @@
item_state = "gas_alt"
gas_transfer_coefficient = 0.01
permeability_coefficient = 0.01
- burn_state = FIRE_PROOF
+ resistance_flags = NONE
sprite_sheets = list(
"Vox" = 'icons/mob/species/vox/mask.dmi',
"Unathi" = 'icons/mob/species/unathi/mask.dmi',
@@ -36,6 +36,7 @@
flags_inv = HIDEEARS|HIDEEYES|HIDEFACE
flags_cover = MASKCOVERSEYES
visor_flags_inv = HIDEEYES
+ resistance_flags = FIRE_PROOF
/obj/item/clothing/mask/gas/welding/attack_self(mob/user)
weldingvisortoggle(user)
@@ -46,7 +47,7 @@
icon_state = "gas_mining"
actions_types = list(/datum/action/item_action/adjust)
armor = list("melee" = 10, "bullet" = 5, "laser" = 5, "energy" = 5, "bomb" = 0, "bio" = 50, "rad" = 0, "fire" = 20, "acid" = 40)
- burn_state = FIRE_PROOF
+ resistance_flags = FIRE_PROOF
sprite_sheets = list(
"Vox" = 'icons/mob/species/vox/mask.dmi',
@@ -107,7 +108,7 @@
icon_state = "clown"
item_state = "clown_hat"
flags = BLOCK_GAS_SMOKE_EFFECT | AIRTIGHT | BLOCKHAIR
- burn_state = FLAMMABLE
+ resistance_flags = FLAMMABLE
dog_fashion = /datum/dog_fashion/head/clown
/obj/item/clothing/mask/gas/clown_hat/attack_self(mob/user)
@@ -149,7 +150,7 @@
desc = "The traditional mime's mask. It has an eerie facial posture."
icon_state = "mime"
item_state = "mime"
- burn_state = FLAMMABLE
+ resistance_flags = FLAMMABLE
/obj/item/clothing/mask/gas/mime/nodrop
flags = NODROP
@@ -159,26 +160,26 @@
desc = "A mask used when acting as a monkey."
icon_state = "monkeymask"
item_state = "monkeymask"
- burn_state = FLAMMABLE
+ resistance_flags = FLAMMABLE
/obj/item/clothing/mask/gas/sexymime
name = "sexy mime mask"
desc = "A traditional female mime's mask."
icon_state = "sexymime"
item_state = "sexymime"
- burn_state = FLAMMABLE
+ resistance_flags = FLAMMABLE
/obj/item/clothing/mask/gas/cyborg
name = "cyborg visor"
desc = "Beep boop"
icon_state = "death"
- burn_state = FLAMMABLE
+ resistance_flags = FLAMMABLE
/obj/item/clothing/mask/gas/owl_mask
name = "owl mask"
desc = "Twoooo!"
icon_state = "owl"
- burn_state = FLAMMABLE
+ resistance_flags = FLAMMABLE
actions_types = list(/datum/action/item_action/hoot)
/obj/item/clothing/mask/gas/owl_mask/super_hero
diff --git a/code/modules/clothing/shoes/magboots.dm b/code/modules/clothing/shoes/magboots.dm
index 7a5bd2255da..97045483e99 100644
--- a/code/modules/clothing/shoes/magboots.dm
+++ b/code/modules/clothing/shoes/magboots.dm
@@ -11,7 +11,7 @@
actions_types = list(/datum/action/item_action/toggle)
strip_delay = 70
put_on_delay = 70
- burn_state = FIRE_PROOF
+ resistance_flags = FIRE_PROOF
/obj/item/clothing/shoes/magboots/attack_self(mob/user)
if(magpulse)
@@ -44,6 +44,7 @@
magboot_state = "advmag"
slowdown_active = SHOES_SLOWDOWN
origin_tech = null
+ resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | ACID_PROOF
/obj/item/clothing/shoes/magboots/syndie
desc = "Reverse-engineered magnetic boots that have a heavy magnetic pull. Property of Gorlex Marauders."
diff --git a/code/modules/clothing/shoes/miscellaneous.dm b/code/modules/clothing/shoes/miscellaneous.dm
index 73ab55c1032..d3943936ae5 100644
--- a/code/modules/clothing/shoes/miscellaneous.dm
+++ b/code/modules/clothing/shoes/miscellaneous.dm
@@ -11,7 +11,7 @@
item_state = "jackboots"
armor = list("melee" = 25, "bullet" = 25, "laser" = 25, "energy" = 25, "bomb" = 50, "bio" = 10, "rad" = 0, "fire" = 70, "acid" = 50)
strip_delay = 70
- burn_state = FIRE_PROOF
+ resistance_flags = NONE
/obj/item/clothing/shoes/combat/swat //overpowered boots for death squads
name = "\improper SWAT shoes"
@@ -32,6 +32,12 @@
desc = "A pair of magic, black shoes."
name = "magic shoes"
icon_state = "black"
+ resistance_flags = FIRE_PROOF | ACID_PROOF
+
+/obj/item/clothing/shoes/sandal/magic
+ name = "magical sandals"
+ desc = "A pair of sandals imbued with magic."
+ resistance_flags = FIRE_PROOF | ACID_PROOF
/obj/item/clothing/shoes/galoshes
desc = "A pair of yellow rubber boots, designed to prevent slipping on wet surfaces."
@@ -42,7 +48,7 @@
slowdown = SHOES_SLOWDOWN+1
strip_delay = 50
put_on_delay = 50
- burn_state = FIRE_PROOF
+ resistance_flags = NONE
armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 40, "acid" = 75)
/obj/item/clothing/shoes/galoshes/dry
@@ -106,7 +112,7 @@
item_color = "hosred"
strip_delay = 50
put_on_delay = 50
- burn_state = FIRE_PROOF
+ resistance_flags = NONE
var/footstep = 1
shoe_sound = "jackboot"
@@ -127,7 +133,7 @@
name = "mining boots"
desc = "Steel-toed mining boots for mining in hazardous environments. Very good at keeping toes uncrushed."
icon_state = "explorer"
- burn_state = FIRE_PROOF
+ resistance_flags = FIRE_PROOF
/obj/item/clothing/shoes/winterboots
name = "winter boots"
@@ -312,7 +318,7 @@
icon_state = "jetboots"
item_state = "jetboots"
item_color = "hosred"
- burn_state = FIRE_PROOF
+ resistance_flags = FIRE_PROOF
actions_types = list(/datum/action/item_action/bhop)
permeability_coefficient = 0.05
can_cut_open = FALSE
diff --git a/code/modules/clothing/spacesuits/chronosuit.dm b/code/modules/clothing/spacesuits/chronosuit.dm
index 7db1b518c94..80f2aa89049 100644
--- a/code/modules/clothing/spacesuits/chronosuit.dm
+++ b/code/modules/clothing/spacesuits/chronosuit.dm
@@ -5,6 +5,7 @@
item_state = "chronohelmet"
slowdown = 1
armor = list("melee" = 60, "bullet" = 60, "laser" = 60, "energy" = 60, "bomb" = 30, "bio" = 90, "rad" = 90, "fire" = 100, "acid" = 100)
+ resistance_flags = FIRE_PROOF | ACID_PROOF
var/obj/item/clothing/suit/space/chronos/suit = null
/obj/item/clothing/head/helmet/space/chronos/dropped()
@@ -24,6 +25,7 @@
item_state = "chronosuit"
actions_types = list(/datum/action/item_action/toggle)
armor = list("melee" = 60, "bullet" = 60, "laser" = 60, "energy" = 60, "bomb" = 30, "bio" = 90, "rad" = 90, "fire" = 100, "acid" = 1000)
+ resistance_flags = FIRE_PROOF | ACID_PROOF
var/obj/item/clothing/head/helmet/space/chronos/helmet = null
var/obj/effect/chronos_cam/camera = null
var/activating = 0
diff --git a/code/modules/clothing/spacesuits/ert.dm b/code/modules/clothing/spacesuits/ert.dm
index b0d9bc0b11b..861d8e8a433 100644
--- a/code/modules/clothing/spacesuits/ert.dm
+++ b/code/modules/clothing/spacesuits/ert.dm
@@ -6,6 +6,7 @@
item_state = "helm-command"
item_color = "ert_commander"
armor = list(melee = 45, bullet = 25, laser = 30, energy = 10, bomb = 25, bio = 100, rad = 50, fire = 80, acid = 80)
+ resistance_flags = FIRE_PROOF
var/obj/machinery/camera/camera
var/has_camera = TRUE
strip_delay = 130
@@ -43,7 +44,7 @@
/obj/item/gun/energy/gun/advtaser, /obj/item/melee/baton, /obj/item/gun/energy/gun, /obj/item/gun/projectile/automatic/lasercarbine, /obj/item/gun/energy/gun/blueshield, /obj/item/gun/energy/immolator/multi)
helmettype = /obj/item/clothing/head/helmet/space/hardsuit/ert
strip_delay = 130
-
+ resistance_flags = FIRE_PROOF
sprite_sheets = list(
"Drask" = 'icons/mob/species/drask/suit.dmi',
"Vox" = 'icons/mob/species/vox/suit.dmi'
@@ -189,6 +190,7 @@
item_color = "ert_paranormal"
max_heat_protection_temperature = FIRE_IMMUNITY_MAX_TEMP_PROTECT
actions_types = list()
+ resistance_flags = FIRE_PROOF
has_camera = FALSE
sprite_sheets = list(
"Grey" = 'icons/mob/species/grey/helmet.dmi',
@@ -203,6 +205,7 @@
icon_state = "hardsuit-paranormal"
max_heat_protection_temperature = FIRE_IMMUNITY_MAX_TEMP_PROTECT
helmettype = /obj/item/clothing/head/helmet/space/hardsuit/ert/paranormal
+ resistance_flags = FIRE_PROOF
sprite_sheets = list(
"Tajaran" = 'icons/mob/species/tajaran/suit.dmi',
"Unathi" = 'icons/mob/species/unathi/suit.dmi',
diff --git a/code/modules/clothing/spacesuits/hardsuit.dm b/code/modules/clothing/spacesuits/hardsuit.dm
index bd65947fdf1..f1cd49e65ec 100644
--- a/code/modules/clothing/spacesuits/hardsuit.dm
+++ b/code/modules/clothing/spacesuits/hardsuit.dm
@@ -177,6 +177,7 @@
icon_state = "hardsuit0-engineering"
item_state = "eng_helm"
armor = list("melee" = 30, "bullet" = 5, "laser" = 10, "energy" = 5, "bomb" = 10, "bio" = 100, "rad" = 75, "fire" = 100, "acid" = 75)
+ resistance_flags = FIRE_PROOF
item_color = "engineering"
/obj/item/clothing/suit/space/hardsuit/engine
@@ -187,6 +188,7 @@
armor = list("melee" = 30, "bullet" = 5, "laser" = 10, "energy" = 5, "bomb" = 10, "bio" = 100, "rad" = 75, "fire" = 100, "acid" = 75)
helmettype = /obj/item/clothing/head/helmet/space/hardsuit/engine
dog_fashion = /datum/dog_fashion/back/hardsuit
+ resistance_flags = FIRE_PROOF
//Atmospherics
/obj/item/clothing/head/helmet/space/hardsuit/engine/atmos
@@ -241,6 +243,7 @@
item_state = "mining_helm"
item_color = "mining"
max_heat_protection_temperature = FIRE_SUIT_MAX_TEMP_PROTECT
+ resistance_flags = FIRE_PROOF
heat_protection = HEAD
armor = list("melee" = 30, "bullet" = 5, "laser" = 10, "energy" = 5, "bomb" = 50, "bio" = 100, "rad" = 50, "fire" = 50, "acid" = 75)
brightness_on = 7
@@ -251,6 +254,7 @@
desc = "A special suit that protects against hazardous, low pressure environments. Has reinforced plating."
item_state = "mining_hardsuit"
max_heat_protection_temperature = FIRE_SUIT_MAX_TEMP_PROTECT
+ resistance_flags = FIRE_PROOF
armor = list("melee" = 30, "bullet" = 5, "laser" = 10, "energy" = 5, "bomb" = 50, "bio" = 100, "rad" = 50, "fire" = 50, "acid" = 75)
allowed = list(/obj/item/flashlight, /obj/item/tank, /obj/item/storage/bag/ore, /obj/item/pickaxe, /obj/item/resonator, /obj/item/mining_scanner, /obj/item/t_scanner/adv_mining_scanner, /obj/item/gun/energy/kinetic_accelerator)
helmettype = /obj/item/clothing/head/helmet/space/hardsuit/mining
@@ -359,7 +363,7 @@
armor = list("melee" = 60, "bullet" = 60, "laser" = 50, "energy" = 25, "bomb" = 55, "bio" = 100, "rad" = 70, "fire" = 100, "acid" = 100)
heat_protection = HEAD
max_heat_protection_temperature = FIRE_IMMUNITY_MAX_TEMP_PROTECT
- unacidable = TRUE
+ resistance_flags = FIRE_PROOF | ACID_PROOF
/obj/item/clothing/suit/space/hardsuit/syndi/elite
name = "elite syndicate hardsuit"
@@ -370,7 +374,7 @@
armor = list("melee" = 60, "bullet" = 60, "laser" = 50, "energy" = 25, "bomb" = 55, "bio" = 100, "rad" = 70, "fire" = 100, "acid" = 100)
heat_protection = UPPER_TORSO|LOWER_TORSO|LEGS|FEET|ARMS|HANDS
max_heat_protection_temperature = FIRE_IMMUNITY_MAX_TEMP_PROTECT
- unacidable = TRUE
+ resistance_flags = FIRE_PROOF | ACID_PROOF
//Strike team hardsuits
/obj/item/clothing/head/helmet/space/hardsuit/syndi/elite/sst
@@ -412,7 +416,7 @@
icon_state = "hardsuit0-wiz"
item_state = "wiz_helm"
item_color = "wiz"
- unacidable = TRUE //No longer shall our kind be foiled by lone chemists with spray bottles!
+ resistance_flags = FIRE_PROOF | ACID_PROOF //No longer shall our kind be foiled by lone chemists with spray bottles!
armor = list("melee" = 40, "bullet" = 40, "laser" = 40, "energy" = 20, "bomb" = 35, "bio" = 100, "rad" = 50, "fire" = 100, "acid" = 100)
heat_protection = HEAD //Uncomment to enable firesuit protection
max_heat_protection_temperature = FIRE_IMMUNITY_MAX_TEMP_PROTECT
@@ -424,7 +428,7 @@
desc = "A bizarre gem-encrusted suit that radiates magical energies."
item_state = "wiz_hardsuit"
w_class = WEIGHT_CLASS_NORMAL
- unacidable = TRUE
+ resistance_flags = FIRE_PROOF | ACID_PROOF
armor = list("melee" = 40, "bullet" = 40, "laser" = 40, "energy" = 20, "bomb" = 35, "bio" = 100, "rad" = 50, "fire" = 100, "acid" = 100)
allowed = list(/obj/item/teleportation_scroll,/obj/item/tank)
heat_protection = UPPER_TORSO|LOWER_TORSO|LEGS|FEET|ARMS|HANDS //Uncomment to enable firesuit protection
@@ -515,9 +519,10 @@
name = "shielded hardsuit"
desc = "A hardsuit with built in energy shielding. Will rapidly recharge when not under fire."
icon_state = "hardsuit-hos"
- helmettype = /obj/item/clothing/head/helmet/space/hardsuit/security/hos
+ helmettype = /obj/item/clothing/head/helmet/space/hardsuit/shielded
allowed = list(/obj/item/flashlight,/obj/item/tank, /obj/item/gun,/obj/item/reagent_containers/spray/pepper,/obj/item/ammo_box,/obj/item/ammo_casing,/obj/item/melee/baton,/obj/item/restraints/handcuffs)
armor = list("melee" = 30, "bullet" = 15, "laser" = 30, "energy" = 10, "bomb" = 10, "bio" = 100, "rad" = 50, "fire" = 100, "acid" = 100)
+ resistance_flags = FIRE_PROOF | ACID_PROOF
var/current_charges = 3
var/max_charges = 3 //How many charges total the shielding has
var/recharge_delay = 200 //How long after we've been shot before we can start recharging. 20 seconds here
@@ -558,6 +563,9 @@
var/mob/living/carbon/human/C = loc
C.update_inv_wear_suit()
+/obj/item/clothing/head/helmet/space/hardsuit/shielded
+ resistance_flags = FIRE_PROOF | ACID_PROOF
+
//////Syndicate Version
/obj/item/clothing/suit/space/hardsuit/shielded/syndi
diff --git a/code/modules/clothing/spacesuits/miscellaneous.dm b/code/modules/clothing/spacesuits/miscellaneous.dm
index 00c64d49b0b..a786364e4e2 100644
--- a/code/modules/clothing/spacesuits/miscellaneous.dm
+++ b/code/modules/clothing/spacesuits/miscellaneous.dm
@@ -45,7 +45,7 @@
item_state = "deathsquad"
armor = list("melee" = 80, "bullet" = 80, "laser" = 50, "energy" = 50, "bomb" = 100, "bio" = 100, "rad" = 100, "fire" = 100, "acid" = 100)
max_heat_protection_temperature = FIRE_IMMUNITY_MAX_TEMP_PROTECT
- unacidable = 1
+ resistance_flags = FIRE_PROOF | ACID_PROOF
vision_flags = SEE_MOBS
lighting_alpha = LIGHTING_PLANE_ALPHA_MOSTLY_INVISIBLE //don't render darkness while wearing these
see_in_dark = 8
@@ -60,7 +60,7 @@
allowed = list(/obj/item/gun,/obj/item/ammo_box,/obj/item/ammo_casing,/obj/item/melee/baton,/obj/item/restraints/handcuffs,/obj/item/tank,/obj/item/kitchen/knife/combat)
armor = list("melee" = 80, "bullet" = 80, "laser" = 50, "energy" = 50, "bomb" = 100, "bio" = 100, "rad" = 100, "fire" = 100, "acid" = 100)
max_heat_protection_temperature = FIRE_IMMUNITY_MAX_TEMP_PROTECT
- unacidable = 1
+ resistance_flags = FIRE_PROOF | ACID_PROOF
strip_delay = 130
dog_fashion = /datum/dog_fashion/back/deathsquad
@@ -73,6 +73,7 @@
allowed = list(/obj/item/gun,/obj/item/ammo_box,/obj/item/ammo_casing,/obj/item/melee/baton,/obj/item/restraints/handcuffs,/obj/item/tank,/obj/item/kitchen/knife/combat)
armor = list("melee" = 40, "bullet" = 30, "laser" = 30,"energy" = 30, "bomb" = 50, "bio" = 90, "rad" = 20, "fire" = 100, "acid" = 100)
strip_delay = 120
+ resistance_flags = FIRE_PROOF | ACID_PROOF
species_restricted = list("exclude", "Wryn")
sprite_sheets = list(
@@ -95,6 +96,7 @@
flags_inv = 0
slowdown = 0
armor = list("melee" = 80, "bullet" = 80, "laser" = 50, "energy" = 50, "bomb" = 100, "bio" = 100, "rad" = 100, "fire" = 100, "acid" = 100)
+ resistance_flags = FIRE_PROOF | ACID_PROOF
w_class = WEIGHT_CLASS_NORMAL
//Space santa outfit suit
diff --git a/code/modules/clothing/spacesuits/plasmamen.dm b/code/modules/clothing/spacesuits/plasmamen.dm
index 165ad80fa73..73b95c0d3f7 100644
--- a/code/modules/clothing/spacesuits/plasmamen.dm
+++ b/code/modules/clothing/spacesuits/plasmamen.dm
@@ -8,7 +8,7 @@
flash_protect = 2
tint = 2
armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 100, "rad" = 0, "fire" = 100, "acid" = 75)
- burn_state = FIRE_PROOF
+ resistance_flags = FIRE_PROOF
var/brightness_on = 4 //luminosity when the light is on
var/on = FALSE
var/smile = FALSE
diff --git a/code/modules/clothing/spacesuits/rig/rig.dm b/code/modules/clothing/spacesuits/rig/rig.dm
index b463a513764..36283c66bd7 100644
--- a/code/modules/clothing/spacesuits/rig/rig.dm
+++ b/code/modules/clothing/spacesuits/rig/rig.dm
@@ -22,7 +22,6 @@
max_heat_protection_temperature = SPACE_SUIT_MAX_TEMP_PROTECT
siemens_coefficient = 0.2
permeability_coefficient = 0.1
- unacidable = 1
var/interface_path = "hardsuit.tmpl"
var/ai_interface_path = "hardsuit.tmpl"
@@ -156,7 +155,6 @@
if(piece.siemens_coefficient > siemens_coefficient) //So that insulated gloves keep their insulation.
piece.siemens_coefficient = siemens_coefficient
piece.permeability_coefficient = permeability_coefficient
- piece.unacidable = unacidable
if(islist(armor))
var/list/L = armor
piece.armor = L.Copy()
diff --git a/code/modules/clothing/suits/armor.dm b/code/modules/clothing/suits/armor.dm
index b6e7b8aab0c..9ab6ae07811 100644
--- a/code/modules/clothing/suits/armor.dm
+++ b/code/modules/clothing/suits/armor.dm
@@ -7,7 +7,8 @@
max_heat_protection_temperature = ARMOR_MAX_TEMP_PROTECT
strip_delay = 60
put_on_delay = 40
- burn_state = FIRE_PROOF
+ max_integrity = 250
+ resistance_flags = NONE
armor = list("melee" = 30, "bullet" = 30, "laser" = 30, "energy" = 10, "bomb" = 25, "bio" = 0, "rad" = 0, "fire" = 50, "acid" = 50)
sprite_sheets = list(
"Vox" = 'icons/mob/species/vox/suit.dmi'
@@ -147,7 +148,7 @@
cold_protection = UPPER_TORSO|LOWER_TORSO|HANDS
heat_protection = UPPER_TORSO|LOWER_TORSO|HANDS
strip_delay = 70
- burn_state = FLAMMABLE
+ resistance_flags = FLAMMABLE
dog_fashion = null
/obj/item/clothing/suit/armor/vest/warden/alt
@@ -163,6 +164,7 @@
body_parts_covered = UPPER_TORSO|LOWER_TORSO
armor = list("melee" = 50, "bullet" = 40, "laser" = 50, "energy" = 10, "bomb" = 25, "bio" = 0, "rad" = 0, "fire" = 100, "acid" = 90)
dog_fashion = null
+ resistance_flags = FIRE_PROOF
/obj/item/clothing/suit/armor/vest/capcarapace/alt
name = "captain's parade jacket"
@@ -217,7 +219,7 @@
icon_state = "durathread"
item_state = "durathread"
strip_delay = 60
- burn_state = FLAMMABLE
+ resistance_flags = FLAMMABLE
armor = list("melee" = 20, "bullet" = 10, "laser" = 30, "energy" = 5, "bomb" = 15, "bio" = 0, "rad" = 0, "fire" = 40, "acid" = 50)
/obj/item/clothing/suit/armor/bulletproof
@@ -237,6 +239,7 @@
item_state = "armor_reflec"
blood_overlay_type = "armor"
armor = list("melee" = 10, "bullet" = 10, "laser" = 60, "energy" = 50, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 100, "acid" = 100)
+ resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | ACID_PROOF
var/hit_reflect_chance = 40
/obj/item/clothing/suit/armor/laserproof/IsReflect(var/def_zone)
@@ -253,7 +256,7 @@
blood_overlay_type = "armor"
flags_size = ONESIZEFITSALL
allowed = list(/obj/item/tank/emergency_oxygen,/obj/item/reagent_containers/spray/pepper,/obj/item/flashlight,/obj/item/gun,/obj/item/ammo_box,/obj/item/ammo_casing,/obj/item/melee/baton,/obj/item/restraints/handcuffs,/obj/item/storage/fancy/cigarettes,/obj/item/lighter,/obj/item/detective_scanner,/obj/item/taperecorder)
- burn_state = FLAMMABLE
+ resistance_flags = FLAMMABLE
dog_fashion = null
//Reactive armor
@@ -266,7 +269,7 @@
blood_overlay_type = "armor"
armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 100, "acid" = 100)
actions_types = list(/datum/action/item_action/toggle)
- unacidable = 1
+ resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | ACID_PROOF
hit_reaction_chance = 50
/obj/item/clothing/suit/armor/reactive/attack_self(mob/user)
@@ -484,7 +487,6 @@
min_cold_protection_temperature = ARMOR_MIN_TEMP_PROTECT
heat_protection = UPPER_TORSO|LOWER_TORSO
max_heat_protection_temperature = ARMOR_MAX_TEMP_PROTECT
- burn_state = FIRE_PROOF
armor = list(melee = 25, bullet = 15, laser = 25, energy = 10, bomb = 25, bio = 0, rad = 0, fire = 40, acid = 40)
//LAVALAND!
@@ -500,7 +502,7 @@
heat_protection = UPPER_TORSO|LOWER_TORSO|LEGS|FEET|ARMS|HANDS
body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|FEET|ARMS|HANDS
max_heat_protection_temperature = FIRE_IMMUNITY_MAX_TEMP_PROTECT
- burn_state = FIRE_PROOF
+ resistance_flags = FIRE_PROOF | ACID_PROOF
/obj/item/clothing/head/hooded/drake
name = "drake helmet"
@@ -510,7 +512,7 @@
armor = list("melee" = 70, "bullet" = 30, "laser" = 50, "energy" = 40, "bomb" = 70, "bio" = 60, "rad" = 50, "fire" = 100, "acid" = 100)
heat_protection = HEAD
max_heat_protection_temperature = FIRE_IMMUNITY_MAX_TEMP_PROTECT
- burn_state = FIRE_PROOF
+ resistance_flags = FIRE_PROOF | ACID_PROOF
flags = BLOCKHAIR
flags_cover = HEADCOVERSEYES
diff --git a/code/modules/clothing/suits/bio.dm b/code/modules/clothing/suits/bio.dm
index 33ac31f3550..6a2d582d355 100644
--- a/code/modules/clothing/suits/bio.dm
+++ b/code/modules/clothing/suits/bio.dm
@@ -8,7 +8,7 @@
flags_cover = HEADCOVERSEYES | HEADCOVERSMOUTH
armor = list("melee" = 0, "bullet" = 0, "laser" = 0,"energy" = 0, "bomb" = 0, "bio" = 100, "rad" = 80, "fire" = 30, "acid" = 100)
flags_inv = HIDEMASK|HIDEEARS|HIDEEYES
- burn_state = FIRE_PROOF
+ resistance_flags = ACID_PROOF
sprite_sheets = list(
"Vox" = 'icons/mob/species/vox/helmet.dmi',
@@ -35,7 +35,7 @@
flags_inv = HIDEGLOVES|HIDESHOES|HIDEJUMPSUIT|HIDETAIL
strip_delay = 70
put_on_delay = 70
- burn_state = FIRE_PROOF
+ resistance_flags = ACID_PROOF
sprite_sheets = list(
"Tajaran" = 'icons/mob/species/tajaran/suit.dmi',
"Unathi" = 'icons/mob/species/unathi/suit.dmi',
diff --git a/code/modules/clothing/suits/jobs.dm b/code/modules/clothing/suits/jobs.dm
index 1f6fe5995d6..dde11f1fcee 100644
--- a/code/modules/clothing/suits/jobs.dm
+++ b/code/modules/clothing/suits/jobs.dm
@@ -235,7 +235,7 @@
item_state = "hazard"
blood_overlay_type = "armor"
allowed = list (/obj/item/flashlight, /obj/item/t_scanner, /obj/item/tank/emergency_oxygen)
- burn_state = FIRE_PROOF
+ resistance_flags = NONE
sprite_sheets = list(
"Vox" = 'icons/mob/species/vox/suit.dmi'
@@ -292,7 +292,7 @@
max_heat_protection_temperature = ARMOR_MAX_TEMP_PROTECT
strip_delay = 60
put_on_delay = 40
- burn_state = FIRE_PROOF
+ resistance_flags = NONE
//Head of Personnel
/obj/item/clothing/suit/mantle/armor/head_of_personnel
diff --git a/code/modules/clothing/suits/miscellaneous.dm b/code/modules/clothing/suits/miscellaneous.dm
index e2ddb3c8e6b..1a2cdbd31a2 100644
--- a/code/modules/clothing/suits/miscellaneous.dm
+++ b/code/modules/clothing/suits/miscellaneous.dm
@@ -17,7 +17,7 @@
blood_overlay_type = "armor"
body_parts_covered = UPPER_TORSO|LOWER_TORSO
allowed = list (/obj/item/gun/energy/laser/tag/blue)
- burn_state = FIRE_PROOF
+ resistance_flags = NONE
sprite_sheets = list(
"Vox" = 'icons/mob/species/vox/suit.dmi'
@@ -31,7 +31,7 @@
blood_overlay_type = "armor"
body_parts_covered = UPPER_TORSO|LOWER_TORSO
allowed = list (/obj/item/gun/energy/laser/tag/red)
- burn_state = FIRE_PROOF
+ resistance_flags = NONE
sprite_sheets = list(
"Vox" = 'icons/mob/species/vox/suit.dmi'
@@ -138,7 +138,7 @@
w_class = WEIGHT_CLASS_NORMAL
allowed = list(/obj/item/flashlight,/obj/item/tank/emergency_oxygen,/obj/item/toy)
flags_inv = HIDEGLOVES|HIDESHOES|HIDEJUMPSUIT
- burn_state = FIRE_PROOF
+ resistance_flags = NONE
/obj/item/clothing/suit/hastur
@@ -581,7 +581,7 @@
desc = "A long, thick black leather coat."
icon_state = "leathercoat"
item_state = "leathercoat"
- burn_state = FIRE_PROOF
+ resistance_flags = FIRE_PROOF
/obj/item/clothing/suit/browncoat
name = "brown leather coat"
@@ -791,7 +791,7 @@
ignore_suitadjust = 1
actions_types = list()
adjust_flavour = null
- burn_state = FIRE_PROOF
+ resistance_flags = NONE
/obj/item/clothing/suit/jacket/leather/overcoat
name = "leather overcoat"
diff --git a/code/modules/clothing/suits/utility.dm b/code/modules/clothing/suits/utility.dm
index 515b3d27ac5..87df2c38b33 100644
--- a/code/modules/clothing/suits/utility.dm
+++ b/code/modules/clothing/suits/utility.dm
@@ -29,7 +29,7 @@
min_cold_protection_temperature = FIRE_SUIT_MIN_TEMP_PROTECT
strip_delay = 60
put_on_delay = 60
- burn_state = FIRE_PROOF
+ resistance_flags = FIRE_PROOF
/obj/item/clothing/suit/fire/firefighter
icon_state = "firesuit"
@@ -75,7 +75,7 @@
max_heat_protection_temperature = HELMET_MAX_TEMP_PROTECT
strip_delay = 70
put_on_delay = 70
- burn_state = FIRE_PROOF
+ resistance_flags = NONE
sprite_sheets = list(
"Vox" = 'icons/mob/species/vox/helmet.dmi',
@@ -101,7 +101,7 @@
min_cold_protection_temperature = ARMOR_MIN_TEMP_PROTECT
strip_delay = 70
put_on_delay = 70
- burn_state = FIRE_PROOF
+ resistance_flags = NONE
sprite_sheets = list(
"Vox" = 'icons/mob/species/vox/suit.dmi'
@@ -129,7 +129,7 @@
armor = list("melee" = 0, "bullet" = 0, "laser" = 0,"energy" = 0, "bomb" = 0, "bio" = 60, "rad" = 100, "fire" = 30, "acid" = 30)
strip_delay = 60
put_on_delay = 60
- burn_state = FIRE_PROOF
+ resistance_flags = NONE
sprite_sheets = list(
"Vox" = 'icons/mob/species/vox/head.dmi',
@@ -152,7 +152,7 @@
flags_inv = HIDEJUMPSUIT|HIDETAIL
strip_delay = 60
put_on_delay = 60
- burn_state = FIRE_PROOF
+ resistance_flags = NONE
sprite_sheets = list(
"Vox" = 'icons/mob/species/vox/suit.dmi'
diff --git a/code/modules/clothing/suits/wiz_robe.dm b/code/modules/clothing/suits/wiz_robe.dm
index 393ba16687d..f1c709869b9 100644
--- a/code/modules/clothing/suits/wiz_robe.dm
+++ b/code/modules/clothing/suits/wiz_robe.dm
@@ -5,8 +5,7 @@
gas_transfer_coefficient = 0.01 // IT'S MAGICAL OKAY JEEZ +1 TO NOT DIE
permeability_coefficient = 0.01
armor = list("melee" = 30, "bullet" = 20, "laser" = 20, "energy" = 20, "bomb" = 20, "bio" = 20, "rad" = 20, "fire" = 100, "acid" = 100)
- unacidable = 1
- burn_state = FIRE_PROOF
+ resistance_flags = FIRE_PROOF | ACID_PROOF
//Not given any special protective value since the magic robes are full-body protection --NEO
strip_delay = 50
put_on_delay = 50
@@ -41,6 +40,7 @@
permeability_coefficient = 1
armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 0, "acid" = 0)
magical = FALSE
+ resistance_flags = FLAMMABLE
dog_fashion = /datum/dog_fashion/head/blue_wizard
/obj/item/clothing/head/wizard/marisa
@@ -73,10 +73,9 @@
armor = list("melee" = 30, "bullet" = 20, "laser" = 20, "energy" = 20, "bomb" = 20, "bio" = 20, "rad" = 20, "fire" = 100, "acid" = 100)
allowed = list(/obj/item/teleportation_scroll)
flags_inv = HIDEJUMPSUIT
- unacidable = 1
strip_delay = 50
put_on_delay = 50
- burn_state = FIRE_PROOF
+ resistance_flags = FIRE_PROOF | ACID_PROOF
magical = TRUE
/obj/item/clothing/suit/wizrobe/red
@@ -129,8 +128,7 @@
gas_transfer_coefficient = 1
permeability_coefficient = 1
armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 0, "acid" = 0)
- unacidable = 0
- burn_state = FLAMMABLE
+ resistance_flags = FLAMMABLE
magical = FALSE
/obj/item/clothing/head/wizard/marisa/fake
@@ -140,8 +138,7 @@
gas_transfer_coefficient = 1
permeability_coefficient = 1
armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 0, "acid" = 0)
- unacidable = 0
- burn_state = FLAMMABLE
+ resistance_flags = FLAMMABLE
magical = FALSE
/obj/item/clothing/suit/wizrobe/marisa/fake
@@ -152,6 +149,5 @@
gas_transfer_coefficient = 1
permeability_coefficient = 1
armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 0, "acid" = 0)
- unacidable = 0
- burn_state = FLAMMABLE
+ resistance_flags = FLAMMABLE
magical = FALSE
\ No newline at end of file
diff --git a/code/modules/clothing/under/accessories/accessory.dm b/code/modules/clothing/under/accessories/accessory.dm
index 4903d79c6ee..df25a97dffb 100644
--- a/code/modules/clothing/under/accessories/accessory.dm
+++ b/code/modules/clothing/under/accessories/accessory.dm
@@ -180,7 +180,7 @@
icon_state = "bronze"
item_color = "bronze"
materials = list(MAT_METAL=1000)
- burn_state = FIRE_PROOF
+ resistance_flags = FIRE_PROOF
// GOLD (awarded by centcom)
/obj/item/clothing/accessory/medal/gold
@@ -193,6 +193,7 @@
/obj/item/clothing/accessory/medal/gold/captain
name = "medal of captaincy"
desc = "A golden medal awarded exclusively to those promoted to the rank of captain. It signifies the codified responsibilities of a captain to Nanotrasen, and their undisputable authority over their crew."
+ resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | ACID_PROOF
/obj/item/clothing/accessory/medal/gold/heroism
name = "medal of exceptional heroism"
diff --git a/code/modules/clothing/under/color.dm b/code/modules/clothing/under/color.dm
index 17db1997174..3fe4138785a 100644
--- a/code/modules/clothing/under/color.dm
+++ b/code/modules/clothing/under/color.dm
@@ -17,7 +17,7 @@
item_state = "bl_suit"
item_color = "black"
flags_size = ONESIZEFITSALL
- burn_state = FIRE_PROOF
+ resistance_flags = NONE
/obj/item/clothing/under/color/blackf
name = "feminine black jumpsuit"
diff --git a/code/modules/clothing/under/jobs/engineering.dm b/code/modules/clothing/under/jobs/engineering.dm
index 65fdafb0da7..14878e402a1 100644
--- a/code/modules/clothing/under/jobs/engineering.dm
+++ b/code/modules/clothing/under/jobs/engineering.dm
@@ -7,7 +7,7 @@
item_color = "chief"
armor = list("melee" = 0, "bullet" = 0, "laser" = 0,"energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 10, "fire" = 80, "acid" = 40)
flags_size = ONESIZEFITSALL
- burn_state = FIRE_PROOF
+ resistance_flags = NONE
/obj/item/clothing/under/rank/chief_engineer/skirt
desc = "It's a high visibility jumpskirt given to those engineers insane enough to achieve the rank of \"Chief engineer\". It has minor radiation shielding."
@@ -24,7 +24,7 @@
item_state = "atmos_suit"
item_color = "atmos"
flags_size = ONESIZEFITSALL
- burn_state = FIRE_PROOF
+ resistance_flags = NONE
/obj/item/clothing/under/rank/atmospheric_technician/skirt
desc = "It's a jumpskirt worn by atmospheric technicians."
@@ -42,7 +42,7 @@
item_color = "engine"
armor = list("melee" = 0, "bullet" = 0, "laser" = 0,"energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 10, "fire" = 60, "acid" = 20)
flags_size = ONESIZEFITSALL
- burn_state = FIRE_PROOF
+ resistance_flags = NONE
/obj/item/clothing/under/rank/engineer/skirt
@@ -60,6 +60,7 @@
item_state = "robotics"
item_color = "robotics"
flags_size = ONESIZEFITSALL
+ resistance_flags = NONE
/obj/item/clothing/under/rank/roboticist/skirt
desc = "It's a slimming black jumpskirt with reinforced seams; great for industrial work."
diff --git a/code/modules/clothing/under/miscellaneous.dm b/code/modules/clothing/under/miscellaneous.dm
index 0fe12f76202..b2ccb715a7f 100644
--- a/code/modules/clothing/under/miscellaneous.dm
+++ b/code/modules/clothing/under/miscellaneous.dm
@@ -188,7 +188,7 @@
min_cold_protection_temperature = SPACE_SUIT_MIN_TEMP_PROTECT
heat_protection = UPPER_TORSO | LOWER_TORSO|LEGS|FEET|ARMS|HANDS
max_heat_protection_temperature = SPACE_SUIT_MAX_TEMP_PROTECT
- burn_state = FIRE_PROOF
+ resistance_flags = NONE
/obj/item/clothing/under/acj
name = "administrative cybernetic jumpsuit"
@@ -206,7 +206,7 @@
max_heat_protection_temperature = FIRE_IMMUNITY_MAX_TEMP_PROTECT
slowdown = -10
siemens_coefficient = 0
- burn_state = LAVA_PROOF
+ resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | ACID_PROOF | FREEZE_PROOF
/obj/item/clothing/under/johnny
name = "johnny~~ jumpsuit"
@@ -378,7 +378,7 @@
item_state = "gladiator"
item_color = "gladiator"
body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS
- burn_state = FIRE_PROOF
+ resistance_flags = NONE
/obj/item/clothing/under/gladiator/ash_walker
desc = "This gladiator uniform appears to be covered in ash and fairly dated."
@@ -523,7 +523,7 @@
item_color = "roman"
item_state = "armor"
strip_delay = 100
- burn_state = FIRE_PROOF
+ resistance_flags = NONE
/obj/item/clothing/under/maid
name = "maid costume"
@@ -721,7 +721,7 @@
icon_state = "atmos"
item_state = "atmos_suit"
item_color = "atmos"
- burn_state = FIRE_PROOF
+ resistance_flags = FIRE_PROOF
/obj/item/clothing/under/contortionist/equipped(mob/living/carbon/human/user, slot)
if(!user.ventcrawler)
diff --git a/code/modules/events/tear.dm b/code/modules/events/tear.dm
index dcc63ba4770..14cea285449 100644
--- a/code/modules/events/tear.dm
+++ b/code/modules/events/tear.dm
@@ -24,7 +24,6 @@
desc="A tear in the dimensional fabric of space and time."
icon='icons/effects/tear.dmi'
icon_state="tear"
- unacidable = 1
density = 0
anchored = 1
luminosity = 3
diff --git a/code/modules/food_and_drinks/drinks/drinks.dm b/code/modules/food_and_drinks/drinks/drinks.dm
index d85b882e7db..83079a240f0 100644
--- a/code/modules/food_and_drinks/drinks/drinks.dm
+++ b/code/modules/food_and_drinks/drinks/drinks.dm
@@ -10,7 +10,7 @@
consume_sound = 'sound/items/drink.ogg'
possible_transfer_amounts = list(5,10,15,20,25,30,50)
volume = 50
- burn_state = FIRE_PROOF
+ resistance_flags = NONE
antable = FALSE
/obj/item/reagent_containers/food/drinks/New()
@@ -139,6 +139,7 @@
volume = 5
flags = CONDUCT
container_type = OPENCONTAINER
+ resistance_flags = FIRE_PROOF
/obj/item/reagent_containers/food/drinks/trophy/gold_cup
name = "gold cup"
@@ -185,6 +186,7 @@
desc = "Careful, the beverage you're about to enjoy is extremely hot."
icon_state = "coffee"
list_reagents = list("coffee" = 30)
+ resistance_flags = FREEZE_PROOF
/obj/item/reagent_containers/food/drinks/ice
name = "ice cup"
@@ -217,6 +219,7 @@
icon_state = "hot_coco"
item_state = "coffee"
list_reagents = list("hot_coco" = 30, "sugar" = 5)
+ resistance_flags = FREEZE_PROOF
/obj/item/reagent_containers/food/drinks/chocolate
name = "hot chocolate"
@@ -224,6 +227,7 @@
icon_state = "hot_coco"
item_state = "coffee"
list_reagents = list("chocolate" = 30)
+ resistance_flags = FREEZE_PROOF
/obj/item/reagent_containers/food/drinks/weightloss
name = "weight-loss shake"
diff --git a/code/modules/food_and_drinks/drinks/drinks/drinkingglass.dm b/code/modules/food_and_drinks/drinks/drinks/drinkingglass.dm
index bdc473d774e..348fea9b23e 100644
--- a/code/modules/food_and_drinks/drinks/drinks/drinkingglass.dm
+++ b/code/modules/food_and_drinks/drinks/drinks/drinkingglass.dm
@@ -10,8 +10,7 @@
lefthand_file = 'icons/goonstation/mob/inhands/items_lefthand.dmi'
righthand_file = 'icons/goonstation/mob/inhands/items_righthand.dmi'
materials = list(MAT_GLASS=500)
- burn_state = FLAMMABLE
- burntime = 5
+ resistance_flags = ACID_PROOF
/obj/item/reagent_containers/food/drinks/drinkingglass/attackby(obj/item/I, mob/user, params)
if(istype(I, /obj/item/reagent_containers/food/snacks/egg)) //breaking eggs
diff --git a/code/modules/food_and_drinks/food.dm b/code/modules/food_and_drinks/food.dm
index 6293e72e689..08635f57cd0 100644
--- a/code/modules/food_and_drinks/food.dm
+++ b/code/modules/food_and_drinks/food.dm
@@ -16,7 +16,7 @@
var/antable = TRUE // Will ants come near it?
var/ant_location = null
var/ant_timer = null
- burn_state = FLAMMABLE
+ resistance_flags = FLAMMABLE
container_type = INJECTABLE
/obj/item/reagent_containers/food/Initialize(mapload)
diff --git a/code/modules/food_and_drinks/food/foods/meat.dm b/code/modules/food_and_drinks/food/foods/meat.dm
index 0aa45994e58..38fdaf59a68 100644
--- a/code/modules/food_and_drinks/food/foods/meat.dm
+++ b/code/modules/food_and_drinks/food/foods/meat.dm
@@ -239,7 +239,7 @@
/obj/item/reagent_containers/food/snacks/goliath_steak
name = "goliath steak"
desc = "A delicious, lava cooked steak."
- burn_state = LAVA_PROOF
+ resistance_flags = LAVA_PROOF | FIRE_PROOF
icon_state = "goliathsteak"
trash = null
list_reagents = list("protein" = 6, "vitamin" = 2)
diff --git a/code/modules/hydroponics/grown.dm b/code/modules/hydroponics/grown.dm
index 63d21bced03..f2858c298f5 100644
--- a/code/modules/hydroponics/grown.dm
+++ b/code/modules/hydroponics/grown.dm
@@ -15,7 +15,7 @@
var/wine_flavor //If NULL, this is automatically set to the fruit's flavor. Determines the flavor of the wine if distill_reagent is NULL.
var/wine_power = 0.1 //Determines the boozepwr of the wine if distill_reagent is NULL. Uses 0.1 - 1.2 not tg's boozepower (divide by 100) else you'll end up with 1000% proof alcohol!
dried_type = -1 // Saves us from having to define each stupid grown's dried_type as itself. If you don't want a plant to be driable (watermelons) set this to null in the time definition.
- burn_state = FLAMMABLE
+ resistance_flags = FLAMMABLE
origin_tech = "biotech=1"
/obj/item/reagent_containers/food/snacks/grown/New(newloc, var/obj/item/seeds/new_seed = null)
diff --git a/code/modules/hydroponics/growninedible.dm b/code/modules/hydroponics/growninedible.dm
index b665f171285..14a4b42ca5f 100644
--- a/code/modules/hydroponics/growninedible.dm
+++ b/code/modules/hydroponics/growninedible.dm
@@ -5,7 +5,7 @@
/obj/item/grown // Grown weapons
name = "grown_weapon"
icon = 'icons/obj/hydroponics/harvest.dmi'
- burn_state = FLAMMABLE
+ resistance_flags = FLAMMABLE
var/obj/item/seeds/seed = null // type path, gets converted to item on New(). It's safe to assume it's always a seed item.
/obj/item/grown/New(newloc, var/obj/item/seeds/new_seed = null)
diff --git a/code/modules/hydroponics/hydroitemdefines.dm b/code/modules/hydroponics/hydroitemdefines.dm
index 45c55f4a7f3..7d59bd3360b 100644
--- a/code/modules/hydroponics/hydroitemdefines.dm
+++ b/code/modules/hydroponics/hydroitemdefines.dm
@@ -80,7 +80,7 @@
hitsound = null
materials = null
flags = NONE
- burn_state = FLAMMABLE
+ resistance_flags = FLAMMABLE
/obj/item/hatchet
name = "hatchet"
diff --git a/code/modules/hydroponics/seeds.dm b/code/modules/hydroponics/seeds.dm
index d9e07d96987..091534633f9 100644
--- a/code/modules/hydroponics/seeds.dm
+++ b/code/modules/hydroponics/seeds.dm
@@ -6,7 +6,7 @@
icon = 'icons/obj/hydroponics/seeds.dmi'
icon_state = "seed" // Unknown plant seed - these shouldn't exist in-game.
w_class = WEIGHT_CLASS_TINY
- burn_state = FLAMMABLE
+ resistance_flags = FLAMMABLE
var/plantname = "Plants" // Name of plant when planted.
var/product // A type path. The thing that is created when the plant is harvested.
var/species = "" // Used to update icons. Should match the name in the sprites unless all icon_* are overriden.
diff --git a/code/modules/library/codex_gigas.dm b/code/modules/library/codex_gigas.dm
index 63af7f9374b..e908f35b60b 100644
--- a/code/modules/library/codex_gigas.dm
+++ b/code/modules/library/codex_gigas.dm
@@ -3,7 +3,7 @@
icon_state ="demonomicon"
throw_speed = 1
throw_range = 10
- burn_state = LAVA_PROOF
+ resistance_flags = LAVA_PROOF | FIRE_PROOF | ACID_PROOF
author = "Forces beyond your comprehension"
unique = TRUE
title = "The codex gigas"
diff --git a/code/modules/library/lib_items.dm b/code/modules/library/lib_items.dm
index 2bff10dd648..2be21e7f3c3 100644
--- a/code/modules/library/lib_items.dm
+++ b/code/modules/library/lib_items.dm
@@ -18,8 +18,8 @@
anchored = 1
density = 1
opacity = 1
- burn_state = FLAMMABLE
- burntime = 30
+ resistance_flags = FLAMMABLE
+ max_integrity = 200
var/health = 50
armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 50, "acid" = 0)
var/tmp/busy = 0
@@ -171,7 +171,7 @@
force = 2
w_class = WEIGHT_CLASS_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")
- burn_state = FLAMMABLE
+ resistance_flags = FLAMMABLE
var/dat // Actual page content
var/due_date = 0 // Game time in 1/10th seconds
diff --git a/code/modules/martial_arts/krav_maga.dm b/code/modules/martial_arts/krav_maga.dm
index 80498117343..5da6b329dcb 100644
--- a/code/modules/martial_arts/krav_maga.dm
+++ b/code/modules/martial_arts/krav_maga.dm
@@ -153,6 +153,7 @@ datum/martial_art/krav_maga/grab_act(var/mob/living/carbon/human/A, var/mob/livi
/obj/item/clothing/gloves/color/black/krav_maga
var/datum/martial_art/krav_maga/style = new
can_be_cut = FALSE
+ resistance_flags = NONE
/obj/item/clothing/gloves/color/black/krav_maga/equipped(mob/user, slot)
if(!ishuman(user))
diff --git a/code/modules/mining/equipment/explorer_gear.dm b/code/modules/mining/equipment/explorer_gear.dm
index f8a6843964d..261b7ca9b90 100644
--- a/code/modules/mining/equipment/explorer_gear.dm
+++ b/code/modules/mining/equipment/explorer_gear.dm
@@ -12,7 +12,7 @@
hoodtype = /obj/item/clothing/head/hooded/explorer
armor = list("melee" = 30, "bullet" = 20, "laser" = 20, "energy" = 20, "bomb" = 50, "bio" = 100, "rad" = 50, "fire" = 50, "acid" = 50)
allowed = list(/obj/item/flashlight, /obj/item/tank, /obj/item/resonator, /obj/item/mining_scanner, /obj/item/t_scanner/adv_mining_scanner, /obj/item/gun/energy/kinetic_accelerator, /obj/item/pickaxe)
- burn_state = FIRE_PROOF
+ resistance_flags = FIRE_PROOF
hide_tail_by_species = list("Vox" , "Vulpkanin" , "Unathi" , "Tajaran")
sprite_sheets = list(
@@ -34,7 +34,7 @@
min_cold_protection_temperature = FIRE_HELM_MIN_TEMP_PROTECT
max_heat_protection_temperature = FIRE_HELM_MAX_TEMP_PROTECT
armor = list("melee" = 30, "bullet" = 20, "laser" = 20, "energy" = 20, "bomb" = 50, "bio" = 100, "rad" = 50, "fire" = 50, "acid" = 50)
- burn_state = FIRE_PROOF
+ resistance_flags = FIRE_PROOF
sprite_sheets = list(
"Vox" = 'icons/mob/species/vox/head.dmi',
@@ -50,7 +50,7 @@
item_state = "hostile_env"
flags = THICKMATERIAL //not spaceproof
max_heat_protection_temperature = FIRE_IMMUNITY_MAX_TEMP_PROTECT
- burn_state = LAVA_PROOF
+ resistance_flags = FIRE_PROOF | LAVA_PROOF
slowdown = 0
armor = list("melee" = 70, "bullet" = 40, "laser" = 10, "energy" = 10, "bomb" = 50, "bio" = 100, "rad" = 100, "fire" = 100, "acid" = 100)
allowed = list(/obj/item/flashlight, /obj/item/tank, /obj/item/resonator, /obj/item/mining_scanner, /obj/item/t_scanner/adv_mining_scanner, /obj/item/gun/energy/kinetic_accelerator, /obj/item/pickaxe)
@@ -82,7 +82,7 @@
max_heat_protection_temperature = FIRE_IMMUNITY_MAX_TEMP_PROTECT
flags = THICKMATERIAL // no space protection
armor = list("melee" = 70, "bullet" = 40, "laser" = 10, "energy" = 10, "bomb" = 50, "bio" = 100, "rad" = 100, "fire" = 100, "acid" = 100)
- burn_state = LAVA_PROOF
+ resistance_flags = FIRE_PROOF | LAVA_PROOF
/obj/item/clothing/head/helmet/space/hostile_environment/New()
..()
diff --git a/code/modules/mining/equipment/survival_pod.dm b/code/modules/mining/equipment/survival_pod.dm
index 23b8904fe84..9c76ed8e73f 100644
--- a/code/modules/mining/equipment/survival_pod.dm
+++ b/code/modules/mining/equipment/survival_pod.dm
@@ -294,11 +294,8 @@
/obj/structure/fans/tiny/invisible
name = "air flow blocker"
- resistance_flags = INDESTRUCTIBLE
- burn_state = LAVA_PROOF
- unacidable = TRUE
+ resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | UNACIDABLE | ACID_PROOF
invisibility = INVISIBILITY_ABSTRACT
-
//Signs
/obj/structure/sign/mining
name = "nanotrasen mining corps sign"
diff --git a/code/modules/mining/lavaland/ash_flora.dm b/code/modules/mining/lavaland/ash_flora.dm
index 46df9ddfd9b..5059a7e5be7 100644
--- a/code/modules/mining/lavaland/ash_flora.dm
+++ b/code/modules/mining/lavaland/ash_flora.dm
@@ -168,6 +168,7 @@
icon = 'icons/obj/lavaland/ash_flora.dmi'
icon_state = "mushroom_shavings"
w_class = WEIGHT_CLASS_TINY
+ resistance_flags = FLAMMABLE
seed = /obj/item/seeds/lavaland/polypore
wine_power = 0.2
diff --git a/code/modules/mining/lavaland/loot/ashdragon_loot.dm b/code/modules/mining/lavaland/loot/ashdragon_loot.dm
index 6a1e563da7a..e9728bc7901 100644
--- a/code/modules/mining/lavaland/loot/ashdragon_loot.dm
+++ b/code/modules/mining/lavaland/loot/ashdragon_loot.dm
@@ -168,8 +168,7 @@
force = 25
damtype = BURN
hitsound = 'sound/weapons/sear.ogg'
- burn_state = LAVA_PROOF
- unacidable = 1
+ resistance_flags = LAVA_PROOF | FIRE_PROOF | ACID_PROOF
var/turf_type = /turf/simulated/floor/plating/lava/smooth
var/transform_string = "lava"
var/reset_turf_type = /turf/simulated/floor/plating/asteroid/basalt
diff --git a/code/modules/mining/lavaland/loot/colossus_loot.dm b/code/modules/mining/lavaland/loot/colossus_loot.dm
index fbe1067918a..7c878df745a 100644
--- a/code/modules/mining/lavaland/loot/colossus_loot.dm
+++ b/code/modules/mining/lavaland/loot/colossus_loot.dm
@@ -26,8 +26,7 @@
icon_state = "blackbox"
luminosity = 8
max_n_of_items = INFINITY
- unacidable = 1
- burn_state = LAVA_PROOF
+ resistance_flags = LAVA_PROOF | FIRE_PROOF | ACID_PROOF
pixel_y = -4
use_power = NO_POWER_USE
var/memory_saved = FALSE
@@ -113,11 +112,10 @@
desc = "A strange chunk of crystal, being in the presence of it fills you with equal parts excitement and dread."
icon = 'icons/obj/lavaland/artefacts.dmi'
icon_state = "anomaly_crystal"
- luminosity = 8
+ light_range = 8
use_power = NO_POWER_USE
density = 1
- burn_state = LAVA_PROOF
- unacidable = 1
+ resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | ACID_PROOF
var/activation_method = "touch"
var/activation_damage_type = null
var/last_use_timer = 0
@@ -440,6 +438,7 @@
icon_state = null //This shouldn't even be visible, so if it DOES show up, at least nobody will notice
density = 1
anchored = 1
+ resistance_flags = FIRE_PROOF | ACID_PROOF | INDESTRUCTIBLE
var/mob/living/simple_animal/holder_animal
/obj/structure/closet/stasis/process()
diff --git a/code/modules/mining/lavaland/loot/tendril_loot.dm b/code/modules/mining/lavaland/loot/tendril_loot.dm
index 67b597e90aa..92fe38a0158 100644
--- a/code/modules/mining/lavaland/loot/tendril_loot.dm
+++ b/code/modules/mining/lavaland/loot/tendril_loot.dm
@@ -14,6 +14,7 @@
icon = 'icons/obj/storage.dmi'
icon_state = "cultpack"
slot_flags = SLOT_BACK
+ resistance_flags = INDESTRUCTIBLE
var/obj/item/storage/backpack/shared/bag
/obj/item/shared_storage/red
@@ -164,7 +165,7 @@
icon_state = "goliath_boat"
icon = 'icons/obj/lavaland/dragonboat.dmi'
keytype = /obj/item/oar
- burn_state = LAVA_PROOF
+ resistance_flags = LAVA_PROOF | FIRE_PROOF
/obj/vehicle/lavaboat/relaymove(mob/user, direction)
var/turf/next = get_step(src, direction)
@@ -184,7 +185,7 @@
desc = "Not to be confused with the kind Research hassles you for."
force = 12
w_class = WEIGHT_CLASS_NORMAL
- burn_state = LAVA_PROOF
+ resistance_flags = LAVA_PROOF | FIRE_PROOF
/datum/crafting_recipe/oar
name = "goliath bone oar"
@@ -207,7 +208,6 @@
desc = "A tiny ship inside a bottle."
icon = 'icons/obj/lavaland/artefacts.dmi'
icon_state = "ship_bottle"
- burn_state = LAVA_PROOF
/obj/item/ship_in_a_bottle/attack_self(mob/user)
to_chat(user, "You're not sure how they get the ships in these things, but you're pretty sure you know how to get it out.")
@@ -392,6 +392,7 @@
desc = "A dread talisman that can render you completely invulnerable."
icon = 'icons/obj/lavaland/artefacts.dmi'
icon_state = "talisman"
+ resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | UNACIDABLE | ACID_PROOF
actions_types = list(/datum/action/item_action/immortality)
var/cooldown = 0
diff --git a/code/modules/mining/lavaland/necropolis_chests.dm b/code/modules/mining/lavaland/necropolis_chests.dm
index ebe71af1f58..ae436214b03 100644
--- a/code/modules/mining/lavaland/necropolis_chests.dm
+++ b/code/modules/mining/lavaland/necropolis_chests.dm
@@ -6,8 +6,7 @@
icon_state = "necrocrate"
icon_opened = "necrocrateopen"
icon_closed = "necrocrate"
- burn_state = LAVA_PROOF
- unacidable = 1
+ resistance_flags = LAVA_PROOF | FIRE_PROOF | ACID_PROOF
/obj/structure/closet/crate/necropolis/tendril
desc = "It's watching you suspiciously."
diff --git a/code/modules/mining/mine_items.dm b/code/modules/mining/mine_items.dm
index dd00368a2ab..43e1e6df480 100644
--- a/code/modules/mining/mine_items.dm
+++ b/code/modules/mining/mine_items.dm
@@ -5,7 +5,6 @@
name = "Light emitter"
anchored = TRUE
invisibility = 101
- unacidable = TRUE
var/set_luminosity = 8
var/set_cap = 0
diff --git a/code/modules/mining/money_bag.dm b/code/modules/mining/money_bag.dm
index 9f1e9ce4f27..230104f58b7 100644
--- a/code/modules/mining/money_bag.dm
+++ b/code/modules/mining/money_bag.dm
@@ -5,8 +5,7 @@
icon_state = "moneybag"
force = 10
throwforce = 0
- burn_state = FLAMMABLE
- burntime = 20
+ resistance_flags = FLAMMABLE
max_integrity = 100
w_class = WEIGHT_CLASS_BULKY
max_w_class = WEIGHT_CLASS_NORMAL
diff --git a/code/modules/ninja/suit/head.dm b/code/modules/ninja/suit/head.dm
index d97a814d82b..9d183f4f1a1 100644
--- a/code/modules/ninja/suit/head.dm
+++ b/code/modules/ninja/suit/head.dm
@@ -6,5 +6,4 @@
icon_state = "s-ninja"
item_state = "s-ninja_hood"
armor = list("melee" = 60, "bullet" = 50, "laser" = 30,"energy" = 15, "bomb" = 30, "bio" = 30, "rad" = 25, "fire" = 100, "acid" = 100)
- unacidable = 1
blockTracking = 1
diff --git a/code/modules/ninja/suit/mask.dm b/code/modules/ninja/suit/mask.dm
index 2f76673ab13..f88ada9f0b4 100644
--- a/code/modules/ninja/suit/mask.dm
+++ b/code/modules/ninja/suit/mask.dm
@@ -11,7 +11,6 @@ Contents:
desc = "A close-fitting mask that acts both as an air filter and a post-modern fashion statement."
icon_state = "s-ninja(norm)"
item_state = "s-ninja_mask"
- unacidable = 1
sprite_sheets = list(
"Vox" = 'icons/mob/species/vox/mask.dmi',
diff --git a/code/modules/ninja/suit/suit.dm b/code/modules/ninja/suit/suit.dm
index 4b146e39709..ed2b0025fad 100644
--- a/code/modules/ninja/suit/suit.dm
+++ b/code/modules/ninja/suit/suit.dm
@@ -14,7 +14,6 @@ Contents:
item_state = "s-ninja_suit"
allowed = list(/obj/item/gun, /obj/item/ammo_box, /obj/item/melee/baton, /obj/item/tank, /obj/item/stock_parts/cell)
slowdown = 0
- unacidable = 1
armor = list("melee" = 60, "bullet" = 50, "laser" = 30,"energy" = 15, "bomb" = 30, "bio" = 30, "rad" = 30, "fire" = 100, "acid" = 100)
var/suitActive = 0
diff --git a/code/modules/paperwork/clipboard.dm b/code/modules/paperwork/clipboard.dm
index dc16101eac7..be5ba9f8aed 100644
--- a/code/modules/paperwork/clipboard.dm
+++ b/code/modules/paperwork/clipboard.dm
@@ -12,7 +12,7 @@
var/obj/item/pen/containedpen
var/obj/item/toppaper
slot_flags = SLOT_BELT
- burn_state = FLAMMABLE
+ resistance_flags = FLAMMABLE
/obj/item/clipboard/New()
..()
diff --git a/code/modules/paperwork/contract.dm b/code/modules/paperwork/contract.dm
index 55f220153b1..c32e1fc8a88 100644
--- a/code/modules/paperwork/contract.dm
+++ b/code/modules/paperwork/contract.dm
@@ -55,7 +55,7 @@
/obj/item/paper/contract/infernal
var/contractType = 0
- burn_state = LAVA_PROOF
+ resistance_flags = LAVA_PROOF | FIRE_PROOF | ACID_PROOF
var/datum/mind/owner
icon_state = "evil_contract"
diff --git a/code/modules/paperwork/folders.dm b/code/modules/paperwork/folders.dm
index 7c7fe156ca0..de894e80106 100644
--- a/code/modules/paperwork/folders.dm
+++ b/code/modules/paperwork/folders.dm
@@ -5,7 +5,7 @@
icon_state = "folder"
w_class = WEIGHT_CLASS_SMALL
pressure_resistance = 2
- burn_state = FLAMMABLE
+ resistance_flags = FLAMMABLE
/obj/item/folder/blue
desc = "A blue folder."
diff --git a/code/modules/paperwork/paper.dm b/code/modules/paperwork/paper.dm
index d7ea9db01ea..676926153c1 100644
--- a/code/modules/paperwork/paper.dm
+++ b/code/modules/paperwork/paper.dm
@@ -17,8 +17,8 @@
pressure_resistance = 0
slot_flags = SLOT_HEAD
body_parts_covered = HEAD
- burn_state = FLAMMABLE
- burntime = 5
+ resistance_flags = FLAMMABLE
+ max_integrity = 50
attack_verb = list("bapped")
dog_fashion = /datum/dog_fashion/head
var/info //What's actually written on the paper.
@@ -303,7 +303,7 @@
/obj/item/paper/attackby(obj/item/P, mob/living/user, params)
..()
- if(burn_state == ON_FIRE)
+ if(resistance_flags & ON_FIRE)
return
var/clown = 0
@@ -403,7 +403,7 @@
/obj/item/paper/fire_act(datum/gas_mixture/air, exposed_temperature, exposed_volume, global_overlay = TRUE)
..()
- if(burn_state >= FLAMMABLE) //Renders paper that has been lit on fire to be illegible.
+ if(!(resistance_flags & FIRE_PROOF))
info = "Heat-curled corners and sooty words offer little insight. Whatever was once written on this page has been rendered illegible through fire."
/obj/item/paper/proc/stamp(var/obj/item/stamp/S)
diff --git a/code/modules/paperwork/paperbin.dm b/code/modules/paperwork/paperbin.dm
index 4771b6bef34..3467a491160 100644
--- a/code/modules/paperwork/paperbin.dm
+++ b/code/modules/paperwork/paperbin.dm
@@ -8,7 +8,6 @@
throw_speed = 3
throw_range = 7
pressure_resistance = 8
- burn_state = FLAMMABLE
var/amount = 30 //How much paper is in the bin.
var/list/papers = list() //List of papers put in the bin for reference.
diff --git a/code/modules/paperwork/paperplane.dm b/code/modules/paperwork/paperplane.dm
index a16dc1d2ea3..7fac0e3386a 100644
--- a/code/modules/paperwork/paperplane.dm
+++ b/code/modules/paperwork/paperplane.dm
@@ -8,8 +8,8 @@
throw_speed = 1
throwforce = 0
w_class = WEIGHT_CLASS_TINY
- burn_state = FLAMMABLE
- burntime = 5
+ resistance_flags = FLAMMABLE
+ max_integrity = 50
no_spin = TRUE
var/obj/item/paper/internal_paper
diff --git a/code/modules/paperwork/photography.dm b/code/modules/paperwork/photography.dm
index de3f2ad52d6..436c4eec6fc 100644
--- a/code/modules/paperwork/photography.dm
+++ b/code/modules/paperwork/photography.dm
@@ -16,7 +16,7 @@
icon_state = "film"
item_state = "electropack"
w_class = WEIGHT_CLASS_TINY
- burn_state = FLAMMABLE
+ resistance_flags = FLAMMABLE
/********
@@ -28,8 +28,8 @@
icon_state = "photo"
item_state = "paper"
w_class = WEIGHT_CLASS_SMALL
- burn_state = FLAMMABLE
- burntime = 5
+ resistance_flags = FLAMMABLE
+ max_integrity = 50
var/blueprints = 0 // Does this have the blueprints?
var/icon/img //Big photo image
var/scribble //Scribble on the back.
@@ -111,7 +111,7 @@
icon_state = "album"
item_state = "briefcase"
can_hold = list(/obj/item/photo)
- burn_state = FLAMMABLE
+ resistance_flags = FLAMMABLE
/obj/item/storage/photo_album/MouseDrop(obj/over_object as obj)
diff --git a/code/modules/pda/PDA.dm b/code/modules/pda/PDA.dm
index 778a9c37e34..b2cf43e5b84 100755
--- a/code/modules/pda/PDA.dm
+++ b/code/modules/pda/PDA.dm
@@ -13,6 +13,7 @@ var/global/list/obj/item/pda/PDAs = list()
w_class = WEIGHT_CLASS_TINY
slot_flags = SLOT_ID | SLOT_BELT | SLOT_PDA
armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 100, "acid" = 100)
+ resistance_flags = FIRE_PROOF | ACID_PROOF
origin_tech = "programming=2"
//Main variables
diff --git a/code/modules/power/apc.dm b/code/modules/power/apc.dm
index 3f565631de8..ca5a911e830 100644
--- a/code/modules/power/apc.dm
+++ b/code/modules/power/apc.dm
@@ -47,6 +47,7 @@
desc = "A control terminal for the area electrical systems."
icon_state = "apc0"
use_power = NO_POWER_USE
+ resistance_flags = FIRE_PROOF
req_access = list(access_engine_equip)
siemens_strength = 1
var/area/area
diff --git a/code/modules/power/gravitygenerator.dm b/code/modules/power/gravitygenerator.dm
index 388b523518b..d607ccaa8b1 100644
--- a/code/modules/power/gravitygenerator.dm
+++ b/code/modules/power/gravitygenerator.dm
@@ -25,7 +25,7 @@ var/const/GRAV_NEEDS_WRENCH = 3
anchored = 1
density = 1
use_power = NO_POWER_USE
- unacidable = 1
+ resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | UNACIDABLE | ACID_PROOF
var/sprite_number = 0
/obj/machinery/gravity_generator/ex_act(severity)
diff --git a/code/modules/power/singularity/containment_field.dm b/code/modules/power/singularity/containment_field.dm
index 89e37b88c5c..0acc1dd2463 100644
--- a/code/modules/power/singularity/containment_field.dm
+++ b/code/modules/power/singularity/containment_field.dm
@@ -5,7 +5,8 @@
icon_state = "Contain_F"
anchored = 1
density = 0
- unacidable = 1
+ move_resist = INFINITY
+ resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | UNACIDABLE | ACID_PROOF
use_power = NO_POWER_USE
light_range = 4
layer = OBJ_LAYER + 0.1
diff --git a/code/modules/power/singularity/generator.dm b/code/modules/power/singularity/generator.dm
index 6b76b0c9dbb..c5494f372e7 100644
--- a/code/modules/power/singularity/generator.dm
+++ b/code/modules/power/singularity/generator.dm
@@ -7,6 +7,7 @@
anchored = 0
density = 1
use_power = NO_POWER_USE
+ resistance_flags = FIRE_PROOF
var/energy = 0
var/creation_type = /obj/singularity
diff --git a/code/modules/power/singularity/singularity.dm b/code/modules/power/singularity/singularity.dm
index 12d6c8b831a..c77f18d927b 100644
--- a/code/modules/power/singularity/singularity.dm
+++ b/code/modules/power/singularity/singularity.dm
@@ -8,7 +8,6 @@
layer = MASSIVE_OBJ_LAYER
light_range = 6
appearance_flags = 0
- unacidable = 1 //Don't comment this out.
var/current_size = 1
var/allowed_size = 1
var/contained = 1 //Are we going to move around?
@@ -27,7 +26,7 @@
var/last_warning
var/consumedSupermatter = 0 //If the singularity has eaten a supermatter shard and can go to stage six
allow_spin = 0
- burn_state = LAVA_PROOF
+ resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | UNACIDABLE | ACID_PROOF | FREEZE_PROOF
/obj/singularity/New(loc, var/starting_energy = 50, var/temp = 0)
//CARN: admin-alert for chuckle-fuckery.
diff --git a/code/modules/power/supermatter/supermatter.dm b/code/modules/power/supermatter/supermatter.dm
index c8aeacd900f..463121a7bdf 100644
--- a/code/modules/power/supermatter/supermatter.dm
+++ b/code/modules/power/supermatter/supermatter.dm
@@ -36,6 +36,7 @@
density = 1
anchored = 0
light_range = 4
+ resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | UNACIDABLE | ACID_PROOF | FREEZE_PROOF
var/gasefficency = 0.125
diff --git a/code/modules/power/turbine.dm b/code/modules/power/turbine.dm
index 7b1764c354d..c38382cb962 100644
--- a/code/modules/power/turbine.dm
+++ b/code/modules/power/turbine.dm
@@ -29,6 +29,7 @@
icon_state = "compressor"
anchored = 1
density = 1
+ resistance_flags = FIRE_PROOF
var/obj/machinery/power/turbine/turbine
var/datum/gas_mixture/gas_contained
var/turf/simulated/inturf
@@ -47,6 +48,7 @@
icon_state = "turbine"
anchored = 1
density = 1
+ resistance_flags = FIRE_PROOF
var/opened = 0
var/obj/machinery/power/compressor/compressor
var/turf/simulated/outturf
diff --git a/code/modules/projectiles/guns/energy/laser.dm b/code/modules/projectiles/guns/energy/laser.dm
index 8f2f0de5cb5..8635e08dfba 100644
--- a/code/modules/projectiles/guns/energy/laser.dm
+++ b/code/modules/projectiles/guns/energy/laser.dm
@@ -33,6 +33,7 @@
origin_tech = null
ammo_x_offset = 3
selfcharge = 1
+ resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | ACID_PROOF
/obj/item/gun/energy/laser/captain/scattershot
name = "scatter shot laser rifle"
diff --git a/code/modules/projectiles/guns/energy/nuclear.dm b/code/modules/projectiles/guns/energy/nuclear.dm
index 949ee16fa06..1a8a5afd1eb 100644
--- a/code/modules/projectiles/guns/energy/nuclear.dm
+++ b/code/modules/projectiles/guns/energy/nuclear.dm
@@ -55,6 +55,7 @@
force = 10
ammo_type = list(/obj/item/ammo_casing/energy/electrode/hos, /obj/item/ammo_casing/energy/laser/hos, /obj/item/ammo_casing/energy/disabler)
ammo_x_offset = 4
+ resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | ACID_PROOF
/obj/item/gun/energy/gun/blueshield
name = "advanced stun revolver"
diff --git a/code/modules/projectiles/projectile.dm b/code/modules/projectiles/projectile.dm
index 081c57ddb79..7c881b3be2a 100644
--- a/code/modules/projectiles/projectile.dm
+++ b/code/modules/projectiles/projectile.dm
@@ -3,14 +3,13 @@
icon = 'icons/obj/projectiles.dmi'
icon_state = "bullet"
density = 0
- unacidable = 1
+ resistance_flags = LAVA_PROOF | FIRE_PROOF | UNACIDABLE | ACID_PROOF
anchored = 1 //There's a reason this is here, Mport. God fucking damn it -Agouri. Find&Fix by Pete. The reason this is here is to stop the curving of emitter shots.
flags = ABSTRACT
pass_flags = PASSTABLE
mouse_opacity = MOUSE_OPACITY_TRANSPARENT
hitsound = 'sound/weapons/pierce.ogg'
var/hitsound_wall = ""
- burn_state = LAVA_PROOF
var/def_zone = "" //Aiming at
var/mob/firer = null//Who shot it
var/obj/item/ammo_casing/ammo_casing = null
diff --git a/code/modules/reagents/chemistry/machinery/chem_dispenser.dm b/code/modules/reagents/chemistry/machinery/chem_dispenser.dm
index 7c53761a70f..1877d94f3ed 100644
--- a/code/modules/reagents/chemistry/machinery/chem_dispenser.dm
+++ b/code/modules/reagents/chemistry/machinery/chem_dispenser.dm
@@ -6,6 +6,7 @@
icon_state = "dispenser"
use_power = IDLE_POWER_USE
idle_power_usage = 40
+ resistance_flags = FIRE_PROOF | ACID_PROOF
var/ui_title = "Chem Dispenser 5000"
var/cell_type = /obj/item/stock_parts/cell/high
var/obj/item/stock_parts/cell/cell
diff --git a/code/modules/reagents/chemistry/machinery/chem_heater.dm b/code/modules/reagents/chemistry/machinery/chem_heater.dm
index 5f5bd8de2d4..ec7e51b6359 100644
--- a/code/modules/reagents/chemistry/machinery/chem_heater.dm
+++ b/code/modules/reagents/chemistry/machinery/chem_heater.dm
@@ -6,6 +6,7 @@
icon_state = "mixer0b"
use_power = IDLE_POWER_USE
idle_power_usage = 40
+ resistance_flags = FIRE_PROOF | ACID_PROOF
var/obj/item/reagent_containers/beaker = null
var/desired_temp = T0C
var/on = FALSE
diff --git a/code/modules/reagents/chemistry/machinery/chem_master.dm b/code/modules/reagents/chemistry/machinery/chem_master.dm
index 48b76b0de98..7b19e8ae3aa 100644
--- a/code/modules/reagents/chemistry/machinery/chem_master.dm
+++ b/code/modules/reagents/chemistry/machinery/chem_master.dm
@@ -6,6 +6,7 @@
icon_state = "mixer0"
use_power = IDLE_POWER_USE
idle_power_usage = 20
+ resistance_flags = FIRE_PROOF | ACID_PROOF
var/obj/item/reagent_containers/beaker = null
var/obj/item/storage/pill_bottle/loaded_pill_bottle = null
var/mode = 0
diff --git a/code/modules/reagents/chemistry/machinery/pandemic.dm b/code/modules/reagents/chemistry/machinery/pandemic.dm
index 870ef8cf76a..610778bff37 100644
--- a/code/modules/reagents/chemistry/machinery/pandemic.dm
+++ b/code/modules/reagents/chemistry/machinery/pandemic.dm
@@ -8,6 +8,7 @@
circuit = /obj/item/circuitboard/pandemic
use_power = IDLE_POWER_USE
idle_power_usage = 20
+ resistance_flags = ACID_PROOF
var/temp_html = ""
var/printing = null
var/wait = null
diff --git a/code/modules/reagents/chemistry/machinery/reagentgrinder.dm b/code/modules/reagents/chemistry/machinery/reagentgrinder.dm
index 1e3bcb92db5..81841e83bfd 100644
--- a/code/modules/reagents/chemistry/machinery/reagentgrinder.dm
+++ b/code/modules/reagents/chemistry/machinery/reagentgrinder.dm
@@ -8,6 +8,7 @@
idle_power_usage = 5
active_power_usage = 100
pass_flags = PASSTABLE
+ resistance_flags = ACID_PROOF
var/operating = 0
var/obj/item/reagent_containers/beaker = new /obj/item/reagent_containers/glass/beaker/large
var/limit = null
diff --git a/code/modules/reagents/reagent_containers/glass_containers.dm b/code/modules/reagents/reagent_containers/glass_containers.dm
index 1688a8d3a02..e9bad3c912d 100644
--- a/code/modules/reagents/reagent_containers/glass_containers.dm
+++ b/code/modules/reagents/reagent_containers/glass_containers.dm
@@ -13,6 +13,7 @@
volume = 50
container_type = OPENCONTAINER
has_lid = TRUE
+ resistance_flags = ACID_PROOF
var/label_text = ""
// the fucking asshole who designed this can go die in a fire - Iamgoofball
@@ -346,6 +347,7 @@
volume = 120
armor = list("melee" = 10, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 75, "acid" = 50) //Weak melee protection, because you can wear it on your head
slot_flags = SLOT_HEAD
+ resistance_flags = NONE
container_type = OPENCONTAINER
/obj/item/reagent_containers/glass/bucket/wooden
@@ -354,7 +356,7 @@
item_state = "woodbucket"
materials = null
armor = list("melee" = 10, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 0, "acid" = 50)
- burn_state = FLAMMABLE
+ resistance_flags = FLAMMABLE
/obj/item/reagent_containers/glass/bucket/equipped(mob/user, slot)
..()
diff --git a/code/modules/reagents/reagent_containers/hypospray.dm b/code/modules/reagents/reagent_containers/hypospray.dm
index c4e54c20626..d03c591261a 100644
--- a/code/modules/reagents/reagent_containers/hypospray.dm
+++ b/code/modules/reagents/reagent_containers/hypospray.dm
@@ -11,6 +11,7 @@
amount_per_transfer_from_this = 5
volume = 30
possible_transfer_amounts = list(1,2,3,4,5,10,15,20,25,30)
+ resistance_flags = ACID_PROOF
container_type = OPENCONTAINER
slot_flags = SLOT_BELT
var/ignore_flags = FALSE
@@ -78,6 +79,7 @@
/obj/item/reagent_containers/hypospray/CMO
list_reagents = list("omnizine" = 30)
+ resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | ACID_PROOF
/obj/item/reagent_containers/hypospray/combat
name = "combat stimulant injector"
diff --git a/code/modules/reagents/reagent_containers/iv_bag.dm b/code/modules/reagents/reagent_containers/iv_bag.dm
index cfe84d10f2e..45d6c1e2551 100644
--- a/code/modules/reagents/reagent_containers/iv_bag.dm
+++ b/code/modules/reagents/reagent_containers/iv_bag.dm
@@ -12,6 +12,7 @@
possible_transfer_amounts = list(1,5,10,15,20,25,30,50) // Everything above 10 is NOT usable on a person and is instead used for transfering to other containers
amount_per_transfer_from_this = 1
container_type = OPENCONTAINER
+ resistance_flags = ACID_PROOF
var/label_text
var/mode = IV_INJECT
var/mob/living/carbon/human/injection_target
@@ -126,7 +127,7 @@
var/trans = reagents.trans_to(target, amount_per_transfer_from_this)
to_chat(user, "You transfer [trans] units of the solution to [target].")
-
+
else if(istype(target, /obj/item/reagent_containers/glass) && !target.is_open_container())
to_chat(user, "You cannot fill [target] while it is sealed.")
return
diff --git a/code/modules/recycling/disposal.dm b/code/modules/recycling/disposal.dm
index e7c7a8b7e20..0b274af2c1c 100644
--- a/code/modules/recycling/disposal.dm
+++ b/code/modules/recycling/disposal.dm
@@ -16,6 +16,7 @@
density = 1
on_blueprints = TRUE
armor = list("melee" = 25, "bullet" = 10, "laser" = 10, "energy" = 100, "bomb" = 0, "bio" = 100, "rad" = 100, "fire" = 90, "acid" = 30)
+ resistance_flags = FIRE_PROOF
var/datum/gas_mixture/air_contents // internal reservoir
var/mode = 1 // item mode 0=off 1=charging 2=charged
var/flush = 0 // true if flush handle is pulled
@@ -505,6 +506,7 @@
/obj/structure/disposalholder
invisibility = 101
+ resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | UNACIDABLE | ACID_PROOF
var/datum/gas_mixture/gas = null // gas used to flush, will appear at exit point
var/active = 0 // true if the holder is moving, otherwise inactive
dir = 0
diff --git a/code/modules/recycling/sortingmachinery.dm b/code/modules/recycling/sortingmachinery.dm
index ae2d3da87ae..5fef6d20922 100755
--- a/code/modules/recycling/sortingmachinery.dm
+++ b/code/modules/recycling/sortingmachinery.dm
@@ -132,7 +132,7 @@
flags = NOBLUDGEON
amount = 25
max_amount = 25
- burn_state = FLAMMABLE
+ resistance_flags = FLAMMABLE
/obj/item/stack/packageWrap/afterattack(var/obj/target as obj, mob/user as mob, proximity)
if(!proximity) return
diff --git a/code/modules/research/xenobiology/xenobiology.dm b/code/modules/research/xenobiology/xenobiology.dm
index 81ca4bfeb9b..6fa01280c68 100644
--- a/code/modules/research/xenobiology/xenobiology.dm
+++ b/code/modules/research/xenobiology/xenobiology.dm
@@ -376,6 +376,7 @@
icon = 'icons/obj/chemical.dmi'
icon_state = "bottle17"
origin_tech = "biotech=5"
+ resistance_flags = FIRE_PROOF
var/uses = 3
/obj/item/slimepotion/fireproof/afterattack(obj/item/clothing/C, mob/user, proximity_flag)
@@ -396,7 +397,7 @@
C.color = "#000080"
C.max_heat_protection_temperature = FIRE_IMMUNITY_MAX_TEMP_PROTECT
C.heat_protection = C.body_parts_covered
- C.burn_state = FIRE_PROOF
+ C.resistance_flags |= FIRE_PROOF
uses --
if(!uses)
qdel(src)
diff --git a/code/modules/ruins/lavalandruin_code/ash_walker_den.dm b/code/modules/ruins/lavalandruin_code/ash_walker_den.dm
index 168fde07e7d..e95a5381b99 100644
--- a/code/modules/ruins/lavalandruin_code/ash_walker_den.dm
+++ b/code/modules/ruins/lavalandruin_code/ash_walker_den.dm
@@ -6,10 +6,11 @@
icon = 'icons/mob/nest.dmi'
icon_state = "ash_walker_nest"
+ move_resist = INFINITY // just killing it tears a massive hole in the ground, let's not move it
anchored = TRUE
density = TRUE
- burn_state = LAVA_PROOF
+ resistance_flags = FIRE_PROOF | LAVA_PROOF
max_integrity = 200
var/faction = list("ashwalker")
diff --git a/code/modules/ruins/lavalandruin_code/dead_ratvar.dm b/code/modules/ruins/lavalandruin_code/dead_ratvar.dm
index cde2007d643..5a404c924f6 100644
--- a/code/modules/ruins/lavalandruin_code/dead_ratvar.dm
+++ b/code/modules/ruins/lavalandruin_code/dead_ratvar.dm
@@ -12,9 +12,10 @@
bound_width = 416
bound_height = 64
pixel_y = -10
- unacidable = TRUE
- resistance_flags = INDESTRUCTIBLE
- burn_state = LAVA_PROOF
+ resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | UNACIDABLE | ACID_PROOF
+
+/obj/effect/clockwork
+ resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | UNACIDABLE | ACID_PROOF | FREEZE_PROOF
// An "overlay" used by clockwork walls and floors to appear normal to mesons.
/obj/effect/clockwork/overlay
@@ -78,8 +79,7 @@
can_deconstruct = TRUE
anchored = TRUE
density = TRUE
- unacidable = TRUE
- burn_state = FIRE_PROOF
+ resistance_flags = FIRE_PROOF | ACID_PROOF
desc = "A massive brass gear. You could probably secure or unsecure it with a wrench, or just climb over it."
/obj/structure/clockwork/wall_gear/displaced
@@ -144,14 +144,17 @@
new /obj/item/stack/tile/brass(loc, 3)
return ..()
+//The base clockwork item. Can have an alternate desc and will show up in the list of clockwork objects.
+/obj/item/clockwork
+ resistance_flags = FIRE_PROOF | ACID_PROOF
+
//Shards of Alloy, suitable only as a source of power for a replica fabricator.
/obj/item/clockwork/alloy_shards
name = "replicant alloy shards"
desc = "Broken shards of some oddly malleable metal. They occasionally move and seem to glow."
icon = 'icons/obj/clockwork_objects.dmi'
icon_state = "alloy_shards"
- burn_state = LAVA_PROOF
- unacidable = TRUE
+ resistance_flags = LAVA_PROOF | FIRE_PROOF | ACID_PROOF
var/randomsinglesprite = FALSE
var/randomspritemax = 2
var/sprite_shift = 9
@@ -213,6 +216,10 @@
desc = "A dented and scratched gear. It's very heavy."
icon_state = "pinion_lock"
+//Components: Used in scripture.
+/obj/item/clockwork/component
+ resistance_flags = LAVA_PROOF | FIRE_PROOF | ACID_PROOF
+
/obj/item/clockwork/component/belligerent_eye
name = "belligerent eye"
desc = "A brass construct with a rotating red center. It's as though it's looking for something to hurt."
diff --git a/code/modules/ruins/lavalandruin_code/syndicate_base.dm b/code/modules/ruins/lavalandruin_code/syndicate_base.dm
index 73cdd9fe40c..d776e7c059d 100644
--- a/code/modules/ruins/lavalandruin_code/syndicate_base.dm
+++ b/code/modules/ruins/lavalandruin_code/syndicate_base.dm
@@ -18,7 +18,7 @@
/obj/item/grenade/chem_grenade/adv_release = 5,
/obj/item/reagent_containers/food/drinks/bottle/holywater = 1)
product_slogans = "It's not pyromania if you're getting paid!;You smell that? Plasma, son. Nothing else in the world smells like that.;I love the smell of Plasma in the morning."
- burn_state = FIRE_PROOF
+ resistance_flags = FIRE_PROOF
// Spawners
/obj/effect/mob_spawn/human/lavaland_syndicate
diff --git a/code/modules/ruins/objects_and_mobs/necropolis_gate.dm b/code/modules/ruins/objects_and_mobs/necropolis_gate.dm
index 869c280a477..5a65a536b46 100644
--- a/code/modules/ruins/objects_and_mobs/necropolis_gate.dm
+++ b/code/modules/ruins/objects_and_mobs/necropolis_gate.dm
@@ -11,9 +11,7 @@
density = TRUE
pixel_x = -32
pixel_y = -32
- resistance_flags = INDESTRUCTIBLE
- burn_state = LAVA_PROOF
- unacidable = 1
+ resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | UNACIDABLE | ACID_PROOF
light_range = 8
light_color = LIGHT_COLOR_LAVA
var/open = FALSE
@@ -214,9 +212,7 @@ GLOBAL_DATUM(necropolis_gate, /obj/structure/necropolis_gate/legion_gate)
anchored = TRUE
pixel_x = -64
pixel_y = -40
- resistance_flags = INDESTRUCTIBLE
- burn_state = LAVA_PROOF
- unacidable = TRUE
+ resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | UNACIDABLE | ACID_PROOF
var/open = FALSE
var/static/mutable_appearance/top_overlay
@@ -247,9 +243,7 @@ GLOBAL_DATUM(necropolis_gate, /obj/structure/necropolis_gate/legion_gate)
icon_state = "pristine_tile1"
layer = ABOVE_OPEN_TURF_LAYER
anchored = TRUE
- resistance_flags = INDESTRUCTIBLE
- burn_state = LAVA_PROOF
- unacidable = TRUE
+ resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | UNACIDABLE | ACID_PROOF
var/tile_key = "pristine_tile"
var/tile_random_sprite_max = 24
var/fall_on_cross = STABLE //If the tile has some sort of effect when crossed
diff --git a/code/modules/security_levels/keycard authentication.dm b/code/modules/security_levels/keycard authentication.dm
index 834d3ddc907..25083e6262b 100644
--- a/code/modules/security_levels/keycard authentication.dm
+++ b/code/modules/security_levels/keycard authentication.dm
@@ -23,6 +23,7 @@
power_channel = ENVIRON
req_access = list(access_keycard_auth)
+ resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | UNACIDABLE | ACID_PROOF
/obj/machinery/keycard_auth/attack_ai(mob/user as mob)
to_chat(user, "The station AI is not to interact with these devices.")
diff --git a/code/modules/shuttle/shuttle.dm b/code/modules/shuttle/shuttle.dm
index 8c96837e9d5..3b1e0e63b98 100644
--- a/code/modules/shuttle/shuttle.dm
+++ b/code/modules/shuttle/shuttle.dm
@@ -9,7 +9,7 @@
//icon = 'icons/dirsquare.dmi'
icon_state = "pinonfar"
- unacidable = 1
+ resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | UNACIDABLE | ACID_PROOF
anchored = 1
var/id
@@ -837,6 +837,7 @@
var/cooldown //prevents spamming admins
possible_destinations = "ferry_home"
admin_controlled = 1
+ resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | ACID_PROOF
/obj/machinery/computer/shuttle/ferry/request/Topic(href, href_list)
if(..())
diff --git a/code/modules/shuttle/syndicate.dm b/code/modules/shuttle/syndicate.dm
index 0ec9e614110..5c0be6a78a5 100644
--- a/code/modules/shuttle/syndicate.dm
+++ b/code/modules/shuttle/syndicate.dm
@@ -8,7 +8,7 @@
circuit = /obj/item/circuitboard/shuttle/syndicate
shuttleId = "syndicate"
possible_destinations = "syndicate_away;syndicate_z5;syndicate_z3;syndicate_ne;syndicate_nw;syndicate_n;syndicate_se;syndicate_sw;syndicate_s;syndicate_custom"
- resistance_flags = INDESTRUCTIBLE
+ resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | ACID_PROOF
var/challenge = FALSE
var/moved = FALSE
diff --git a/code/modules/surgery/organs/augments_arms.dm b/code/modules/surgery/organs/augments_arms.dm
index 9342b3afd29..8f5700bd50d 100644
--- a/code/modules/surgery/organs/augments_arms.dm
+++ b/code/modules/surgery/organs/augments_arms.dm
@@ -86,7 +86,7 @@
holder = item
holder.flags |= NODROP
- holder.unacidable = 1
+ holder.resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | UNACIDABLE | ACID_PROOF
holder.slot_flags = null
holder.w_class = WEIGHT_CLASS_HUGE
holder.materials = null
diff --git a/code/modules/zombie/items.dm b/code/modules/zombie/items.dm
index 91693668637..c8214ed8283 100644
--- a/code/modules/zombie/items.dm
+++ b/code/modules/zombie/items.dm
@@ -5,9 +5,7 @@
sustain the zombie, forcing open airlock doors and opening \
child-safe caps on bottles."
flags = NODROP|ABSTRACT|DROPDEL
- resistance_flags = INDESTRUCTIBLE
- burn_state = LAVA_PROOF
- unacidable = TRUE
+ resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | UNACIDABLE | ACID_PROOF
icon = 'icons/effects/blood.dmi'
icon_state = "bloodhand_left"
var/icon_left = "bloodhand_left"