anchor.diff:  		note = null
   		update_icon()
   
  +/obj/machinery/door/airlock/proc/unzap() //for addtimer
  +	justzap = FALSE
  +
   /obj/machinery/door/airlock/bumpopen(mob/living/user) //Airlocks now zap you when you 'bump' them open when they're electrified. --NeoFite
   	if(!issilicon(usr))
  -		if(src.isElectrified())
  -			if(!src.justzap)
  -				if(src.shock(user, 100))
  -					src.justzap = TRUE
  -					spawn (10)
  -						justzap = FALSE
  +		if(isElectrified())
  +			if(!justzap)
  +				if(shock(user, 100))
  +					justzap = TRUE
  +					addtimer(CALLBACK(src, .proc/unzap), 10)
   					return
   			else /*if(src.justzap)*/
   				return
  
positive.code: 						shockedby += "\[[time_stamp()]\][usr](ckey:[usr.ckey])"
  						add_logs(usr, src, "electrified")
  						set_electrified(30)
  						spawn(10)
  							while (secondsElectrified > 0)
  								secondsElectrified--
  								if(secondsElectrified <= 0)
  									set_electrified(NOT_ELECTRIFIED)
  								updateUsrDialog()
  								sleep(10)
  				if(6)
  					//electrify door indefinitely
  					if(wires.is_cut(WIRE_SHOCK))
  
negative.code: 		..()
  	return
  
  /obj/machinery/door/airlock/proc/electrified_loop()
  	while (secondsElectrified > 0)
  		secondsElectrified--
  		if(secondsElectrified <= 0)
  			set_electrified(NOT_ELECTRIFIED)
  			updateUsrDialog()
  			sleep(10)
  
  /obj/machinery/door/airlock/Topic(href, href_list, var/nowindow = 0)
  	// If you add an if(..()) check you must first remove the var/nowindow parameter.
  