From 7bc2732154c51c89b3f8a27f468b3a8a40d26cbe Mon Sep 17 00:00:00 2001
From: Limyoungsu <lys7120@ajou.ac.kr>
Date: Wed, 14 Nov 2018 21:38:47 +0900
Subject: [PATCH] first commit for tetris!

---
 team/tetris/LICENSE     |  20 ++
 team/tetris/README.md   |  28 +++
 team/tetris/index.html  | 449 ++++++++++++++++++++++++++++++++++++++++
 team/tetris/stats.js    |  10 +
 team/tetris/texture.jpg | Bin 0 -> 44996 bytes
 5 files changed, 507 insertions(+)
 create mode 100644 team/tetris/LICENSE
 create mode 100644 team/tetris/README.md
 create mode 100644 team/tetris/index.html
 create mode 100644 team/tetris/stats.js
 create mode 100644 team/tetris/texture.jpg

diff --git a/team/tetris/LICENSE b/team/tetris/LICENSE
new file mode 100644
index 0000000..7d4b906
--- /dev/null
+++ b/team/tetris/LICENSE
@@ -0,0 +1,20 @@
+Copyright (c) 2011, 2012, 2013, 2014, 2015, 2016 Jake Gordon and contributors
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
+
diff --git a/team/tetris/README.md b/team/tetris/README.md
new file mode 100644
index 0000000..9b2720e
--- /dev/null
+++ b/team/tetris/README.md
@@ -0,0 +1,28 @@
+Javascript Tetris
+=================
+
+An HTML5 Tetris Game
+
+ * [play the game](http://codeincomplete.com/projects/tetris/)
+ * read a [blog article](http://codeincomplete.com/posts/2011/10/10/javascript_tetris/)
+ * view the [source](https://github.com/jakesgordon/javascript-tetris)
+
+>> _*SUPPORTED BROWSERS*: Chrome, Firefox, Safari, Opera and IE9+_
+
+FUTURE
+======
+
+ * menu
+ * animation and fx
+ * levels
+ * high scores
+ * touch support
+ * music and sound fx
+
+
+License
+=======
+
+[MIT](http://en.wikipedia.org/wiki/MIT_License) license.
+
+
diff --git a/team/tetris/index.html b/team/tetris/index.html
new file mode 100644
index 0000000..37d4af0
--- /dev/null
+++ b/team/tetris/index.html
@@ -0,0 +1,449 @@
+<!DOCTYPE html>
+<html>
+<head>
+  <title>Javascript Tetris</title>
+  <style>
+    body      { font-family: Helvetica, sans-serif; }
+    #tetris   { margin: 1em auto; padding: 1em; border: 4px solid black; border-radius: 10px; background-color: #F8F8F8; }
+    #stats    { display: inline-block; vertical-align: top; }
+    #canvas   { display: inline-block; vertical-align: top; background: url(texture.jpg); box-shadow: 10px 10px 10px #999; border: 2px solid #333; }
+    #menu     { display: inline-block; vertical-align: top; position: relative; }
+    #menu p   { margin: 0.5em 0; text-align: center; }
+    #menu p a { text-decoration: none; color: black; }
+    #upcoming { display: block; margin: 0 auto; background-color: #E0E0E0; }
+    #score    { color: red; font-weight: bold; vertical-align: middle; }
+    #rows     { color: blue; font-weight: bold; vertical-align: middle; }
+    #stats    { position: absolute; bottom: 0em; right: 1em; }
+    @media screen and (min-width:   0px) and (min-height:   0px)  { #tetris { font-size: 0.75em; width: 250px; } #menu { width: 100px; height: 200px; } #upcoming { width:  50px; height:  50px; } #canvas { width: 100px; height: 200px; } } /* 10px chunks */
+    @media screen and (min-width: 400px) and (min-height: 400px)  { #tetris { font-size: 1.00em; width: 350px; } #menu { width: 150px; height: 300px; } #upcoming { width:  75px; height:  75px; } #canvas { width: 150px; height: 300px; } } /* 15px chunks */
+    @media screen and (min-width: 500px) and (min-height: 500px)  { #tetris { font-size: 1.25em; width: 450px; } #menu { width: 200px; height: 400px; } #upcoming { width: 100px; height: 100px; } #canvas { width: 200px; height: 400px; } } /* 20px chunks */
+    @media screen and (min-width: 600px) and (min-height: 600px)  { #tetris { font-size: 1.50em; width: 550px; } #menu { width: 250px; height: 500px; } #upcoming { width: 125px; height: 125px; } #canvas { width: 250px; height: 500px; } } /* 25px chunks */
+    @media screen and (min-width: 700px) and (min-height: 700px)  { #tetris { font-size: 1.75em; width: 650px; } #menu { width: 300px; height: 600px; } #upcoming { width: 150px; height: 150px; } #canvas { width: 300px; height: 600px; } } /* 30px chunks */
+    @media screen and (min-width: 800px) and (min-height: 800px)  { #tetris { font-size: 2.00em; width: 750px; } #menu { width: 350px; height: 700px; } #upcoming { width: 175px; height: 175px; } #canvas { width: 350px; height: 700px; } } /* 35px chunks */
+    @media screen and (min-width: 900px) and (min-height: 900px)  { #tetris { font-size: 2.25em; width: 850px; } #menu { width: 400px; height: 800px; } #upcoming { width: 200px; height: 200px; } #canvas { width: 400px; height: 800px; } } /* 40px chunks */
+  </style>
+</head>
+
+<body>
+
+  <div id="tetris">
+    <div id="menu">
+      <p id="start"><a href="javascript:play();">Press Space to Play.</a></p>
+      <p><canvas id="upcoming"></canvas></p>
+      <p>score <span id="score">00000</span></p>
+      <p>rows <span id="rows">0</span></p>
+    </div>
+    <canvas id="canvas">
+      Sorry, this example cannot be run because your browser does not support the &lt;canvas&gt; element
+    </canvas>
+  </div>
+
+  <script src="stats.js"></script>
+  <script>
+
+    //-------------------------------------------------------------------------
+    // base helper methods
+    //-------------------------------------------------------------------------
+
+    function get(id)        { return document.getElementById(id);  }
+    function hide(id)       { get(id).style.visibility = 'hidden'; }
+    function show(id)       { get(id).style.visibility = null;     }
+    function html(id, html) { get(id).innerHTML = html;            }
+
+    function timestamp()           { return new Date().getTime();                             }
+    function random(min, max)      { return (min + (Math.random() * (max - min)));            }
+    function randomChoice(choices) { return choices[Math.round(random(0, choices.length-1))]; }
+
+    if (!window.requestAnimationFrame) { // http://paulirish.com/2011/requestanimationframe-for-smart-animating/
+      window.requestAnimationFrame = window.webkitRequestAnimationFrame ||
+                                     window.mozRequestAnimationFrame    ||
+                                     window.oRequestAnimationFrame      ||
+                                     window.msRequestAnimationFrame     ||
+                                     function(callback, element) {
+                                       window.setTimeout(callback, 1000 / 60);
+                                     }
+    }
+
+    //-------------------------------------------------------------------------
+    // game constants
+    //-------------------------------------------------------------------------
+
+    var KEY     = { ESC: 27, SPACE: 32, LEFT: 37, UP: 38, RIGHT: 39, DOWN: 40 },
+        DIR     = { UP: 0, RIGHT: 1, DOWN: 2, LEFT: 3, MIN: 0, MAX: 3 },
+        stats   = new Stats(),
+        canvas  = get('canvas'),
+        ctx     = canvas.getContext('2d'),
+        ucanvas = get('upcoming'),
+        uctx    = ucanvas.getContext('2d'),
+        speed   = { start: 0.6, decrement: 0.005, min: 0.1 }, // how long before piece drops by 1 row (seconds)
+        nx      = 10, // width of tetris court (in blocks)
+        ny      = 20, // height of tetris court (in blocks)
+        nu      = 5;  // width/height of upcoming preview (in blocks)
+
+    //-------------------------------------------------------------------------
+    // game variables (initialized during reset)
+    //-------------------------------------------------------------------------
+
+    var dx, dy,        // pixel size of a single tetris block
+        blocks,        // 2 dimensional array (nx*ny) representing tetris court - either empty block or occupied by a 'piece'
+        actions,       // queue of user actions (inputs)
+        playing,       // true|false - game is in progress
+        dt,            // time since starting this game
+        current,       // the current piece
+        next,          // the next piece
+        score,         // the current score
+        vscore,        // the currently displayed score (it catches up to score in small chunks - like a spinning slot machine)
+        rows,          // number of completed rows in the current game
+        step;          // how long before current piece drops by 1 row
+
+    //-------------------------------------------------------------------------
+    // tetris pieces
+    //
+    // blocks: each element represents a rotation of the piece (0, 90, 180, 270)
+    //         each element is a 16 bit integer where the 16 bits represent
+    //         a 4x4 set of blocks, e.g. j.blocks[0] = 0x44C0
+    //
+    //             0100 = 0x4 << 3 = 0x4000
+    //             0100 = 0x4 << 2 = 0x0400
+    //             1100 = 0xC << 1 = 0x00C0
+    //             0000 = 0x0 << 0 = 0x0000
+    //                               ------
+    //                               0x44C0
+    //
+    //-------------------------------------------------------------------------
+
+    var i = { size: 4, blocks: [0x0F00, 0x2222, 0x00F0, 0x4444], color: 'cyan'   };
+    var j = { size: 3, blocks: [0x44C0, 0x8E00, 0x6440, 0x0E20], color: 'blue'   };
+    var l = { size: 3, blocks: [0x4460, 0x0E80, 0xC440, 0x2E00], color: 'orange' };
+    var o = { size: 2, blocks: [0xCC00, 0xCC00, 0xCC00, 0xCC00], color: 'yellow' };
+    var s = { size: 3, blocks: [0x06C0, 0x8C40, 0x6C00, 0x4620], color: 'green'  };
+    var t = { size: 3, blocks: [0x0E40, 0x4C40, 0x4E00, 0x4640], color: 'purple' };
+    var z = { size: 3, blocks: [0x0C60, 0x4C80, 0xC600, 0x2640], color: 'red'    };
+
+    //------------------------------------------------
+    // do the bit manipulation and iterate through each
+    // occupied block (x,y) for a given piece
+    //------------------------------------------------
+    function eachblock(type, x, y, dir, fn) {
+      var bit, result, row = 0, col = 0, blocks = type.blocks[dir];
+      for(bit = 0x8000 ; bit > 0 ; bit = bit >> 1) {
+        if (blocks & bit) {
+          fn(x + col, y + row);
+        }
+        if (++col === 4) {
+          col = 0;
+          ++row;
+        }
+      }
+    }
+
+    //-----------------------------------------------------
+    // check if a piece can fit into a position in the grid
+    //-----------------------------------------------------
+    function occupied(type, x, y, dir) {
+      var result = false
+      eachblock(type, x, y, dir, function(x, y) {
+        if ((x < 0) || (x >= nx) || (y < 0) || (y >= ny) || getBlock(x,y))
+          result = true;
+      });
+      return result;
+    }
+
+    function unoccupied(type, x, y, dir) {
+      return !occupied(type, x, y, dir);
+    }
+
+    //-----------------------------------------
+    // start with 4 instances of each piece and
+    // pick randomly until the 'bag is empty'
+    //-----------------------------------------
+    var pieces = [];
+    function randomPiece() {
+      if (pieces.length == 0)
+        pieces = [i,i,i,i,j,j,j,j,l,l,l,l,o,o,o,o,s,s,s,s,t,t,t,t,z,z,z,z];
+      var type = pieces.splice(random(0, pieces.length-1), 1)[0];
+      return { type: type, dir: DIR.UP, x: Math.round(random(0, nx - type.size)), y: 0 };
+    }
+
+
+    //-------------------------------------------------------------------------
+    // GAME LOOP
+    //-------------------------------------------------------------------------
+
+    function run() {
+
+      showStats(); // initialize FPS counter
+      addEvents(); // attach keydown and resize events
+
+      var last = now = timestamp();
+      function frame() {
+        now = timestamp();
+        update(Math.min(1, (now - last) / 1000.0)); // using requestAnimationFrame have to be able to handle large delta's caused when it 'hibernates' in a background or non-visible tab
+        draw();
+        stats.update();
+        last = now;
+        requestAnimationFrame(frame, canvas);
+      }
+
+      resize(); // setup all our sizing information
+      reset();  // reset the per-game variables
+      frame();  // start the first frame
+
+    }
+
+    function showStats() {
+      stats.domElement.id = 'stats';
+      get('menu').appendChild(stats.domElement);
+    }
+
+    function addEvents() {
+      document.addEventListener('keydown', keydown, false);
+      window.addEventListener('resize', resize, false);
+    }
+
+    function resize(event) {
+      canvas.width   = canvas.clientWidth;  // set canvas logical size equal to its physical size
+      canvas.height  = canvas.clientHeight; // (ditto)
+      ucanvas.width  = ucanvas.clientWidth;
+      ucanvas.height = ucanvas.clientHeight;
+      dx = canvas.width  / nx; // pixel size of a single tetris block
+      dy = canvas.height / ny; // (ditto)
+      invalidate();
+      invalidateNext();
+    }
+
+    function keydown(ev) {
+      var handled = false;
+      if (playing) {
+        switch(ev.keyCode) {
+          case KEY.LEFT:   actions.push(DIR.LEFT);  handled = true; break;
+          case KEY.RIGHT:  actions.push(DIR.RIGHT); handled = true; break;
+          case KEY.UP:     actions.push(DIR.UP);    handled = true; break;
+          case KEY.DOWN:   actions.push(DIR.DOWN);  handled = true; break;
+          case KEY.ESC:    lose();                  handled = true; break;
+        }
+      }
+      else if (ev.keyCode == KEY.SPACE) {
+        play();
+        handled = true;
+      }
+      if (handled)
+        ev.preventDefault(); // prevent arrow keys from scrolling the page (supported in IE9+ and all other browsers)
+    }
+
+    //-------------------------------------------------------------------------
+    // GAME LOGIC
+    //-------------------------------------------------------------------------
+
+    function play() { hide('start'); reset();          playing = true;  }
+    function lose() { show('start'); setVisualScore(); playing = false; }
+
+    function setVisualScore(n)      { vscore = n || score; invalidateScore(); }
+    function setScore(n)            { score = n; setVisualScore(n);  }
+    function addScore(n)            { score = score + n;   }
+    function clearScore()           { setScore(0); }
+    function clearRows()            { setRows(0); }
+    function setRows(n)             { rows = n; step = Math.max(speed.min, speed.start - (speed.decrement*rows)); invalidateRows(); }
+    function addRows(n)             { setRows(rows + n); }
+    function getBlock(x,y)          { return (blocks && blocks[x] ? blocks[x][y] : null); }
+    function setBlock(x,y,type)     { blocks[x] = blocks[x] || []; blocks[x][y] = type; invalidate(); }
+    function clearBlocks()          { blocks = []; invalidate(); }
+    function clearActions()         { actions = []; }
+    function setCurrentPiece(piece) { current = piece || randomPiece(); invalidate();     }
+    function setNextPiece(piece)    { next    = piece || randomPiece(); invalidateNext(); }
+
+    function reset() {
+      dt = 0;
+      clearActions();
+      clearBlocks();
+      clearRows();
+      clearScore();
+      setCurrentPiece(next);
+      setNextPiece();
+    }
+
+    function update(idt) {
+      if (playing) {
+        if (vscore < score)
+          setVisualScore(vscore + 1);
+        handle(actions.shift());
+        dt = dt + idt;
+        if (dt > step) {
+          dt = dt - step;
+          drop();
+        }
+      }
+    }
+
+    function handle(action) {
+      switch(action) {
+        case DIR.LEFT:  move(DIR.LEFT);  break;
+        case DIR.RIGHT: move(DIR.RIGHT); break;
+        case DIR.UP:    rotate();        break;
+        case DIR.DOWN:  drop();          break;
+      }
+    }
+
+    function move(dir) {
+      var x = current.x, y = current.y;
+      switch(dir) {
+        case DIR.RIGHT: x = x + 1; break;
+        case DIR.LEFT:  x = x - 1; break;
+        case DIR.DOWN:  y = y + 1; break;
+      }
+      if (unoccupied(current.type, x, y, current.dir)) {
+        current.x = x;
+        current.y = y;
+        invalidate();
+        return true;
+      }
+      else {
+        return false;
+      }
+    }
+
+    function rotate() {
+      var newdir = (current.dir == DIR.MAX ? DIR.MIN : current.dir + 1);
+      if (unoccupied(current.type, current.x, current.y, newdir)) {
+        current.dir = newdir;
+        invalidate();
+      }
+    }
+
+    function drop() {
+      if (!move(DIR.DOWN)) {
+        addScore(10);
+        dropPiece();
+        removeLines();
+        setCurrentPiece(next);
+        setNextPiece(randomPiece());
+        clearActions();
+        if (occupied(current.type, current.x, current.y, current.dir)) {
+          lose();
+        }
+      }
+    }
+
+    function dropPiece() {
+      eachblock(current.type, current.x, current.y, current.dir, function(x, y) {
+        setBlock(x, y, current.type);
+      });
+    }
+
+    function removeLines() {
+      var x, y, complete, n = 0;
+      for(y = ny ; y > 0 ; --y) {
+        complete = true;
+        for(x = 0 ; x < nx ; ++x) {
+          if (!getBlock(x, y))
+            complete = false;
+        }
+        if (complete) {
+          removeLine(y);
+          y = y + 1; // recheck same line
+          n++;
+        }
+      }
+      if (n > 0) {
+        addRows(n);
+        addScore(100*Math.pow(2,n-1)); // 1: 100, 2: 200, 3: 400, 4: 800
+      }
+    }
+
+    function removeLine(n) {
+      var x, y;
+      for(y = n ; y >= 0 ; --y) {
+        for(x = 0 ; x < nx ; ++x)
+          setBlock(x, y, (y == 0) ? null : getBlock(x, y-1));
+      }
+    }
+
+    //-------------------------------------------------------------------------
+    // RENDERING
+    //-------------------------------------------------------------------------
+
+    var invalid = {};
+
+    function invalidate()         { invalid.court  = true; }
+    function invalidateNext()     { invalid.next   = true; }
+    function invalidateScore()    { invalid.score  = true; }
+    function invalidateRows()     { invalid.rows   = true; }
+
+    function draw() {
+      ctx.save();
+      ctx.lineWidth = 1;
+      ctx.translate(0.5, 0.5); // for crisp 1px black lines
+      drawCourt();
+      drawNext();
+      drawScore();
+      drawRows();
+      ctx.restore();
+    }
+
+    function drawCourt() {
+      if (invalid.court) {
+        ctx.clearRect(0, 0, canvas.width, canvas.height);
+        if (playing)
+          drawPiece(ctx, current.type, current.x, current.y, current.dir);
+        var x, y, block;
+        for(y = 0 ; y < ny ; y++) {
+          for (x = 0 ; x < nx ; x++) {
+            if (block = getBlock(x,y))
+              drawBlock(ctx, x, y, block.color);
+          }
+        }
+        ctx.strokeRect(0, 0, nx*dx - 1, ny*dy - 1); // court boundary
+        invalid.court = false;
+      }
+    }
+
+    function drawNext() {
+      if (invalid.next) {
+        var padding = (nu - next.type.size) / 2; // half-arsed attempt at centering next piece display
+        uctx.save();
+        uctx.translate(0.5, 0.5);
+        uctx.clearRect(0, 0, nu*dx, nu*dy);
+        drawPiece(uctx, next.type, padding, padding, next.dir);
+        uctx.strokeStyle = 'black';
+        uctx.strokeRect(0, 0, nu*dx - 1, nu*dy - 1);
+        uctx.restore();
+        invalid.next = false;
+      }
+    }
+
+    function drawScore() {
+      if (invalid.score) {
+        html('score', ("00000" + Math.floor(vscore)).slice(-5));
+        invalid.score = false;
+      }
+    }
+
+    function drawRows() {
+      if (invalid.rows) {
+        html('rows', rows);
+        invalid.rows = false;
+      }
+    }
+
+    function drawPiece(ctx, type, x, y, dir) {
+      eachblock(type, x, y, dir, function(x, y) {
+        drawBlock(ctx, x, y, type.color);
+      });
+    }
+
+    function drawBlock(ctx, x, y, color) {
+      ctx.fillStyle = color;
+      ctx.fillRect(x*dx, y*dy, dx, dy);
+      ctx.strokeRect(x*dx, y*dy, dx, dy)
+    }
+
+    //-------------------------------------------------------------------------
+    // FINALLY, lets run the game
+    //-------------------------------------------------------------------------
+
+    run();
+
+  </script>
+
+</body>
+</html>
diff --git a/team/tetris/stats.js b/team/tetris/stats.js
new file mode 100644
index 0000000..5d89bff
--- /dev/null
+++ b/team/tetris/stats.js
@@ -0,0 +1,10 @@
+// stats.js r6 - http://github.com/mrdoob/stats.js
+var Stats=function(){function s(a,g,d){var f,c,e;for(c=0;c<30;c++)for(f=0;f<73;f++)e=(f+c*74)*4,a[e]=a[e+4],a[e+1]=a[e+5],a[e+2]=a[e+6];for(c=0;c<30;c++)e=(73+c*74)*4,c<g?(a[e]=b[d].bg.r,a[e+1]=b[d].bg.g,a[e+2]=b[d].bg.b):(a[e]=b[d].fg.r,a[e+1]=b[d].fg.g,a[e+2]=b[d].fg.b)}var r=0,t=2,g,u=0,j=(new Date).getTime(),F=j,v=j,l=0,w=1E3,x=0,k,d,a,m,y,n=0,z=1E3,A=0,f,c,o,B,p=0,C=1E3,D=0,h,i,q,E,b={fps:{bg:{r:16,g:16,b:48},fg:{r:0,g:255,b:255}},ms:{bg:{r:16,g:48,b:16},fg:{r:0,g:255,b:0}},mb:{bg:{r:48,g:16,
+b:26},fg:{r:255,g:0,b:128}}};g=document.createElement("div");g.style.cursor="pointer";g.style.width="80px";g.style.opacity="0.9";g.style.zIndex="10001";g.addEventListener("click",function(){r++;r==t&&(r=0);k.style.display="none";f.style.display="none";h.style.display="none";switch(r){case 0:k.style.display="block";break;case 1:f.style.display="block";break;case 2:h.style.display="block"}},!1);k=document.createElement("div");k.style.backgroundColor="rgb("+Math.floor(b.fps.bg.r/2)+","+Math.floor(b.fps.bg.g/
+2)+","+Math.floor(b.fps.bg.b/2)+")";k.style.padding="2px 0px 3px 0px";g.appendChild(k);d=document.createElement("div");d.style.fontFamily="Helvetica, Arial, sans-serif";d.style.textAlign="left";d.style.fontSize="9px";d.style.color="rgb("+b.fps.fg.r+","+b.fps.fg.g+","+b.fps.fg.b+")";d.style.margin="0px 0px 1px 3px";d.innerHTML='<span style="font-weight:bold">FPS</span>';k.appendChild(d);a=document.createElement("canvas");a.width=74;a.height=30;a.style.display="block";a.style.marginLeft="3px";k.appendChild(a);
+m=a.getContext("2d");m.fillStyle="rgb("+b.fps.bg.r+","+b.fps.bg.g+","+b.fps.bg.b+")";m.fillRect(0,0,a.width,a.height);y=m.getImageData(0,0,a.width,a.height);f=document.createElement("div");f.style.backgroundColor="rgb("+Math.floor(b.ms.bg.r/2)+","+Math.floor(b.ms.bg.g/2)+","+Math.floor(b.ms.bg.b/2)+")";f.style.padding="2px 0px 3px 0px";f.style.display="none";g.appendChild(f);c=document.createElement("div");c.style.fontFamily="Helvetica, Arial, sans-serif";c.style.textAlign="left";c.style.fontSize=
+"9px";c.style.color="rgb("+b.ms.fg.r+","+b.ms.fg.g+","+b.ms.fg.b+")";c.style.margin="0px 0px 1px 3px";c.innerHTML='<span style="font-weight:bold">MS</span>';f.appendChild(c);a=document.createElement("canvas");a.width=74;a.height=30;a.style.display="block";a.style.marginLeft="3px";f.appendChild(a);o=a.getContext("2d");o.fillStyle="rgb("+b.ms.bg.r+","+b.ms.bg.g+","+b.ms.bg.b+")";o.fillRect(0,0,a.width,a.height);B=o.getImageData(0,0,a.width,a.height);try{performance&&performance.memory&&performance.memory.totalJSHeapSize&&
+(t=3)}catch(G){}h=document.createElement("div");h.style.backgroundColor="rgb("+Math.floor(b.mb.bg.r/2)+","+Math.floor(b.mb.bg.g/2)+","+Math.floor(b.mb.bg.b/2)+")";h.style.padding="2px 0px 3px 0px";h.style.display="none";g.appendChild(h);i=document.createElement("div");i.style.fontFamily="Helvetica, Arial, sans-serif";i.style.textAlign="left";i.style.fontSize="9px";i.style.color="rgb("+b.mb.fg.r+","+b.mb.fg.g+","+b.mb.fg.b+")";i.style.margin="0px 0px 1px 3px";i.innerHTML='<span style="font-weight:bold">MB</span>';
+h.appendChild(i);a=document.createElement("canvas");a.width=74;a.height=30;a.style.display="block";a.style.marginLeft="3px";h.appendChild(a);q=a.getContext("2d");q.fillStyle="#301010";q.fillRect(0,0,a.width,a.height);E=q.getImageData(0,0,a.width,a.height);return{domElement:g,update:function(){u++;j=(new Date).getTime();n=j-F;z=Math.min(z,n);A=Math.max(A,n);s(B.data,Math.min(30,30-n/200*30),"ms");c.innerHTML='<span style="font-weight:bold">'+n+" MS</span> ("+z+"-"+A+")";o.putImageData(B,0,0);F=j;if(j>
+v+1E3){l=Math.round(u*1E3/(j-v));w=Math.min(w,l);x=Math.max(x,l);s(y.data,Math.min(30,30-l/100*30),"fps");d.innerHTML='<span style="font-weight:bold">'+l+" FPS</span> ("+w+"-"+x+")";m.putImageData(y,0,0);if(t==3)p=performance.memory.usedJSHeapSize*9.54E-7,C=Math.min(C,p),D=Math.max(D,p),s(E.data,Math.min(30,30-p/2),"mb"),i.innerHTML='<span style="font-weight:bold">'+Math.round(p)+" MB</span> ("+Math.round(C)+"-"+Math.round(D)+")",q.putImageData(E,0,0);v=j;u=0}}}};
+
diff --git a/team/tetris/texture.jpg b/team/tetris/texture.jpg
new file mode 100644
index 0000000000000000000000000000000000000000..c616e59ae2adfaf0d7f881af01389969f862586a
GIT binary patch
literal 44996
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

literal 0
HcmV?d00001

-- 
GitLab