https://williamphk.github.io/Uselessweb/
Este código de JavaScript es parte de un simple juego de serpiente donde la serpiente se mueve por la pantalla, come comida y crece en longitud. El código define el comportamiento de la serpiente, maneja la entrada de las teclas de flecha y muestra el estado del juego en la pantalla.
gameBoard
, score1
, score2
se seleccionan utilizando sus respectivas ID de DOM. Las dimensiones del tablero del juego se calculan en función del tamaño de la pantalla, dividido en células 30px. Se crea una cuadrícula en bucle a través de las dimensiones, con cada celda representada por una entrada de casilla de verificación. El tablero de juego está poblado con filas y celdas.
Se definen la direction
, length
, starting position
, speed
y otras variables necesarias de la serpiente. También se crea un mapeo de instrucciones a índices y operaciones de matriz para un movimiento fácil de serpiente. Verificar la posición inicial de la serpiente:
La posición inicial de la serpiente se verifica en el tablero del juego.
La función de checkRandomCellAsFood
coloca la comida en ubicaciones aleatorias en el tablero de juegos, asegurando que la comida no aparezca en la serpiente en sí.
El botón 'Inicio' inicia el juego. La función updatePosition
actualiza la posición visual de la serpiente y maneja la lógica para cuando la serpiente come comida o encuentra varias otras condiciones del juego. Movimiento de serpiente y cambio de color:
El movimiento de la serpiente está controlado por las teclas de flecha. Se genera un color aleatorio utilizando la función getRandomColor
para fines de estilo.
Si la serpiente sale de los límites o corre hacia sí mismo, el juego termina. La función gameOver
está llamada para manejar el juego en los escenarios.
La función uncheckAll
designa todas las celdas, limpiando la placa. La función printGameOverWithCheckbox
imprime "Juego sobre" en el tablero de juego utilizando las casillas de verificación marcadas.
No se requieren bibliotecas o dependencias externas para este código. Se ejecuta puramente en Vanilla JavaScript.