Giter Club home page Giter Club logo

my_tetris's Introduction

My Tetris


This is a Tetris game written in JavaScript designed for modern desktop web browsers. The game generally follows the official Tetris guidelines implementing features from different Tetris games.

The aim of the game is to score as many points as possible by arranging falling tetrominoes. Tetrominoes are made up of four connected squares, arranged in various shapes.

The player must rotate and move the tetrominoes so that they fit into rows at the bottom of the game field (the stack). When a row is filled, it disappears, and the player scores points. As the player clears more rows the level increases, and so does the speed of the game. The game ends when the blocks reach the top of the screen.

Features

  • Simple user interface.
  • Control tetrominoes using keyboard input.
  • Score and level-up functionality.
  • Background music and sound effects for game events.
  • A settings panel that allows the user to change game behavior.
  • A help panel listing game controls.

Tech Stack

  • HTML
  • CSS
  • JavaScript

Installation

Clone or download the repository.
Open the index.html file in a web browser.
Alternatively, a live demo can be found here

Play instructions

Click on "Start" to play the game. Try to complete as many rows as possible to score points and level up. Basic controls:

  • Press the left and right arrow keys to move the tetrominoes sideways.
  • Press the up arrow or Z key to rotate the tetrominoes.
  • Press the down arrow key to make the tetrominoes fall faster.
  • Press space to drop the tetrominoes to the bottom immediately.
  • Press the C key to hold a tetromino.

Next steps

  • Implement a scoreboard
  • Optimize game layout for different screen sizes
  • Allow a 1/2 second lock before a tetromino is locked in the stack
  • Optimize canvas resizing to keep a sharp look without using excessive resources

Made by Jose M. Espinola-Lopez at Qwasar SV -- Software Engineering School <img alt='Qwasar SV -- Software Engineering School's Logo' src='https://storage.googleapis.com/qwasar-public/qwasar-logo_50x50.png' width='20px'>

my_tetris's People

Contributors

jespinol avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.