ライフゲームの簡単なエディタを作成してみた
ライフゲームの初期配置をランダムに生成するのもいいですが色々な配置を作成してみたかったのでJavaScriptの練習も兼ねて簡単なエディタを作ってみました
次のライフゲームの初期位置です pic.twitter.com/jAgFRcJVs2
— sh00t (@m4_sd) 2018年10月6日
現時点で実装した機能
- マウスのドラッグでセルに書き込み
- ドラッグしたマスを生存にするか死滅にするかの切り替え
- 一行当たりのセル数の変更
- セルの状態をcsvファイルに書き込んでダウンロード
- csvファイルに書き込むときにセルの周りを0で囲む機能
- csvファイルからセルの状態を読み込む機能
こんな感じです。csv形式で読み書きできるので以前Pythonで作ったライフゲームに読み込ませることもできます。
今のところ必要最低限の機能しかないので今思いついた限りだとレイアウトの変更、色変えやTwitterへの投稿などもできるようにしたいですね。あとJavaScriptでライフゲームのルールを実装してシミュレーションしたりも。
JavaScriptで何かを作るのは今回が初めてで詰まった箇所がいくつかありましたがQiitaの力で何とかなりました。
開発環境はRunstant Liteで行いました。手軽にコードを書いて実行できるので個人的に気に入ってます。
2018/10/7追記
ライフゲームの世代更新、更新頻度の変更、色変えの機能を実装。
GitHubPagesで公開しました
https://5h00t.github.io/LifeGameEditor/
追記ここまで
ソースコードはこちらです。