2018年3月6日火曜日

ゲームの進展状況53 アニマドロップ

JPCは、大量のボールで抽選するアニマドロップ風のゲームにしようと考えた。

そのためには、まず形状(本物は板?状)を考える必要があり、
そして次に落下の判定が必要。
上とつながっていないドロップを全部落とす、というもの。

これについて、いい案が思い浮かんだ。
まず全てのマスに対して、それ自身が未HITの場合、周囲6マスに対象を広げて、そのそれぞれに対して同様の操作を実行。それを繰り返していき、この操作が有限回で終了すればそれは独立した区域、すなわち落ちるべきかたまりとなる。
ただし、一番上の位置まで達したならば、これは落ちるべきものではないとの判断を下す。

これを利用すれば、たとえば下の状況を考えると…。
スウィートJP82とかかれているものを考える。
これは、たとえば全ての緑ドロップは、確かに下方向に広がれば空白ではあるが、これは同時に一番上に達することになる。下のほうを選ぶと、上まで達する時間は長いが、それでも高々有限回である。とくに入り組んだ構造では、なかなか上に達しないことがある。
この場合、どんどん対象を広げることを考えると、すでに端に達したものは判定を終了することにする。
しかしこれの問題点は、各マスに対してこの判定を行わなければならない、ということである。

だがよく考えると…。

あらかじめあるマスに対して判定した途中のマスを格納しておき、以降の対象のマスの判定でその格納値があれば先ほどのマスの対象の結果を参照すればいいのではないかと思った。

こうすれば、たとえば上のJP82のものでは1マス目ですでにすべてのマスに対して対応できたことになる。いうなれば、分離された領域の数が多くなればなるほどこの処理は時間がかかることになる。

まあとりあえずは、以前キャンディドロップで周りのマスの判定をしたが、これがかなり大変だった。
しかし上記のような形ならば、左上、右上など相対的な位置の参照の場合分けが少なくて済む。

決まった。

JPCは大量のクラッシュドロップ(アニマドロップ)風の連鎖ゲームとして、その落下数の総数あるいは全消しの回数などをもとにして考えようと思っている。

…しかし、大量のボールで抽選となると、どんどん入っていくわけで、とにかくピクチャ表示が大変になる。

…まあいずれにせよ、まずはピクチャの座標の設定からはじめなければならない。
円を接させるような構造をする関係上、sqrt[3]が登場する。
すでにキャンディドロップでのドロップの画像は準備されているので、これと同じ大きさで配置しようと思っている。

さて、過去言及したが結局使わなかったぐるぐるドロップとうずうずドロップ。
これらのドロップは、番号が新たに配置されたり、BOMBの一部がグレードアップ(範囲拡大)したりするようにさせようかと考えている。

だが、これ、頭ではだいたいのイメージを理解していてもこれを表現するとなるとそれはそれは大変。

新しいアニマ系ゲームの作成に伴うブログ移転

https://zisakukarako.blogspot.com/ というブログで、今度は自作カラコロッタをつくってみようということにした。 今度は自作アニマロッタ風ゲームでの反省を生かす予定。 どこまで続くかは不明。 さらに、自作アニマロッタまで作ろうと試みている...