anchor.diff:  				new /obj/effect/decal/cleanable/blood/old(src)
   		return
   
  -
  -	if(istype(A, /area/crew_quarters/kitchen) || istype(A, /area/crew_quarters/cafeteria))	//Kitchen messes
  +		//Kitchen areas. Broken eggs, flour, spilled milk (no crying allowed.)
  +	var/static/list/kitchen_dirt_areas = typecacheof(list(/area/crew_quarters/kitchen,
  +														/area/crew_quarters/cafeteria))
  +	if(is_type_in_typecache(A, kitchen_dirt_areas))
   		if(prob(60))
   			if(prob(50))
   				new /obj/effect/decal/cleanable/egg_smudge(src)
  
positive.code: 
  	//The code below here isn't exactly optimal, but because of the individual decals that each area uses it's still applicable.
  
  				//high dirt - 1/3
  	if(istype(A, /area/science/test_area) || istype(A, /area/mine/production) || istype(A, /area/mine/living_quarters) || istype(A, /area/mine/north_outpost) || istype(A, /area/mine/west_outpost) || istype(A, /area/ruin/space))
  		new /obj/effect/decal/cleanable/dirt(src)	//vanilla, but it works
  		return
  
  	if(prob(80))	//mid dirt  - 1/15
  		return
  
  	if(istype(A, /area/engine)  || istype(A, /area/crew_quarters/heads/chief) || istype(A, /area/ruin/space/derelict/assembly_line) || istype(A, /area/science/robotics) || istype(A, /area/maintenance) || istype(A, /area/construction))
  	 	//Blood, sweat, and oil.  Oh, and dirt.
  		if(prob(3))
  			new /obj/effect/decal/cleanable/blood/old(src)
  		else
  
negative.code: 				new /obj/effect/decal/cleanable/dirt(src)
  		return
  
  		//Bathrooms. Blood, vomit, and shavings in the sinks.
  	var/static/list/bathroom_dirt_areas = typecacheof(list(	/area/crew_quarters/toilet,
  															/area/awaymission/research/interior/bathroom))
  	if(is_type_in_typecache(A, bathroom_dirt_areas))
  		if(prob(40))
  			if(prob(90))
  				new /obj/effect/decal/cleanable/vomit/old(src)
  