スライドパズル好きすぎて,FirefoxOSでもスライドパズル作ってしまった.
SlidePuzzle | Firefox Marketplace
FirefoxOSといってもただのWebアプリなので,基本JSで全部書いた.画面遷移などの独自のUIは
Building Blocksを参考にして実装.パズルの部分はCreateJS使ってcanvas上でアニメーションさせた.
8パズルや15パズルは解くことのできるパターンが限られており,適当にパズルをシャッフルしてしまうといくら頑張っても解けない場合がある.そのため,以前作成したiOS版の8パズルでは,ハードコーディングで多数のパターンをあらかじめ登録することにより,解けるパターンを生成していた.しかし今回,初期状態から"いずれか2つのパズルピースの位置を交換"を偶数回行うと,必ず解くことのできる8パズル,15パズルを生成することができることを知った.
今回もデバッグでたくさんパズル解いたので,かなりスライドパズルの腕が上がってしまった.
ヒューリスティックな8パズル解き方 : 8パズルの解き方 - Hello World!!
Marketplaceに申請すると,ものの1時間くらいで承認され,新着に表示された.(そしてその直後に何語か分からないレビューがついた笑)
FirefoxOSは果たして本当に今年度中にauから発売するのか.アプリが全てWebベースなので興味深いが,しばらくは使い物にならない気がする.iOSやAndroidに当然のようにあるアプリ(Google Mapなど)がない間は,なかなか使えないだろう.ただ,LINEなどの一部の主要なアプリはすでにMarketplaceにリリースされているようだ.
そうだとしても,とりあえず自分のアプリ実機で動かしてみたいしFirefoxOSのスマホほしい.
iOS版のスライドパズルはこちら