This commit is contained in:
Adrien MALINGREY 2019-10-31 08:24:02 +01:00
parent 7249f46c37
commit bfe422bbdd
4 changed files with 34 additions and 21 deletions

View File

@ -81,10 +81,14 @@ table {
table-layout: fixed;
border-spacing: 0;
width: 0;
height: 0;
}
td {
border: 1px solid transparent;
padding: 0;
width: 20px;
height: 20px;
}
#hold {
@ -171,8 +175,8 @@ td {
.ghost {
background-color: rgba(255, 255, 255, 0.4);
border-color: rgba(255, 255, 255, 0.3);
border-style: inset;
border-color: rgba(255, 255, 255, 0.2);
border-style: solid;
}
#stats {

View File

@ -14,7 +14,7 @@
function addButton($action, $label) {
?>
<div><?=$label?></div>
<button type='button' onclick='changeKey(this, "<?=$action?>")'>
<button type="button" onclick="changeKey(this, '<?=$action?>')">
<script>getKey("<?=$action?>")</script>
</button>
<?php }
@ -29,7 +29,7 @@
?>
</div>
<div id="play">
<a href="webtris.html">JOUER</a>
<a href="webtris.php">JOUER</a>
</div>
</body>
</html>

View File

@ -206,12 +206,6 @@ class MinoesTable {
this.columns = columns
this.piece = null
this.table = document.getElementById(id)
for (var y=0; y < rows; y++) {
var row = this.table.insertRow()
for (var x=0; x < columns; x++) {
row.insertCell()
}
}
}
drawMino(x, y, className) {
@ -224,8 +218,8 @@ class MinoesTable {
}
clearTable() {
for(var y=0; y < this.rows; y++) {
for (var x=0; x < this.columns; x++) {
for(var y = 0; y < this.rows; y++) {
for (var x = 0; x < this.columns; x++) {
this.drawMino(x, y, INVISIBLE_ROW_CLASS)
}
}
@ -268,8 +262,8 @@ class Matrix extends MinoesTable {
draw() {
// grid
if (state == STATE.PAUSED) {
for (var y=0; y < this.rows; y++) {
for (var x=0; x < this.columns; x++) {
for (var y = 0; y < this.rows; y++) {
for (var x = 0; x < this.columns; x++) {
if (this.clearedLines.includes(y)) var className = CLEARED_LINE_CLASS
else {
if (y < MATRIX_INVISIBLE_ROWS) var className = INVISIBLE_ROW_CLASS
@ -279,8 +273,8 @@ class Matrix extends MinoesTable {
}
}
} else {
for (var y=0; y < this.rows; y++) {
for (var x=0; x < this.columns; x++) {
for (var y = 0; y < this.rows; y++) {
for (var x = 0; x < this.columns; x++) {
var className = this.lockedMinoes[y][x]
if (!className) {
if (this.clearedLines.includes(y)) className = CLEARED_LINE_CLASS
@ -296,7 +290,7 @@ class Matrix extends MinoesTable {
// trail
if (this.trail.height) {
this.trail.minoesPos.forEach(pos => {
for (var dy=0; dy < this.trail.height; dy++) this.drawMino(pos[0], pos[1]+dy, TRAIL_CLASS)
for (var dy = 0; dy < this.trail.height; dy++) this.drawMino(pos[0], pos[1]+dy, TRAIL_CLASS)
})
}
@ -618,7 +612,7 @@ function hardDrop() {
scheduler.clearInterval(lockPhase)
scheduler.clearTimeout(lockDown)
matrix.trail.minoesPos = Array.from(matrix.piece.minoesAbsPos)
for (matrix.trail.height=0; move(MOVEMENT.DOWN); matrix.trail.height++) {
for (matrix.trail.height = 0; move(MOVEMENT.DOWN); matrix.trail.height++) {
stats.score += 2
}
while (move(MOVEMENT.DOWN)) {}

View File

@ -10,9 +10,24 @@
<body>
<h1>WEBTRIS</h1>
<div id="grid">
<table id="hold"><table>
<table id="matrix"><table>
<table id="next"><table>
<?php
function echoTable($id, $rows, $columns) {
echo " <table id='$id'>\n";
echo " <tbody>\n";
for ($y = 0; $y < $rows; $y++) {
echo " <tr>";
for ($x = 0; $x < $columns; $x++) {
echo "<td></td>";
}
echo "</tr>\n";
}
echo " </tbody>\n";
echo " </table>\n";
}
echoTable("hold", 6, 6);
echoTable("matrix", 24, 10);
echoTable("next", 24, 6);
?>
<table id="stats">
<tbody>
<tr><td class="stat-label">SCORE</td><td class="stat-value" id="score">0</td></tr>