anchor.diff:  	var/credit_cost = INFINITY
   	var/can_be_bought = TRUE
   
  +	var/port_x_offset
  +	var/port_y_offset
   
   /datum/map_template/shuttle/proc/prerequisites_met()
   	return TRUE
  
positive.code: 	shuttle_id = "[port_id]_[suffix]"
  	mappath = "[prefix][shuttle_id].dmm"
  	. = ..()
  
  /datum/map_template/shuttle/load(turf/T, centered, register=TRUE)
  	. = ..()
  
negative.code: 			continue
  		place.baseturfs.Insert(3, /turf/baseturf_skipover/shuttle)
  
  		for(var/obj/docking_port/mobile/port in place)
  			if(register)
  				port.register()
  			if(isnull(port_x_offset))
  				return
  			switch(port.dir) // Yeah this looks a little ugly but mappers had to do this in their head before
  				if(NORTH)
  					port.width = width
  					port.height = height
  					port.dwidth = port_x_offset - 1
  					port.dheight = port_y_offset - 1
  				if(EAST)
  					port.width = height
  					port.height = width
  					port.dwidth = height - port_y_offset
  					port.dheight = port_x_offset - 1
  				if(SOUTH)
  					port.width = width
  					port.height = height
  					port.dwidth = width - port_x_offset
  					port.dheight = height - port_y_offset
  				if(WEST)
  					port.width = height
  					port.height = width
  					port.dwidth = port_y_offset - 1
  					port.dheight = width - port_x_offset
  
  		for(var/obj/structure/closet/closet in place)
  			if(closet.anchorable)
  