SUPER NARIOをプレイしてみた(最速レビューをめざして)
いわゆるスーマリをどういう訳かRuby/SDLで作った方がいた!(id:authorNariさん)
もちろん、さっそく動かしてみた@Ubuntu のでメモ。
最速レビューなるか。
マリオブラザーズをRubyで作ってみた - I am Cruby!
http://d.hatena.ne.jp/authorNari/20080422/1208880928
$ sudo apt-get install libsdl-dev $ sudo gem install rubysdl
問題のファイルをダウンロードする。
svn co http://svn.coderepos.org/share/lang/ruby/mariobros
取得されるのは以下。
次にlzhを展開して
$ lha -x rskit.lzh
rskitディレクトリにmain.rbとmarioディレクトリをコピー。
$ mv main.rb rskit $ mv mario rskit -r $ cd mario
実行するとファイルが読めないよって怒られたりするのでRename作業が必要でした。
これは、Windows/MacOSに採用しているファイルシステムよりも
Linuxに採用されているファイルシステムの方がファイル名の大文字/小文字が厳密だからでしょうか??
Rename作業1として
rskit/mario/imageディレクトリ以下の
PNG拡張子のファイルをpngにリネームする。
ファイルが数個あるので自分は以下のRubyスクリプトで一括Renameした。
Dir['*.PNG'].each { |f| File.rename(f,f.downcase) }
Rename作業2として
rskit/mario/materialディレクトリ以下のfloor.rbをFloor.rbにリネームする。
最後にrskitディレクトリでmain.rbを実行すると...
$ ruby main.rb
すごくよくできているなーっていうのが最初の感想です。
無操作で左に動いていくのは仕様でしょうか??
この挙動のせいか、なかなか難しい。。
まだ、1面クリアできてないよ!
今後はキノコ、フラワー、スター、10コインブロック、
1upキノコ、土管から地下のボーナスに期待!
っていうか、スーパーマリオって1面で色々な要素が凝縮されていて
再実装する側からすると(そんな人は少ないですが)大変ですね。