equal
deleted
inserted
replaced
130 </table> |
130 </table> |
131 |
131 |
132 <div id="control-area" class="area"> |
132 <div id="control-area" class="area"> |
133 <div> |
133 <div> |
134 <button id="start">Start</button> |
134 <button id="start">Start</button> |
|
135 <span><input type="checkbox" id="2048" checked> 2048</span> |
135 </div> |
136 </div> |
136 <div class="ai-control"> |
137 <div class="ai-control"> |
137 <button id="suggest">Suggest</button> |
138 <button id="suggest">Suggest</button> |
138 <button id="step">Step</button> |
139 <button id="step">Step</button> |
139 <button id="finish">Finish</button> |
140 <button id="finish">Finish</button> |
230 "use strict"; |
231 "use strict"; |
231 |
232 |
232 var boardDom = document.getElementById("board"); |
233 var boardDom = document.getElementById("board"); |
233 var ui = {}; |
234 var ui = {}; |
234 ui.board = {}; |
235 ui.board = {}; |
|
236 ui.board.val2048Dom = document.getElementById('2048'); |
|
237 ui.board.val2048Dom.addEventListener("click", function(event) { |
|
238 ui.board.update(board.current); |
|
239 event.target.blur(); |
|
240 }); |
|
241 ui.board.val2048 = function(val) { |
|
242 if (ui.board.val2048Dom.checked) |
|
243 return Math.pow(2, val); |
|
244 return val; |
|
245 } |
235 /* 'val' typesafe. */ |
246 /* 'val' typesafe. */ |
236 ui.board.set = function(i, j, val) { |
247 ui.board.set = function(i, j, val) { |
237 if (typeof val !== 'number') |
248 if (typeof val !== 'number') |
238 val = 0; |
249 val = 0; |
239 var dom = boardDom.querySelectorAll("tr")[i].querySelectorAll("td")[j]; |
250 var dom = boardDom.querySelectorAll("tr")[i].querySelectorAll("td")[j]; |
240 if (0 < val && val < 15) { |
251 if (0 < val && val < 15) { |
241 dom.innerHTML = val; |
252 dom.innerHTML = ui.board.val2048(val); |
242 var rgb = 'rgb(255,'+ (255-5*val-2*(val%2)) +','+ (255-10*val-5*((val-1)%2)) +')'; |
253 var rgb = 'rgb(255,'+ (255-5*val-2*(val%2)) +','+ (255-10*val-5*((val-1)%2)) +')'; |
243 } else { |
254 } else { |
244 dom.innerHTML = ''; |
255 dom.innerHTML = ''; |
245 var rgb = 'white'; |
256 var rgb = 'white'; |
246 } |
257 } |