Merge pull request #12245 from Fox-McCloud/universal-damage

Universal Object Damage
This commit is contained in:
variableundefined
2019-10-06 23:22:48 -04:00
committed by GitHub
567 changed files with 5193 additions and 5472 deletions
+1 -1
View File
@@ -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()
..()
+1 -1
View File
@@ -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"
+9 -1
View File
@@ -50,9 +50,17 @@
playsound(loc, P.usesound, 50, 1)
anchored = !anchored
to_chat(user, "<span class='notice'>You [anchored ? "wrench" : "unwrench"] \the [src].</span>")
else if(user.a_intent != INTENT_HARM)
to_chat(user, "<span class='warning'>You can't put [P] in [src]!</span>")
else
to_chat(user, "<span class='notice'>You can't put [P] in [src]!</span>")
return ..()
/obj/structure/filingcabinet/deconstruct(disassembled = TRUE)
if(!(flags & NODECONSTRUCT))
new /obj/item/stack/sheet/metal(loc, 2)
for(var/obj/item/I in src)
I.forceMove(loc)
qdel(src)
/obj/structure/filingcabinet/attack_hand(mob/user as mob)
if(contents.len <= 0)
+1 -1
View File
@@ -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."
+4 -4
View File
@@ -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.
@@ -304,7 +304,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
@@ -404,7 +404,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 = "<i>Heat-curled corners and sooty words offer little insight. Whatever was once written on this page has been rendered illegible through fire.</i>"
/obj/item/paper/proc/stamp(var/obj/item/stamp/S)
+3 -3
View File
@@ -8,13 +8,13 @@
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.
/obj/item/paper_bin/fire_act(datum/gas_mixture/air, exposed_temperature, exposed_volume, global_overlay = TRUE)
if(!amount)
return
if(amount)
amount = 0
update_icon()
..()
/obj/item/paper_bin/Destroy()
+2 -2
View File
@@ -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
+8 -27
View File
@@ -11,6 +11,8 @@
idle_power_usage = 30
active_power_usage = 200
power_channel = EQUIP
max_integrity = 300
integrity_failure = 100
var/emag_cooldown
atom_say_verb = "bleeps"
var/obj/item/copyitem = null //what's in the copier!
@@ -180,34 +182,8 @@
copyitem.forceMove(get_turf(src))
copyitem = null
updateUsrDialog()
return
/obj/machinery/photocopier/ex_act(severity)
switch(severity)
if(1.0)
qdel(src)
if(2.0)
if(prob(50))
qdel(src)
else
if(toner > 0)
new /obj/effect/decal/cleanable/blood/oil(get_turf(src))
toner = 0
else
if(prob(50))
if(toner > 0)
new /obj/effect/decal/cleanable/blood/oil(get_turf(src))
toner = 0
return
/obj/machinery/photocopier/blob_act()
if(prob(50))
qdel(src)
else
if(toner > 0)
new /obj/effect/decal/cleanable/blood/oil(get_turf(src))
toner = 0
return
return ..()
/obj/machinery/photocopier/proc/copy(var/obj/item/paper/copy)
var/obj/item/paper/c = new /obj/item/paper (loc)
@@ -328,6 +304,11 @@
P.pixel_x = rand(-9, 9)
return P
/obj/machinery/photocopier/obj_break(damage_flag)
if(!(flags & NODECONSTRUCT))
if(toner > 0)
new /obj/effect/decal/cleanable/blood/oil(get_turf(src))
toner = 0
/obj/machinery/photocopier/MouseDrop_T(mob/target, mob/user)
check_ass() //Just to make sure that you can re-drag somebody onto it after they moved off.
+4 -4
View File
@@ -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.
@@ -112,7 +112,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)