diff --git a/code/modules/food_and_drinks/kitchen_machinery/deep_fryer.dm b/code/modules/food_and_drinks/kitchen_machinery/deep_fryer.dm index aef436e1e9b..ff55a183a4a 100644 --- a/code/modules/food_and_drinks/kitchen_machinery/deep_fryer.dm +++ b/code/modules/food_and_drinks/kitchen_machinery/deep_fryer.dm @@ -2,6 +2,14 @@ #define DEEPFRYER_COOKTIME 60 #define DEEPFRYER_BURNTIME 120 +GLOBAL_LIST_INIT(oilfry_blacklisted_items, typecacheof(list( + /obj/item/reagent_containers/glass, + /obj/item/reagent_containers/syringe, + /obj/item/reagent_containers/food/condiment, + /obj/item/storage, + /obj/item/small_delivery, + /obj/item/his_grace))) + /obj/machinery/deepfryer name = "deep fryer" desc = "Deep fried everything." @@ -18,20 +26,14 @@ var/fry_speed = 1 //How quickly we fry food var/frying_fried //If the object has been fried; used for messages var/frying_burnt //If the object has been burnt - var/static/list/deepfry_blacklisted_items = typecacheof(list( - /obj/item/screwdriver, - /obj/item/crowbar, - /obj/item/wrench, - /obj/item/wirecutters, - /obj/item/multitool, - /obj/item/weldingtool, - /obj/item/reagent_containers/glass, - /obj/item/reagent_containers/syringe, - /obj/item/reagent_containers/food/condiment, - /obj/item/storage, - /obj/item/small_delivery, - /obj/item/his_grace)) var/datum/looping_sound/deep_fryer/fry_loop + var/static/list/deepfry_blacklisted_items = typecacheof(list( + /obj/item/screwdriver, + /obj/item/crowbar, + /obj/item/wrench, + /obj/item/wirecutters, + /obj/item/multitool, + /obj/item/weldingtool)) /obj/machinery/deepfryer/Initialize() . = ..() @@ -76,7 +78,7 @@ else if(default_deconstruction_screwdriver(user, "fryer_off", "fryer_off" ,I)) //where's the open maint panel icon?! return else - if(is_type_in_typecache(I, deepfry_blacklisted_items) || HAS_TRAIT(I, TRAIT_NODROP) || (I.item_flags & (ABSTRACT | DROPDEL))) + if(is_type_in_typecache(I, deepfry_blacklisted_items) || is_type_in_typecache(I, GLOB.oilfry_blacklisted_items) || HAS_TRAIT(I, TRAIT_NODROP) || (I.item_flags & (ABSTRACT | DROPDEL))) return ..() else if(!frying && user.transferItemToLoc(I, src)) to_chat(user, "You put [I] into [src].") diff --git a/code/modules/reagents/chemistry/reagents/food_reagents.dm b/code/modules/reagents/chemistry/reagents/food_reagents.dm index f3a3a2b82be..737b8a4cd37 100755 --- a/code/modules/reagents/chemistry/reagents/food_reagents.dm +++ b/code/modules/reagents/chemistry/reagents/food_reagents.dm @@ -134,6 +134,9 @@ return if(!isitem(exposed_obj) || istype(exposed_obj, /obj/item/food/deepfryholder)) return + if(is_type_in_typecache(exposed_obj, GLOB.oilfry_blacklisted_items) || (exposed_obj.resistance_flags & INDESTRUCTIBLE)) + exposed_obj.loc.visible_message("The hot oil has no effect on [exposed_obj]!") + return exposed_obj.loc.visible_message("[exposed_obj] rapidly fries as it's splashed with hot oil! Somehow.") var/obj/item/food/deepfryholder/fry_target = new(exposed_obj.drop_location(), exposed_obj) fry_target.fry(volume)