library TerrainData
	public struct TerrainData
		static constant real HUNTER_SPAWN_X = -1710.
		static constant real HUNTER_SPAWN_Y =  3570.
		static constant real BEAST_SPAWN_X  =  3584.
		static constant real BEAST_SPAWN_Y  = -4240.

		static constant real HALL_MIN_X     = -1820.
		static constant real HALL_MAX_X     = -1290.
		static constant real HALL_MIN_Y     =  3460.
		static constant real HALL_MAX_Y     =  3970.

		static constant real RUNE_1_X       =  3906.
		static constant real RUNE_1_Y       = -1018.
		static constant real RUNE_2_X       =  -327.
		static constant real RUNE_2_Y       = -4093.

		static constant real RUNE_RETURN_X  = -1625.
		static constant real RUNE_RETURN_Y  =  3660.

		static constant real MIN_X          = -5580.
		static constant real MAX_X          =  5390.
		static constant real MIN_Y          = -5620.
		static constant real MAX_Y          =  5270.

		static constant real SAFE_X         = -5030.
		static constant real SAFE_Y         =  5030.

		private static location loc = Location(0., 0.)

		static method distanceBetweenXY takes real x1, real x2, real y1, real y2 returns real
			return SquareRoot((x2-x1)*(x2-x1)+(y2-y1)*(y2-y1))
		end

		static method radiansBetweenXY takes real x1, real x2, real y1, real y2 returns real
			return Atan2(y2 - y1, x2 - x1)
		end

		static method getZ takes real x, real y returns real
			MoveLocation(loc, x, y)
			return GetLocationZ(loc)
		end
	end
endlibrary
