RubyPico でライフゲーム

RubyPico には clearprint という独自のメソッドがあるので、文字でアニメーションのようなことができます。なので、いわゆる「コンウェイのライフゲーム」を実装してみました。またライフゲームかって言わない。

こんな感じです。iPad mini の画面です。

20180412234202

 
コードはこちら。
RubyPico 用ライフゲーム · GitHub
 
これらをすべて RubyPico でコーディングするのはムリなので、CRuby で clearprint を実装して開発しました。なので、CRuby のコードがそのまま RubyPico で走りました。

ちょっとコードについて説明しておくと、これは iPad mini 用の大きさになっているので、他のデバイスの方は LifeGame::W(フィールドの幅)と LifeGame::H(フィールドの高さ)の定数の値を適当に変更して下さい。また、末尾の LifeGame.new(n).run(wait) の n は最初にばら撒くセルの個数、wait はウェイトの時間(小さい値にすると世代の更新が速くなる)です。


いやー RubyPico、楽しいですね!