anchor.diff:  		return
   
   
  -	proc/inject_inap(mob/living/user as mob)
  +	proc/inject_chemical(mob/living/user as mob, chemical, amount)
   		if(src.occupant && src.occupant.reagents)
  -			if(src.occupant.reagents.get_reagent_amount("inaprovaline") + 30 <= 60)
  -				src.occupant.reagents.add_reagent("inaprovaline", 30)
  -			user << text("Occupant now has [] units of Inaprovaline in his/her bloodstream.", src.occupant.reagents.get_reagent_amount("inaprovaline"))
  -		else
  -			user << "There's no occupant in the sleeper or the subject rejects the chemicals!"
  -		return
  -
  -
  -	proc/inject_stox(mob/living/user as mob)
  -		if(src.occupant && src.occupant.reagents)
  -			if(src.occupant.reagents.get_reagent_amount("stoxin") + 20 <= 40)
  -				src.occupant.reagents.add_reagent("stoxin", 20)
  -			user << text("Occupant now has [] units of soporifics in his/her bloodstream.", src.occupant.reagents.get_reagent_amount("stoxin"))
  -		else
  -			user << "There's no occupant in the sleeper or the subject rejects the chemicals!"
  -		return
  -
  -
  -	proc/inject_dermaline(mob/living/user as mob)
  -		if(src.occupant && src.occupant.reagents)
  -			if(src.occupant.reagents.get_reagent_amount("dermaline") + 20 <= 40)
  -				src.occupant.reagents.add_reagent("dermaline", 20)
  -			user << text("Occupant now has [] units of Dermaline in his/her bloodstream.", src.occupant.reagents.get_reagent_amount("dermaline"))
  -		else
  -			user << "There's no occupant in the sleeper or the subject rejects the chemicals!"
  -		return
  -
  -
  -	proc/inject_bicaridine(mob/living/user as mob)
  -		if(src.occupant && src.occupant.reagents)
  -			if(src.occupant.reagents.get_reagent_amount("bicaridine") + 10 <= 20)
  -				src.occupant.reagents.add_reagent("bicaridine", 10)
  -			user << text("Occupant now has [] units of Bicaridine in his/her bloodstream.", src.occupant.reagents.get_reagent_amount("bicaridine"))
  -		else
  -			user << "There's no occupant in the sleeper or the subject rejects the chemicals!"
  -		return
  -
  -
  -	proc/inject_dexalin(mob/living/user as mob)
  -		if(src.occupant && src.occupant.reagents)
  -			if(src.occupant.reagents.get_reagent_amount("dexalin") + 20 <= 40)
  -				src.occupant.reagents.add_reagent("dexalin", 20)
  -			user << text("Occupant now has [] units of Dexalin in his/her bloodstream.", src.occupant.reagents.get_reagent_amount("dexalin"))
  -		else
  -			user << "There's no occupant in the sleeper or the subject rejects the chemicals!"
  +			if(src.occupant.reagents.get_reagent_amount(chemical) + amount <= 40)
  +				src.occupant.reagents.add_reagent(chemical, amount)
  +				user << "Occupant now has [src.occupant.reagents.get_reagent_amount(chemical)] units of [available_chemicals[chemical]] in his/her bloodstream."
  +				return
  +		user << "There's no occupant in the sleeper or the subject rejects the chemicals!"
   		return
   
   
  
positive.code: 				del(O)
  			src.add_fingerprint(usr)
  			return
  		return
  
negative.code: 	anchored = 1
  	var/orient = "LEFT" // "RIGHT" changes the dir suffix to "-r"
  	var/mob/living/occupant = null
  	var/available_chemicals = list("inaprovaline" = "Inaprovaline", "stoxin" = "Soporific", "dermaline" = "Dermaline", "bicaridine" = "Bicaridine", "dexalin" = "Dexalin")
  	var/amounts = list(10, 20)
  
  
  	New()
  