score = 0
board = new Array(board_tiles) # letters ("Qu" or single letter)
board_neighbors = [] # array of tile numbers "next to" this one
-board_top_px = [] # array of pixel coordinates for top of column
+tile_top_px = [] # array of pixel coordinates for top of column
board_left_px = [] # array of pixel coordinates for left of column
board_aboves = [] # array of tile numbers above, starting from top
board_below = [] # tile number of next tile below or false
is_bottom_tile = i is board_col_heights[col_num] - 1
# link tile number to pixel "top" and "left" of containing column
- board_top_px.push col_top_px
+ tile_top_px.push col_top_px + i * tile_width
board_left_px.push col_num * tile_width
# aboves (array of tile numbers above, starting from top)
word += board[i] for i in selected
return word.toLowerCase()
-html_slide = (num, dist) ->
- if dist
- cur = html_tiles[num].css 'top'
- cur = Number(cur.substr(0, cur.length - 2))
- dest = cur + (dist * tile_width)
- html_tiles[num].animate {top: "#{dest}px"}, slide_ms
+html_slide = (num) ->
+ html_tiles[num].animate {top: "#{tile_top_px[num]}px"}, slide_ms
save_game = ->
encoded = ''
if cur_top is undefined
cur_top = fader
if top_tile isnt cur_top
- new_px = board_top_px[fader] - tile_width
+ new_px = -20 - tile_width
new_slide = 1
top_tile = cur_top
html_tiles[fader].remove()
new_tile top_tile, board_left_px[top_tile], new_px
slides[top_tile] = new_slide
new_px -= tile_width
+ new_px -= 50
new_slide += 1
for i in [0 .. board.length - 1]
- html_slide i, slides[i]
- slides[i] = 0
+ if slides[i]
+ html_slide i
save_game()
update_selection_display()