Merge pull request #10211 from Ikarrus/burntweaks

Destructible Clothing Tweaks and Fixes
This commit is contained in:
Cheridan
2015-06-29 21:38:20 -05:00
12 changed files with 34 additions and 10 deletions
@@ -74,9 +74,11 @@
layer = 3
icon = 'icons/effects/effects.dmi'
icon_state = "cobweb1"
burn_state = 0 //Burnable
burntime = 1
/obj/effect/decal/cleanable/cobweb/fire_act()
qdel(src)
/obj/effect/decal/cleanable/molten_item
name = "gooey grey mass"
desc = "It looks like a melted... something."
@@ -37,6 +37,7 @@
..()
/obj/effect/decal/cleanable/fire_act()
reagents.chem_temp += 30
reagents.handle_reactions()
if(reagents)
reagents.chem_temp += 30
reagents.handle_reactions()
..()
@@ -2,6 +2,8 @@
name = "cabinet"
desc = "Old will forever be in fashion."
icon_state = "cabinet"
burn_state = 0 //Burnable
burntime = 20
/obj/structure/closet/acloset
name = "strange closet"
@@ -111,6 +111,8 @@
name = "coffin"
desc = "It's a burial receptacle for the dearly departed."
icon_state = "coffin"
burn_state = 0 //Burnable
burntime = 20
/obj/structure/closet/wardrobe/red
name = "security wardrobe"
@@ -2,6 +2,8 @@
name = "booze storage"
req_access = list(access_bar)
icon_state = "cabinet"
burn_state = 0 //Burnable
burntime = 20
/obj/structure/closet/secure_closet/bar/New()
..()
@@ -25,6 +25,8 @@
/obj/structure/closet/secure_closet/personal/cabinet
icon_state = "cabinet"
burn_state = 0 //Burnable
burntime = 20
/obj/structure/closet/secure_closet/personal/cabinet/New()
..()
@@ -151,6 +151,8 @@
name = "\proper detective's cabinet"
req_access = list(access_forensics_lockers)
icon_state = "cabinet"
burn_state = 0 //Burnable
burntime = 20
/obj/structure/closet/secure_closet/detective/New()
..()
+2 -1
View File
@@ -29,6 +29,7 @@
item_state = "jackboots"
armor = list(melee = 25, bullet = 25, laser = 25, energy = 25, bomb = 50, bio = 10, rad = 0)
strip_delay = 70
burn_state = -1 //Won't burn in fires
/obj/item/clothing/shoes/combat/swat //overpowered boots for death squads
name = "\improper SWAT boots"
@@ -36,7 +37,6 @@
permeability_coefficient = 0.01
flags = NOSLIP
armor = list(melee = 40, bullet = 30, laser = 25, energy = 25, bomb = 50, bio = 30, rad = 30)
burn_state = -1 //Won't burn in fires
/obj/item/clothing/shoes/sandal
desc = "A pair of rather plain, wooden sandals."
@@ -86,6 +86,7 @@
item_color = "hosred"
strip_delay = 50
put_on_delay = 50
burn_state = -1 //Won't burn in fires
/obj/item/clothing/shoes/winterboots
name = "winter boots"
+7
View File
@@ -8,6 +8,10 @@
MakeHood()
..()
/obj/item/clothing/suit/hooded/Destroy()
qdel(hood)
..()
/obj/item/clothing/suit/hooded/proc/MakeHood()
if(!hood)
var/obj/item/clothing/head/winterhood/W = new hoodtype(src)
@@ -93,6 +97,9 @@
verbs -= /obj/item/clothing/suit/space/hardsuit/verb/Jetpack
verbs -= /obj/item/clothing/suit/space/hardsuit/verb/Jetpack_Rockets
..()
/obj/item/clothing/suit/space/hardsuit/Destroy()
qdel(helmet)
..()
/obj/item/clothing/suit/space/hardsuit/proc/MakeHelmet()
if(!helmettype)
@@ -125,11 +125,12 @@
f_loss += 60
shred_clothing(1,50)
if (prob(getarmor(null, "bomb")))
b_loss = b_loss/1.5
f_loss = f_loss/1.5
shred_clothing(1,25)
else
shred_clothing(1,50)
if (!istype(ears, /obj/item/clothing/ears/earmuffs))
adjustEarDamage(30, 120)
@@ -12,7 +12,7 @@
health = maxHealth - getOxyLoss() - getToxLoss() - getCloneLoss() - total_burn - total_brute
if( ((maxHealth - total_burn) < config.health_threshold_dead) && stat == DEAD )
ChangeToHusk()
if(bodytemperature > FIRE_MINIMUM_TEMPERATURE_TO_EXIST)
if(on_fire)
shred_clothing()
med_hud_set_health()
med_hud_set_status()
@@ -440,6 +440,9 @@
w_uniform.shred(bomb,shock-absorbed,src)
/obj/item/proc/shred(var/bomb,var/shock,var/mob/living/carbon/human/Human)
if(flags & ABSTRACT)
return -1
var/shredded
if(!bomb)
@@ -449,7 +452,7 @@
shredded = -1 //Heat protection = Fireproof
else if(shock > 0)
if(prob(min(90,max(10,shock))))
if(prob(min(90,max(0,shock))))
shredded = armor["bomb"] + 10 //It gets shredded, but it also absorbs the shock the clothes underneath would recieve by this amount
else
shredded = -1 //It survives explosion
@@ -463,8 +466,7 @@
Item.loc = src.loc
spawn(1) //so the shreds aren't instantly deleted by the explosion
var/obj/effect/decal/cleanable/shreds/Shreds = new(loc)
Shreds.name = "shredded [src.name]"
Shreds.desc = "The sad remains of what used to be a glorious [src.name]."
Shreds.desc = "The sad remains of what used to be [src.name]."
qdel(src)
else
burn()