 
       vars.iRow = vars.iRowStart = vars.numRows - 1
       until vars.iRow < vars.iRowEnd
-        @_setupEachRow vars
+        @_setupEachRow(vars)
 
         if (vars.iRow - vars.numRowsClearance) <= vars.iRowEnd
           # Fill out the last rows after last ledge.
-          @_setupEmptyRow vars
+          @_setupEmptyRow(vars)
 
           if vars.iLedgeLayer > 0
             vars.iLedgeLayer--

        ledge.end = vars.iColEnd
        ledge.facing = vars.prevFacing
        # Transform.
        @_addLedgeDifficulty ledge, vars
        # Save.
        @ledges.push ledge
        # Unpack.
        vars.iColStart = ledge.start
        vars.iColEnd = ledge.end

    constructor: (@config, game, gui) ->
      @minLedgeSize = 3
      @maxLedgeSize = 5
      @minLedgeSpacing = new Point(4, 2)
      @maxLedgeSpacing = new Point(8, 4)
      @ledgeThickness = 2
      @tileWidth = @tileHeight = 32
      @ledges = []
      @tiles = []

      @_initialize(game, gui)

    _initialize: (game, gui) ->
      @game = game # FIXME: Not great, but easy.

      @_initDebugging(gui)

      @makeMap(game)
      return

    _initDebugging: (gui) ->
      @debugNamespace = 'platforms'

      {@debugging} = defines
      completedInit = @_initDebugMixin(gui)
      return unless completedInit

    destroy: ->
