Little Strange Software

スマホアプリの開発を行う LittleStrangeSoftware のブログです。

【完成版】15パズル、作りました!!

 どうも!LSSです!!

 昨日、作りかけ状態で晒していた15パズル、完成版です^^

 

 
 

 

 

遊び方

 4×4の16マスの上に、1~15の数字が書かれた15個のコマがあります。

 一か所だけある空きマスに向って、縦か横に並んでいるコマをクリックする事でスライドできます。

 スライドを繰り返し、15個のマスを 

f:id:little_strange:20200505204738p:plain

 のように並べ替えするとクリアです!

 

 

攻略のヒント

 まずは最上段を1234と並べる事を目指します。

  その際に、例えば

f:id:little_strange:20200505205714p:plain

こんなカタチであっても1~4の並びを作れてしまえば、このカタマリを意識しながらスライドしていく事で、本来の位置まで運ぶ事ができます。

 

 そうして9~12の列まで作った最終局面で、13~15が上手く並んでいなかった場合。

f:id:little_strange:20200505212901p:plain

↑こんな場合、ですね。

f:id:little_strange:20200505210629p:plain

↑のように、いったん9~12を「並びを維持したまま」左下2×2のマスに移し、右下の2×2のスペースに13~15と空きマスがくる状態を作り、この中で13~15のコマを回してから、9~12を正しい位置に戻す事で解決できます^^

  

 

以下、制作雑記

 昨日書いてた、必ずクリアできるか分からないって話ですが、ググったらあっさりと答えが出てきましたw

 やはり、コマをランダムに並べるのでは「絶対にクリアできない」パターンになる事もあるようです。

 

という事で、昨日せっかく上手く作れた配列シャッフルを捨てて、今回の完成版では
「完成状態から100回ぐらい縦横のスライドをシミュレートして混ぜ合わせたもの」
を出題しています。
 これで「絶対解けない問題は出てこない」です^^

 

 で、あとは余力でコマの見た目をいじってみました。

(こうしちゃうと、逆に画像版が作りづらくなりますねw)

 

 また、更に余力で「遊び方」と「攻略のヒント」を書いてみました。

 昨日の記事の段階では「15パズル」という名前だけで全く説明してなくても遊んでいただけたようなので不要かなと思いつつも一応w

 

 昔(これまた20年ぐらい前)、同じくJavaScriptで15パズルを作った事はありますが、今回は当時と比べてもかなりスマートに作れたんじゃないかと思います。

 

 

てなとこで、今回はこのへんで!

 次回もまた、よろしくお願いします^^