2048.html
changeset 38 d476efde7242
parent 37 fe75d168a605
child 39 a75cc5aa5d19
equal deleted inserted replaced
37:fe75d168a605 38:d476efde7242
   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       }