アレクセイ・パジトノフ氏によって開発された落ちモノ系パズルゲーム「テトリス」。
誰でもルールを把握していることから、コンピュータープログラムの学習用素材として採用されることが多く、さまざまなプログラミング言語でクローンが作成され続けています。
本日紹介する「tinytetris」もそのようなテトリスクローンの1つです。
スウェーデンの開発者Conor Taylor氏が作成した、ターミナルで動作するタイプのテトリスゲームで、ソースコードがわずか80x23(列x行)で構成されているという特徴を持っています。
以下詳しくご紹介。
目次
tinytetrisの使用方法
tinytetrisはC++で記述されています。コンパイルするためにC++11準拠のC++コンパイラと、ターミナル制御用のcursesライブラリが必要です。
以下の手順でコンパイルします。
git clone https://github.com/taylorconor/tinytetris.git cd tinytetris make
コンパイルに成功したら「./tinytetris」で起動できます。
ゲーム中は以下のキーが利用できます:
- a: 左移動
- d: 右移動
- w: 回転
- s: ドロップ
- q: 終了
通常のテトリスのように上まで積み上がると終了です。
ソースコードはtinytetris.cpp1つだけで、確認すると以下の通り本当に80x23となっています。
コメント付きのtinytetris-commented.cppも同梱されていますので、動作を解析したい場合は、こちらを参照すると良いでしょう。
まとめ
tinytetrisはターミナルで動作するシンプルなテトリスゲームの実装です。自分でテトリスを作成したい方、コンパクトなゲームの作り方に興味のある方は参照してみてはいかがでしょうか。