Ruby/SDL でテトリス

20180915120557
いやこれ、僕が作ったのではないのですよ。Gem 'rubysdl' のサンプルとして付属していたものを、多少改変しただけですが、きれいなコードで勉強になったのでここにメモしておきます。

コードは Gist に上げておきました。
Ruby/SDL でテトリス · GitHub
あと画像ファイル "icon.bmp" が必要ですので、これを使って下さい。これだけで動きます。必要な Gem は上にも書いたとおり 'rubysdl' ですので、$ gem install rubysdl や Bundler などでインストールして下さい。

キー操作はカーソルキーです。やってみればすぐわかります。
Linux Mint 18.3, Ruby 2.5.1 で確認しました。Ruby/SDLLinux へのインストールなどについてはここも参考にしてもらえればよいと思います。


コード・リーディングしていて思ったのですが、適切なクラス名、メソッド名、変数名を付けることは大事ですね。上のコードでは自分に読みやすいようにそのあたりを改変しました。改悪になっていないといいのですが。それから、多少のコメントを書き加えています。Bug fix は一箇所だけありました。これは Ruby 本体の仕様改変に伴うものだと思います。

そうそう、それから誰か、Windows への Ruby/SDL のインストールの仕方をアップデートしてくれないですかね。いまのままだとどうやっていいのかさっぱりわからない。残念ながら、自分でコードを調べてインストールする実力がないので。