yumeの日記: Unity制作 メデューサ・ゲーム #35
ステージ追加。
現在のステージ総数:28
--
●ステージの順番を入れ替える
昨日作ったCSVを入れ替えると、うまく順番も入れ替わってくれた。
ステージセレクトはあるけどセーブ機能がないので、ページをリロードしたりすると進行がリセットされる。近いうちに作ってみよう。
--
●パトロール修正
サングラス兵士のパトロールスクリプトを少し修正する。
以前まではA* projectビルトインのシンプルなパトロールスクリプトを使い、
WayPointオブジェクトを複数設置し、waypointを順番に巡らせる、という仕組みだった。
例えばステージにWaypointが3つあれば、 1 - 2 - 3 - 1 - 2 -3 ……という具合にまわる。
ルートが閉ざされていた場合でも、waypointまでとにかく近づいて、最も近づけた地点で次のwaypointを目指す、という仕組みだった。
この仕組みでは、waypointに到達できたかどうかは判定せず、最近地までいけたらそこで次のwaypointをターゲットにしていた。
つまりかなり柔軟で大雑把な仕組みだった。
今回の仕組みでは:
・waypointに到達できたかどうかを判定する。
・到達できた場合、つぎのwaypointを目指す。
・到達できなかった場合、ルートを逆転して、前のwaypointを目指す(1 - 2 - 3、3にいけなかったら - 2 - 1)。
・両端のwaypointどちらかに到達した場合、やはりルートを逆転する(1 - 2 - 3 - 2 - 1 - 2 -3 ……)。
こうすることで、サングラス兵士は決められたルートを強固にループ・反転するようになった。柔軟さは失われたが、このゲームの場合ガチガチにルートを設定しておくので、この方が都合がよい。
--
●ドア電流
リバーススイッチがONの時、ドアは強制的にOFF(閉じる)になり、その状態で他のレバーなどから電源を入れても動かない。
これが一見してちょっとわかりづらい。リバーススイッチが無かったとしても、あるスイッチが、どのドアに影響を与えたか一見してわかる方がよい。
そういうわけだから、スイッチがONになった時、スイッチ自身とドアに電流のようなエフェクトを流してみよう。
探してみると、それっぽいチュートリアルがあった。
パーティクルとはなんだろう。なんとなく単語としては知っているが正確な意味をとらえていないな。
公式曰く、
・小さい画像をたくさん使ってエフェクトにする仕組み
案外電流自体は簡単にできたので、電流を短くして、時間も0.5秒くらいにして、両側から発生させるように2つセットにしたプレハブを、ドアにパワーが入るたびに発生させ、1秒後にdestroyするとうまくいった。
ちょっと表現としては安直なので、これは変えるかもしれないが(ドアのアニメーションとかもほんとはあるといいし)、まぁ一旦これでよし。
ついでにドアがOpen状態のときは半透明にして見分けがつくようにしておく。
Unity制作 メデューサ・ゲーム #35 More ログイン