Daedalus Dock - Modules - Types

code/__HELPERS/turfs.dm

/proc/get_teleport_locReturns location. Returns null if no location was found.
/proc/get_atom_on_turfReturns the top-most atom sitting on the turf. For example, using this on a disk, which is in a bag, on a mob, will return the mob because it's on the turf.
/proc/get_edge_target_turfReturns the turf located at the map edge in the specified direction relative to target_atom used for mass driver
/proc/get_ranged_target_turf_directGet ranged target turf, but with direct targets as opposed to directions
/proc/get_offset_target_turfreturns turf relative to target_atom offset in dx and dy tiles, bound to map limits
/proc/get_random_perimeter_turfreturns a turf at the outer edge of a given radius
/proc/get_turf_pixelLets the turf this atom's ICON appears to inhabit it takes into account: Pixel_x/y Matrix x/y NOTE: if your atom has non-standard bounds then this proc will handle it, but: if the bounds are even, then there are an even amount of "middle" turfs, the one to the EAST, NORTH, or BOTH is picked this may seem bad, but you're atleast as close to the center of the atom as possible, better than byond's default loc being all the way off) if the bounds are odd, the true middle turf of the atom is returned
/proc/parse_caught_click_modifiersReturns a turf based on text inputs, original turf and viewing client
/proc/spiral_range_turfssimilar function to RANGE_TURFS(), but will search spiralling outwards from the center (like the above, but only turfs)
/proc/get_random_station_turfReturns a random turf on the station
/proc/get_safe_random_station_turfReturns a random turf on the station, excludes dense turfs (like walls) and areas that have valid_territory set to FALSE
/proc/valid_window_locationChecks whether the target turf is in a valid state to accept a directional window or other directional pseudo-dense object such as railings.