なんか作って載せます

今月(10月)は、思いつきシリーズでいきます。第8弾。

キャラの周囲だけ明るくしたい【コモン】



 ホラーゲームなどによくある演出ですが、暗闇で特定のアイテムを使ったりすると、キャラの周りだけ明るくなるというのがありますね。
 あれを作ってみます。


 画面全体を暗くしたり明るくしたりするのは、ウディタ単体でも可能です。
 しかし、キャラの周囲のみを明るくする機能は、ウディタにはありません。
 やりたいなら、自分で作るしかありません。

 まず用意するのは、中心を円形にくり抜いた黒い画像です。
 くり抜いて透明部分になったところに、キャラが入ります。そうすることにより、キャラの周囲のみ暗くなっているように見せるのです。

 とりあえず作った画像がこれ。
どうぞ使って下さい

 サイズは、640×480ピクセルです。
 ゲームの画面サイズは320×240ピクセルですが、その2倍の大きさで作りました。
 画面サイズと同じ320×240ピクセルで画像を作ってしまうと、キャラが移動した時におかしなことになるからです。

 おかしなこととは、これです。
不具合

 まず、用意した画像の座標には、キャラの座標を取得して使っています。
 つまり、キャラが動くのに合わせて、画像もそれをぴったり追いかけるという形になるってことです。
 ですから、画面サイズちょうどで作ってしまうと、キャラが移動した際に、画像が中心から外れてしまい、キャラに画像がぴったりくっついて動いているのがバレバレの状態になってしまうのです。

 この問題を回避するためには、単純に画像のサイズを大きくして、キャラが移動したくらいでは端が見えないようにすればいいんです。
 別に3倍でも4倍でもいいんですが、私は2倍で作りました。このサイズで充分ですから。

 で、画像をキャラの動きと合わせる処理は、とりあえずこれだけ。
最低限必要な処理

 これが、最低限の処理内容です。
 Y座標を「-8」しているのは、円の位置をキャラの位置にぴったり合わせるためです。

 しかし、このままでは「並列実行(常時)」となっている通り、ゲーム全編通してずっとこの画像が表示されてしまいます。
 特定のアイテムを使用した時のみ、この画像を表示させたいですよね。

 では、どうするか。

 まずは、特定のアイテムを作ります。
ライト

 こんな感じ。

 「効果のタイプ」を「イベント起動」にします。
 そして、「イベント番号指定」の欄に、「500217」と入れました。
 ここに、「500XXX」と入れれば、コモンイベントを呼び出せます。「XXX」はコモンイベントの番号です。
 今回はコモンイベント217番を使うので、「XXX」には「217」が入ります。

 これで、アイテムの準備は完了です。

 次に、コモンイベントを完成させます。
 コモンイベントは、2つ作ります。

 まず、ライト使用のフラグを立てるコモン。
 これが、アイテム使用で起動するコモンイベント217番となります。
フラグを立てるコモン

 これで、フラグがONの状態になります。

 もう1つは、ライト処理のコモン。こちらは218番に作りました。
ライト処理のコモン1

 こちらは、「並列実行(常時)」にしておき、フラグがONになったら画像を表示させるようにしておきます。
 フラグがOFFの場合は、常にピクチャ消去をし続けます。

 こう作っても、同じです。
ライト処理のコモン2

 あと重要なのが、ONにしたフラグをOFFにする処理です。
 ONにしたままだと、マップを移動してもピクチャは表示されたままです。
 ですから、マップ移動時か、特定のイベントなどに、フラグをOFFにする処理を入れておく必要があります。
 場所移動のイベント内に入れておくのが、一般的じゃないかと。

 それか、特定のキーで自由にフラグをON/OFFできるような処理をコモンイベントで作り、アイテムから起動できるようにしておくのもいいかもしれませんね。
 その場合、ライトが必要なマップ内でしか使えないようにしておくのを忘れずに。


 今回はこれで終わります。


2012/10/27/Sat 更新
2013/09/21/Sat 内容修正

inserted by FC2 system