/phitris

A Tetris clone written in Ruby with the Gosu and Chingu libraries

Primary LanguageRuby

PHITRIS

tetrominos

A Tetris clone written in Ruby with the Gosu and Chingu libraries.

It aims to be as concise as possible with a maximum of Ruby idioms but still be easily extendable.

Copyright (C) 2014-2015 Pascal Hurni <https://github.com/phurni>

Licensed under the MIT License.

Pluggable behaviours

As Tetris has several variants, I chose to let all those different behaviours be easily plugged-in or out.

Pluggable behaviours (✔ Implemented, ✘ Not implemented):

Plug your own, fork me

Customization

All game graphics and position may be customized through a YAML config file.

Running the game with the following command line will use pre-defined configuration

ruby main.rb

Try running the game by passing a config file:

ruby main.rb phitris_example.yml

Enjoy!

To Do

  • The board internal representation of the playfield matrix should not be exposed to the pluggables. Refactor this.

  • Implement a real Welcome screen

  • Implement a configuration screen

  • Add SFX