 
   getTexture: (group, type, rotation) ->
     unless rotation
-      return @textures[group][type][0] if Renderer.SupportedTextures[group][type]?
-
-    rotationCount = Renderer.SupportedTextures[group][type]
+      return @textures[group][type][0] if Renderer.TextureFileDescription[group][type]?
+
+    rotationCount = Renderer.TextureFileDescription[group][type]
     return null unless rotationCount?
     return @textures[group][type][rotation / 90 % rotationCount]
 
-  drawMap: (force) ->
+  drawMap: (force = no) ->
     return if (@isDrawing or not @map.needsRedraw) and not force
     console.time "draw" if DEBUG
     @isDrawing = yes

  # Relative to the point of origin of the canvas
  renderingCoordinatesForBlock: (x,y,z) ->
    screenX = (x + y) * @settings.blockSizeHalf
    screenY = @settings.canvasHeight - 3 * @settings.blockSizeQuarter - (2 * z + x - y + @map.size) * @settings.blockSizeQuarter

    [screenX, screenY]

  # Returns either 'top', 'south', 'east' or null depending on what side
  # of a block (if any) is displayed at the given coordinates
  sideAtScreenCoordinates: (x, y) ->
    pixel = @hittestContext.getImageData x, y, 1, 1

    if pixel.data[0] > 0
      return 'south'
    else if pixel.data[1] > 0

    'straight':          [0, 180]
    'dive':                 [  0]
    'drop-middle':          [  0]
    'exchange':             [  0]
    'exchange-alt':         [ 90]

  @LowHoles:
    'dive':                 [180]
    'drop-low':             [  0]
    'exchange':             [ 90]
    'exchange-alt':         [  0]
