fix syntax

This commit is contained in:
2026-02-17 09:15:15 -06:00
parent f310c18b84
commit 4e1b63fd0e
52 changed files with 2169 additions and 1754 deletions

View File

@@ -56,9 +56,12 @@ var shapeKeys = array(SHAPES)
// Initialize board with empty (0)
function initBoard() {
board = []
for (var r=0; r<ROWS; r++) {
var row = []
for (var c=0; c<COLS; c++) push(row, 0)
var r = 0;
var row = null;
var c = 0;
for (r=0; r<ROWS; r++) {
row = []
for (c=0; c<COLS; c++) push(row, 0)
push(board, row)
}
}
@@ -66,7 +69,7 @@ initBoard()
function randomShape() {
var key = shapeKeys[floor(random.random()*length(shapeKeys))]
// Make a copy of the shapes blocks
// Make a copy of the shape's blocks
return {
type: key,
color: SHAPES[key].color,
@@ -84,9 +87,12 @@ function spawnPiece() {
}
function collides(px, py, blocks) {
for (var i=0; i<length(blocks); i++) {
var x = px + blocks[i][0]
var y = py + blocks[i][1]
var i = 0;
var x = 0;
var y = 0;
for (i=0; i<length(blocks); i++) {
x = px + blocks[i][0]
y = py + blocks[i][1]
if (x<0 || x>=COLS || y<0 || y>=ROWS) return true
if (y>=0 && board[y][x]) return true
}
@@ -95,9 +101,12 @@ function collides(px, py, blocks) {
// Lock piece into board
function lockPiece() {
for (var i=0; i<length(piece.blocks); i++) {
var x = pieceX + piece.blocks[i][0]
var y = pieceY + piece.blocks[i][1]
var i = 0;
var x = 0;
var y = 0;
for (i=0; i<length(piece.blocks); i++) {
x = pieceX + piece.blocks[i][0]
y = pieceY + piece.blocks[i][1]
if (y>=0) board[y][x] = piece.color
}
}
@@ -105,9 +114,12 @@ function lockPiece() {
// Rotate 90° clockwise
function rotate(blocks) {
// (x,y) => (y,-x)
for (var i=0; i<length(blocks); i++) {
var x = blocks[i][0]
var y = blocks[i][1]
var i = 0;
var x = 0;
var y = 0;
for (i=0; i<length(blocks); i++) {
x = blocks[i][0]
y = blocks[i][1]
blocks[i][0] = y
blocks[i][1] = -x
}
@@ -115,14 +127,17 @@ function rotate(blocks) {
function clearLines() {
var lines = 0
for (var r=ROWS-1; r>=0;) {
var r = ROWS-1;
var newRow = null;
var c = 0;
for (r=ROWS-1; r>=0;) {
if (every(board[r], cell => cell)) {
lines++
// remove row
board = array(array(board, 0, r), array(board, r+1))
// add empty row on top
var newRow = []
for (var c=0; c<COLS; c++) push(newRow, 0)
newRow = []
for (c=0; c<COLS; c++) push(newRow, 0)
board.unshift(newRow)
} else {
r--
@@ -195,10 +210,11 @@ this.update = function(dt) {
// ======= End Horizontal Movement Gate =======
// Rotate with W (once per press, no spinning)
var test = null;
if (input.keyboard.down('w')) {
if (!rotateHeld) {
rotateHeld = true
var test = array(piece.blocks, b => [b[0], b[1]])
test = array(piece.blocks, b => [b[0], b[1]])
rotate(test)
if (!collides(pieceX, pieceY, test)) piece.blocks = test
}
@@ -232,9 +248,19 @@ this.hud = function() {
draw.rectangle({x:0, y:0, width:config.width, height:config.height}, [0,0,0,1])
// Draw board
for (var r=0; r<ROWS; r++) {
for (var c=0; c<COLS; c++) {
var cell = board[r][c]
var r = 0;
var c = 0;
var cell = null;
var i = 0;
var x = 0;
var y = 0;
var nx = 0;
var ny = 0;
var dx = 0;
var dy = 0;
for (r=0; r<ROWS; r++) {
for (c=0; c<COLS; c++) {
cell = board[r][c]
if (!cell) continue
draw.rectangle({x:c*TILE, y:(ROWS-1-r)*TILE, width:TILE, height:TILE}, cell)
}
@@ -242,9 +268,9 @@ this.hud = function() {
// Draw falling piece
if (!gameOver && piece) {
for (var i=0; i<length(piece.blocks); i++) {
var x = pieceX + piece.blocks[i][0]
var y = pieceY + piece.blocks[i][1]
for (i=0; i<length(piece.blocks); i++) {
x = pieceX + piece.blocks[i][0]
y = pieceY + piece.blocks[i][1]
draw.rectangle({x:x*TILE, y:(ROWS-1-y)*TILE, width:TILE, height:TILE}, piece.color)
}
}
@@ -252,11 +278,11 @@ this.hud = function() {
// Next piece window
draw.text("Next", {x:70, y:5, width:50, height:10}, null, 0, color.white)
if (nextPiece) {
for (var i=0; i<length(nextPiece.blocks); i++) {
var nx = nextPiece.blocks[i][0]
var ny = nextPiece.blocks[i][1]
var dx = 12 + nx
var dy = 16 - ny
for (i=0; i<length(nextPiece.blocks); i++) {
nx = nextPiece.blocks[i][0]
ny = nextPiece.blocks[i][1]
dx = 12 + nx
dy = 16 - ny
draw.rectangle({x:dx*TILE, y:(ROWS-1-dy)*TILE, width:TILE, height:TILE}, nextPiece.color)
}
}
@@ -269,4 +295,3 @@ this.hud = function() {
draw.text("GAME OVER", {x:10, y:config.height*0.5-5, width:config.width-20, height:20}, null, 0, color.red)
}
}