-
Notifications
You must be signed in to change notification settings - Fork 2
/
game.js
1 lines (1 loc) · 3.38 KB
/
game.js
1
!function(r){var o={};function n(t){if(o[t])return o[t].exports;var e=o[t]={i:t,l:!1,exports:{}};return r[t].call(e.exports,e,e.exports,n),e.l=!0,e.exports}n.m=r,n.c=o,n.d=function(r,o,t){n.o(r,o)||Object.defineProperty(r,o,{enumerable:!0,get:t})},n.r=function(r){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(r,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(r,"__esModule",{value:!0})},n.t=function(r,o){if(1&o&&(r=n(r)),8&o)return r;if(4&o&&"object"==typeof r&&r&&r.__esModule)return r;var t=Object.create(null);if(n.r(t),Object.defineProperty(t,"default",{enumerable:!0,value:r}),2&o&&"string"!=typeof r)for(var e in r)n.d(t,e,function(o){return r[o]}.bind(null,e));return t},n.n=function(r){var o=r&&r.__esModule?function(){return r.default}:function(){return r};return n.d(o,"a",o),o},n.o=function(r,o){return Object.prototype.hasOwnProperty.call(r,o)},n.p="",n(n.s=0)}([function(r,o,n){"use strict";n.r(o);n(1)},function(r,o,n){(function(r){var o=function(r){return r[0].map((function(o,n){return r.map((function(r){return r[n]}))}))},n=function(r){return o(r.reverse())},t=function(r){return o(r).reverse()};r.getNewGameObj=function(){return{board:[["","","",""],["","","",""],["","","",""],["","","",""]],addNewNum:function(){var r=[];this.board.forEach((function(o,n){o.forEach((function(o,t){""==o&&r.push([n,t])}))}));var o=r[Math.floor(Math.random()*r.length)],n=Math.random()<.9?2:4;this.board[o[0]][o[1]]=n},move:function(r){var o=this;switch(r){case"left":o.board.forEach((function(r,n){var t=[];r.forEach((function(r){""!=r&&t.push(r)})),t.forEach((function(r,o){r==t[o+1]&&""!=r&&(t[o]=2*r,t[o+1]="")}));var e=[];t.forEach((function(r){""!=r&&e.push(r)})),o.board[n].forEach((function(r,t){e[t]?o.board[n][t]=e[t]:o.board[n][t]=""}))}));break;case"right":o.board.forEach((function(r,n){var t=[];r.forEach((function(r){""!=r&&t.push(r)})),t.reverse(),t.forEach((function(r,o){r==t[o+1]&&""!=r&&(t[o]=2*r,t[o+1]="")}));var e=[];t.forEach((function(r){""!=r&&e.push(r)})),o.board[n].forEach((function(r,t){e[t]?o.board[n][t]=e[t]:o.board[n][t]=""})),o.board[n].reverse()}));break;case"up":o.board=n(o.board),o.board.forEach((function(r,n){var t=[];r.forEach((function(r){""!=r&&t.push(r)})),t.reverse(),t.forEach((function(r,o){r==t[o+1]&&""!=r&&(t[o]=2*r,t[o+1]="")}));var e=[];t.forEach((function(r){""!=r&&e.push(r)})),o.board[n].forEach((function(r,t){e[t]?o.board[n][t]=e[t]:o.board[n][t]=""})),o.board[n].reverse()})),o.board=t(o.board);break;case"down":o.board=n(o.board),o.board.forEach((function(r,n){var t=[];r.forEach((function(r){""!=r&&t.push(r)})),t.forEach((function(r,o){r==t[o+1]&&""!=r&&(t[o]=2*r,t[o+1]="")}));var e=[];t.forEach((function(r){""!=r&&e.push(r)})),o.board[n].forEach((function(r,t){e[t]?o.board[n][t]=e[t]:o.board[n][t]=""}))})),o.board=t(o.board)}},check_gameover:function(){for(var r=0;r<this.board.length;r++)for(var o=this.board[r],n=0;n<o.length;n++){var t=o[n];if(""==t)return!1;if(n+1<o.length&&o[n+1]==t)return!1;if(r+1<this.board.length&&this.board[r+1][n]==t)return!1}return!0},main_move:function(r){var o=this.board.join(",");this.move(r),this.board.join(",")!=o&&this.addNewNum()},getScore:function(){var r=0;return this.board.forEach((function(o){o.forEach((function(o){""!=o&&(r+=o)}))})),r}}}}).call(this,n(2))},function(r,o){var n;n=function(){return this}();try{n=n||new Function("return this")()}catch(r){"object"==typeof window&&(n=window)}r.exports=n}]);