From c1a76d63d1cd034badc1fd8616055ed98129df8f Mon Sep 17 00:00:00 2001 From: "n3ophyt3@gmail.com" Date: Mon, 21 Mar 2011 23:58:59 +0000 Subject: [PATCH] Helps if I add the code where a flipped-up weldingmask actually fails to protect your eyes from shit. git-svn-id: http://tgstation13.googlecode.com/svn/trunk@1228 316c924e-a436-60f5-8080-3fe189b3f50e --- code/game/objects/devices/flash.dm | 10 ++++++++-- code/game/objects/items/weapons/grenades.dm | 17 +++++++++++++++-- code/game/objects/items/weapons/tools.dm | 6 +++++- 3 files changed, 28 insertions(+), 5 deletions(-) diff --git a/code/game/objects/devices/flash.dm b/code/game/objects/devices/flash.dm index c75221b1959..181f1d3c454 100644 --- a/code/game/objects/devices/flash.dm +++ b/code/game/objects/devices/flash.dm @@ -8,8 +8,11 @@ var/safety = null if (istype(M, /mob/living/carbon/human)) var/mob/living/carbon/human/H = M - if (istype(H.glasses, /obj/item/clothing/glasses/sunglasses) || istype(H.head, /obj/item/clothing/head/helmet/welding)) + if (istype(H.glasses, /obj/item/clothing/glasses/sunglasses)) safety = 1 + if (istype(H.head, /obj/item/clothing/head/helmet/welding)) + if(!H.head:up) + safety = 1 if (istype(M, /mob/living/carbon/alien))//So aliens don't get flashed (they have no external eyes)/N safety = 1 if(isrobot(user)) @@ -102,8 +105,11 @@ var/safety = null if (istype(M, /mob/living/carbon/human)) var/mob/living/carbon/human/H = M - if (istype(H.glasses, /obj/item/clothing/glasses/sunglasses) || istype(H.head, /obj/item/clothing/head/helmet/welding)) + if (istype(H.glasses, /obj/item/clothing/glasses/sunglasses)) safety = 1 + if (istype(H.head, /obj/item/clothing/head/helmet/welding)) + if(!H.head:up) + safety = 1 if (istype(M, /mob/living/carbon/alien))//So aliens don't see those annoying flash screens. safety = 1 if (!( safety )) diff --git a/code/game/objects/items/weapons/grenades.dm b/code/game/objects/items/weapons/grenades.dm index 90f43ca5c9b..25520451976 100644 --- a/code/game/objects/items/weapons/grenades.dm +++ b/code/game/objects/items/weapons/grenades.dm @@ -143,7 +143,14 @@ FLASHBANG M.ear_deaf += 10 if (prob(20)) M.ear_damage += rand(0, 4) - if ((!( istype(H.glasses, /obj/item/clothing/glasses/sunglasses) || istype(H.head, /obj/item/clothing/head/helmet/welding) ) || M.paralysis)) + var/safe = 0 + if (istype(H.glasses, /obj/item/clothing/glasses/sunglasses)) + safe = 1 + if (istype(H.head, /obj/item/clothing/head/helmet/welding)) + if(!H.head:up) + safe = 1 + + if(!safe) if(!(M.mutations & 8)) M.stunned = 7 if(!(M.mutations & 8)) M.weakened = 2 else @@ -155,7 +162,13 @@ FLASHBANG flick("flash", M.flash) else var/mob/living/carbon/human/H = M - if (!( istype(H.glasses, /obj/item/clothing/glasses/sunglasses) || istype(H.head, /obj/item/clothing/head/helmet/welding) ) ) + var/safe = 0 + if (istype(H.glasses, /obj/item/clothing/glasses/sunglasses)) + safe = 1 + if (istype(H.head, /obj/item/clothing/head/helmet/welding)) + if(!H.head:up) + safe = 1 + if(!safe) flick("flash", M.flash) M.eye_stat += rand(1, 2) M.ear_deaf += 5 diff --git a/code/game/objects/items/weapons/tools.dm b/code/game/objects/items/weapons/tools.dm index a002d5153d0..989df9a8f44 100644 --- a/code/game/objects/items/weapons/tools.dm +++ b/code/game/objects/items/weapons/tools.dm @@ -260,10 +260,14 @@ WELDINGTOOOL return 1 var/safety = 0 if (istype(user, /mob/living/carbon/human)) - if (istype(user:head, /obj/item/clothing/head/helmet/welding) || istype(user:head, /obj/item/clothing/head/helmet/space)) + if (istype(user:head, /obj/item/clothing/head/helmet/welding)) + if (!user:head:up) + safety = 2 + else if (istype(user:head, /obj/item/clothing/head/helmet/space)) safety = 2 else if (istype(user:glasses, /obj/item/clothing/glasses/sunglasses)) safety = 1 + else if (istype(user:glasses, /obj/item/clothing/glasses/thermal)) safety = -1 else