RubyPico には clearprint という独自のメソッドがあるので、文字でアニメーションのようなことができます。なので、いわゆる「コンウェイのライフゲーム」を実装してみました。またライフゲームかって言わない。
こんな感じです。iPad mini の画面です。
コードはこちら。
RubyPico 用ライフゲーム · GitHub
これらをすべて RubyPico でコーディングするのはムリなので、CRuby で clearprint を実装して開発しました。なので、CRuby のコードがそのまま RubyPico で走りました。
ちょっとコードについて説明しておくと、これは iPad mini 用の大きさになっているので、他のデバイスの方は LifeGame::W(フィールドの幅)と LifeGame::H(フィールドの高さ)の定数の値を適当に変更して下さい。また、末尾の LifeGame.new(n).run(wait)
の n は最初にばら撒くセルの個数、wait はウェイトの時間(小さい値にすると世代の更新が速くなる)です。
いやー RubyPico、楽しいですね!