diff --git a/code/ZAS/Phoron.dm b/code/ZAS/Phoron.dm index 8fca936e557..794145cff62 100644 --- a/code/ZAS/Phoron.dm +++ b/code/ZAS/Phoron.dm @@ -40,7 +40,6 @@ var/image/contamination_overlay = image('icons/effects/contamination.dmi') /obj/var/contaminated = 0 - /obj/item/proc/can_contaminate() if(flags & PHORONGUARD) return FALSE diff --git a/code/game/machinery/washing_machine.dm b/code/game/machinery/washing_machine.dm index 9f6c3cb0c85..ec8c29e7962 100644 --- a/code/game/machinery/washing_machine.dm +++ b/code/game/machinery/washing_machine.dm @@ -1,5 +1,6 @@ /obj/machinery/washing_machine - name = "Washing Machine" + name = "washing machine" + desc = "A washing machine with special decontamination procedures. It can fit everything from clothes to even rifles." icon = 'icons/obj/machines/washing_machine.dmi' icon_state = "wm_10" density = 1 @@ -33,11 +34,11 @@ if(!istype(usr, /mob/living)) //ew ew ew usr, but it's the only way to check. return - if( state != 4 ) + if(state != 4) to_chat(usr, "The washing machine cannot run in this state.") return - if( locate(/mob,contents) ) + if(locate(/mob,contents)) state = 8 else state = 5 @@ -98,25 +99,17 @@ state = 3 else return ..() - else if(is_type_in_list(W, list(/obj/item/stack/material/animalhide/barehide, /obj/item/clothing/under, /obj/item/clothing/mask, /obj/item/clothing/head, /obj/item/clothing/gloves, /obj/item/clothing/shoes, /obj/item/clothing/suit, /obj/item/bedsheet))) - - //YES, it's hardcoded... saves a var/can_be_washed for every single clothing item. - if(is_type_in_list(W, list(/obj/item/clothing/suit/space, /obj/item/clothing/suit/syndicatefake, /obj/item/clothing/suit/cyborg_suit, /obj/item/clothing/suit/bomb_suit, /obj/item/clothing/suit/armor, /obj/item/clothing/mask/gas, /obj/item/clothing/mask/smokable/cigarette, /obj/item/clothing/head/syndicatefake, /obj/item/clothing/head/helmet))) - to_chat(user, "This item does not fit.") - return TRUE - + else if(contents.len < 5) - if ( state in list(1, 3) ) + if (state in list(1, 3)) user.drop_from_inventory(W,src) state = 3 else to_chat(user, "You can't put the item in right now.") else to_chat(user, "The washing machine is full.") - else - return ..() update_icon() - return TRUE + return ..() /obj/machinery/washing_machine/attack_hand(mob/user as mob) switch(state) diff --git a/code/modules/mob/living/carbon/human/life.dm b/code/modules/mob/living/carbon/human/life.dm index 4512031835e..c4075803441 100644 --- a/code/modules/mob/living/carbon/human/life.dm +++ b/code/modules/mob/living/carbon/human/life.dm @@ -664,14 +664,16 @@ stamina_recovery *= 1 + 0.3 * chem_effects[CE_SPEEDBOOST] move_delay_mod += -1.5 * chem_effects[CE_SPEEDBOOST] - for(var/obj/item/I in src) - if(I.contaminated && !(species.flags & PHORON_IMMUNE)) - if(I == r_hand) - apply_damage(vsc.plc.CONTAMINATION_LOSS, BURN, BP_R_HAND) - else if(I == l_hand) - apply_damage(vsc.plc.CONTAMINATION_LOSS, BURN, BP_L_HAND) - else - adjustFireLoss(vsc.plc.CONTAMINATION_LOSS) + var/obj/item/clothing/C = wear_suit + if(!(C && (C.body_parts_covered & HANDS) && !(C.heat_protection & HANDS)) && !gloves) + for(var/obj/item/I in src) + if(I.contaminated && !(species.flags & PHORON_IMMUNE)) + if(I == r_hand) + apply_damage(vsc.plc.CONTAMINATION_LOSS, BURN, BP_R_HAND) + else if(I == l_hand) + apply_damage(vsc.plc.CONTAMINATION_LOSS, BURN, BP_L_HAND) + else + adjustFireLoss(vsc.plc.CONTAMINATION_LOSS) if (intoxication) handle_intoxication() diff --git a/html/changelogs/mattatlas-phorontweaks.yml b/html/changelogs/mattatlas-phorontweaks.yml new file mode 100644 index 00000000000..e4aed142a16 --- /dev/null +++ b/html/changelogs/mattatlas-phorontweaks.yml @@ -0,0 +1,42 @@ +################################ +# Example Changelog File +# +# Note: This file, and files beginning with ".", and files that don't end in ".yml" will not be read. If you change this file, you will look really dumb. +# +# Your changelog will be merged with a master changelog. (New stuff added only, and only on the date entry for the day it was merged.) +# When it is, any changes listed below will disappear. +# +# Valid Prefixes: +# bugfix +# wip (For works in progress) +# tweak +# soundadd +# sounddel +# rscadd (general adding of nice things) +# rscdel (general deleting of nice things) +# imageadd +# imagedel +# maptweak +# spellcheck (typo fixes) +# experiment +# balance +# admin +# backend +# security +# refactor +################################# + +# Your name. +author: MattAtlas + +# Optional: Remove this file after generating master changelog. Useful for PR changelogs that won't get used again. +delete-after: True + +# Any changes you've made. See valid prefix list above. +# INDENT WITH TWO SPACES. NOT TABS. SPACES. +# SCREW THIS UP AND IT WON'T WORK. +# Also, all entries are changed into a single [] after a master changelog generation. Just remove the brackets when you add new entries. +# Please surround your changes in double quotes ("), as certain characters otherwise screws up compiling. The quotes will not show up in the changelog. +changes: + - bugfix: "Holding phoron contaminated items no longer hurts you through voidsuits or gloves." + - bugfix: "Washing machines can now wash everything and not just clothes."