171 lines
7.9 KiB
HTML
171 lines
7.9 KiB
HTML
<!DOCTYPE html>
|
|
<html>
|
|
<head>
|
|
<meta charset="utf-8">
|
|
<meta http-equiv="x-ua-compatible" content="ie=edge">
|
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
|
<style>
|
|
|
|
::-webkit-scrollbar {
|
|
width: 5px;
|
|
}
|
|
::-webkit-scrollbar-track {
|
|
background: #f1f1f1;
|
|
}
|
|
|
|
/* Handle */
|
|
::-webkit-scrollbar-thumb {
|
|
background: #888;
|
|
}
|
|
|
|
/* Handle on hover */
|
|
::-webkit-scrollbar-thumb:hover {
|
|
background: #555;
|
|
}
|
|
</style>
|
|
<title>Tetrion Opening Trainer</title>
|
|
|
|
<link rel="stylesheet" href="css/styles.css">
|
|
|
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
|
|
|
</head>
|
|
<body>
|
|
|
|
|
|
<!--insert shadertoy background-->
|
|
<!--https://www.shadertoy.com/embed/wttfW2?gui=&t=10&paused=false&muted=false-->
|
|
|
|
|
|
<div id="divbg">
|
|
<iframe id="bg" width="640" height="360" frameborder="0" src="https://www.shadertoy.com/embed/WldfWX?gui=&paused=false&muted=false" ></iframe>
|
|
<script>
|
|
document.getElementById("bg").width = window.innerWidth;
|
|
document.getElementById("bg").height = window.innerHeight;
|
|
//document.getElementById("bg").setAttribute("tabIndex", "-1");
|
|
//document.getElementById("divbg").setAttribute("tabIndex", "-1");
|
|
document.getElementById("bg").removeAttribute("tabIndex");
|
|
document.getElementById("divbg").removeAttribute("tabIndex");
|
|
</script>
|
|
</div>
|
|
|
|
|
|
<div id="tetris">
|
|
<canvas id="scene"></canvas>
|
|
|
|
<div id="leftSide">
|
|
<div id="leftInfo">
|
|
|
|
<style>
|
|
a:link, a:visited {
|
|
color: powderblue;
|
|
background-color: transparent;
|
|
/*text-decoration: none;*/
|
|
}</style>
|
|
|
|
<ul style="font-size:16px;color:dodgerblue;text-align:left;" id="Openers">Openers:
|
|
<li style="font-size:12px;color:powderblue;"><a href="#" id="setFreePlay">No Opener </a></li>
|
|
<ul style="font-size:14px;color:dodgerblue;text-align:left;" id="TSpinOpeners">T-Spin Openers:
|
|
<ul style="font-size:13px;color:dodgerblue;text-align:left;padding-left:1em;" id="EarlyIPiece">Early I Piece:
|
|
<li style="font-size:12px;padding-left:1em;"><a href="#" id="setTKIFonzieVar">TKI 3 (Fonzie variation) </a></li>
|
|
<!--<li style="font-size:12px;padding-left:1em;";><a href="#" id="setTKIFTVar">TKI 3 (Flat Top variation) </a></li>
|
|
<li style="font-size:12px;padding-left:1em";><a href="#" id="setTKICTVar">TKI 3 (Castle Top variation) </a></li>
|
|
<li style="font-size:12px;padding-left:1em";><a href="#" id="setAjanbaTSDVar">Ajanba TSD </a></li>-->
|
|
</ul>
|
|
<ul style="font-size:13px;color:dodgerblue;text-align:left;padding-left:1em;" id="EarlyLOrJPiece">Early L or J Piece:
|
|
<li style="font-size:12px;padding-left:1em";><a href="#" id="setDTCannonVar">DT Cannon (LS / JZ base)</a></li>
|
|
<li style="font-size:12px;padding-left:1em";><a href="#" id="setMKOStackingVar">MKO Stacking</a></li>
|
|
<li style="font-size:12px;padding-left:1em";><a href="#" id="setPokeminosSTDVar">Pokemino's STD </a></li>
|
|
</ul>
|
|
<ul style="font-size:13px;color:dodgerblue;text-align:left;padding-left:1em;" id="EarlyLOrJPiece">Early O Piece:
|
|
<li style="font-size:12px;padding-left:1em";><a href="#" id="setMrTSpinsSTDreversedVar">Mr. T-Spin's STD (reversed) </a></li>
|
|
<li style="font-size:12px;padding-left:1em";><a href="#" id="setHachispinVar">Hachispin</a></li>
|
|
<li style="font-size:12px;padding-left:1em";><a href="#" id="setAlbatrossVar">Albatross</a></li>
|
|
<li style="font-size:12px;padding-left:1em";><a href="#" id="setNumberOneVar">Number One </a></li>
|
|
</ul>
|
|
<ul style="font-size:13px;color:dodgerblue;text-align:left;padding-left:1em;" id="EarlySZOrJPiece">Early S, Z, or T Piece:
|
|
<li style="font-size:12px;padding-left:1em";><a href="#" id="setPelicanVar">Pelican</a></li>
|
|
<li style="font-size:12px;padding-left:1em";><a href="#" id="setDTCannonTSZbaseVar">DT Cannon (TSZ base) </a></li>
|
|
<li style="font-size:12px;padding-left:1em";><a href="#" id="setBTCannonVar">BT Cannon </a></li>
|
|
<li style="font-size:12px;padding-left:1em";><a href="#" id="setCSpinVar">C-Spin </a></li>
|
|
<li style="font-size:12px;padding-left:1em";><a href="#" id="setHummingbirdVar">Hummingbird</a></li>
|
|
</ul>
|
|
</ul>
|
|
|
|
<!--
|
|
<ul style="font-size:14px;color:powderblue;text-align:left;" id="ComboOpeners">Combo Openers
|
|
<li style="font-size:12px;padding-left:1em;"><a href="#" id="setTKIFonzieVar">Side 4 Wide </a></li>
|
|
<li style="font-size:12px;padding-left:1em;"><a href="#" id="setTKIFonzieVar">Center 4 Wide </a></li>
|
|
<li style="font-size:12px;padding-left:1em;"><a href="#" id="setTKIFonzieVar">6 Residuals </a></li>
|
|
</ul>
|
|
-->
|
|
<ul style="font-size:16px;color:dodgerblue;text-align:left;" >
|
|
<ul style="font-size:13px;color:dodgerblue;text-align:left;padding-left:1em;" id="setPCOpenersVar">Perfect Clear Openers:
|
|
<li style="font-size:12px;padding-left:1em;"><a href="#" id="setStdPCOpenerVar">The Standard PC Opener </a></li>
|
|
<li style="font-size:12px;padding-left:1em;"><a href="#" id="setSecondPCVar">Second Perfect Clear </a></li>
|
|
<li style="font-size:12px;padding-left:1em;"><a href="#" id="setLoJVar">Either L or J </a></li>
|
|
<li style="font-size:12px;padding-left:1em;"><a href="#" id="setLnJVar">Neither L nor J </a></li>
|
|
<li style="font-size:12px;padding-left:1em;"><a href="#" id="setLaJVar">Both L and J </a></li>
|
|
<li style="font-size:12px;padding-left:1em;"><a href="#" id="setPCTPieceVar">T piece </a></li>
|
|
<li style="font-size:12px;padding-left:1em;"><a href="#" id="setSAVar">see also </a></li>
|
|
</ul>
|
|
</ul>
|
|
</ul>
|
|
</div>
|
|
|
|
<canvas id="hold"></canvas>
|
|
</div>
|
|
|
|
<div id="gameOver">
|
|
<h1>Game Over !</h1>
|
|
<h3>Score: <span id="finalScore">0</span></h3>
|
|
<h2><a href="#" id="restart">Restart</a></h2>
|
|
|
|
</div>
|
|
<div id="side">
|
|
<div id="info">
|
|
<h1 id="levelInfo">Level: <br><span id="level">1</span></h1>
|
|
<h2 id="scoreInfo">Score: <br><span id="score" >0</span></h2>
|
|
<h1 id="linesInfo">Lines: <br><span id="lines" >0</span></h1>
|
|
<div id="rewardInfo" class="invisible">+<span id="reward">0</span></div>
|
|
<canvas id="preview"></canvas>
|
|
|
|
<br>
|
|
<select style="width:80px;font-size:13px;background:black;color:dodgerblue;text-align:left;" id="settings" name="setting">
|
|
<option selected="">Settings:</option>
|
|
|
|
</select>
|
|
<input style="width:80px;font-size:13px;background:black;color:dodgerblue;text-align:left;" type="text" id="setting_value">
|
|
<input id="submitsetting" type="submit" value="Set Setting">
|
|
<input id="test" type="submit" value="Test Yourself">
|
|
|
|
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
|
|
</body>
|
|
<script src="dist/tetrion.js"></script>
|
|
<script>
|
|
(function(){
|
|
var tetrion = new Tetris('tetris');
|
|
document.getElementById("setFreePlay").addEventListener("click", function() { tetrion.setFreePlay(); } );
|
|
document.getElementById("setTKIFonzieVar").addEventListener("click", function() { tetrion.setCurrentOpener(1); } );
|
|
document.getElementById("setDTCannonVar").addEventListener("click", function() { tetrion.setCurrentOpener(2); } );
|
|
document.getElementById("setMKOStackingVar").addEventListener("click", function() { tetrion.setCurrentOpener(3); } );
|
|
document.getElementById("setPokeminosSTDVar").addEventListener("click", function() { tetrion.setCurrentOpener(4); } );
|
|
document.getElementById("setMrTSpinsSTDreversedVar").addEventListener("click", function() { tetrion.setCurrentOpener(5); } );
|
|
document.getElementById("setHachispinVar").addEventListener("click", function() { tetrion.setCurrentOpener(6); } );
|
|
document.getElementById("setAlbatrossVar").addEventListener("click", function() { tetrion.setCurrentOpener(7); } );
|
|
document.getElementById("setNumberOneVar").addEventListener("click", function() { tetrion.setCurrentOpener(8); } );
|
|
|
|
|
|
document.getElementById("test").addEventListener("click", function() { tetrion.setDoTest(); } );
|
|
document.getElementById("settings").addEventListener("change", function() { tetrion.updateSettingTextBox(); } );
|
|
document.getElementById("submitsetting").addEventListener("click", function() { tetrion.setSettings(); } );
|
|
tetrion.start();
|
|
})();
|
|
</script>
|
|
</html>
|