RPGツクール2000/演出
■スポットライト処理
(更新:2007/05/26)


主人公の周りだけ明るくするスポットライト処理を作成します。
今回は持っているアイテムによって、
3種類のスポットライトを表示する設定を行います。

▼アイテムなし


▼アイテム「ランプA」を持っている


▼アイテム「ランプB」を持っている



☆画像の準備
画像はスポットライトの表示サイズにつき、2枚の画像を用意します。
1枚は周りが真っ黒な画像です。
もう1枚は透明度50%で表示する半透明の画像です。
この2枚の画像を合体させてスポットライトの表示を行います。
尚、スポットライトの表示は、ピクチャーを使って行います。
 

3種類のスポットライトのサイズに合わせて画像を準備して下さい。
準備しました画像は、素材管理Pictureのフォルダへインポートして下さい。
ピクチャー1番の画像 ピクチャー2番の画像
アイテムなし
ランプA
ランプB
このスポットライト用の画像の上で右クリックを行い、
名前を付けて画像を保存を選択してパソコン内へ保存して、
この画像をインポートして使用しても問題ありません。
加工も自由に行って下さい。
※この画像は実際の画像サイズの約4分の1に縮小して表示しています。



☆イベントの設定
スポットライトを表示するイベントを設定します。
このイベントはマップイベントとして作成して下さい。
イベント開始条件定期的に並列処理する
イベント実行内容は以下の通りに設定します。
◆変数の操作:[0001:画面X]代入,主人公の画面X
◆変数の操作:[0002:画面Y]代入,主人公の画面Y
◆変数の操作:[0003:現在の表示状態]代入,1
◆条件分岐:ランプAを持っている
 ◆変数の操作:[0003:現在の表示状態]代入,2
 ◆
:分岐終了
◆条件分岐:ランプBを持っている
 ◆変数の操作:[0003:現在の表示状態]代入,3
 ◆
:分岐終了
◆条件分岐:変数[0004:前の表示状態]がV[0003]以外
 ◆変数の操作:[0004:前の表示状態]代入,変数[0003]の値
 ◆条件分岐:ランプBを持っている
  ◆ピクチャーの表示:1,表示:大01,(V[0001],V[0002])(透明度:50%)
  ◆ピクチャーの表示:2,表示:大02,(V[0001],V[0002])(透明度:0%)
  ◆
 :それ以外の場合<ランプBを持っていない
  ◆条件分岐:ランプAを持っている
   ◆ピクチャーの表示:1,表示:中01,(V[0001],V[0002])(透明度:50%)
   ◆ピクチャーの表示:2,表示:中02,(V[0001],V[0002])(透明度:0%)
   ◆
  :それ以外の場合<ランプAもBも持っていない
   ◆ピクチャーの表示:1,表示:小01,(V[0001],V[0002])(透明度:50%)
   ◆ピクチャーの表示:2,表示:小02,(V[0001],V[0002])(透明度:0%)
   ◆
  :分岐終了
  ◆
 :分岐終了
 ◆画面の表示:フェードイン
 ◆
:分岐終了
◆ピクチャーの移動:1,(V[0001],V[0002]),0.0秒(透明度:50%)
◆ピクチャーの移動:2,(V[0001],V[0002]),0.0秒(透明度:0%)


このスポットライトを表示するマップへ移動する場合は、
移動する時に設定するイベントコマンド:場所移動の前に、
◆変数の操作:[0004:前の表示状態]代入,0
を設定して下さい。
▼設定例
◆変数の操作:[0004:前の表示状態]代入,0
◆場所移動:〜スポットライトのマップ〜




☆燃料を設定する
アイテム「ランプA」や「ランプB」に入れる燃料として、
アイテム「燃料タンク」アイテム「ランプの燃料」を設定します。
「ランプの燃料」は、一歩歩くごとに1つ減ります。
「ランプの燃料」が0になりますと、「燃料タンク」がある場合は、
「燃料タンク」が1つ減って「ランプの燃料」が99になります。
「燃料タンク」「ランプの燃料」も持っていない状態になりますと、
ランプを持っていても、一番小さいスポットライトの状態になります。

歩いているかどうかを判断するイベントは、
歩くと実行するイベントを使用しています。
【歩くと実行するイベントの紹介ページを見る】

アイテム「燃料タンク」「ランプの燃料」種別:通常物品として、
データベース:アイテムに設定して下さい。

上記のイベント設定からの追加設定は以下の通りです。
◆変数の操作:[0001:画面X]代入,主人公の画面X
◆変数の操作:[0002:画面Y]代入,主人公の画面Y
◆変数の操作:[0003:現在の表示状態]代入,1
◆条件分岐:ランプAを持っている
 ◆変数の操作:[0003:現在の表示状態]代入,2
 ◆
:分岐終了
◆条件分岐:ランプBを持っている
 ◆変数の操作:[0003:現在の表示状態]代入,3
 ◆
:分岐終了
◆変数の操作:[0005:現在のXY]代入,主人公のX座標
◆変数の操作:[0005:現在のXY]乗算,1000
◆変数の操作:[0005:現在のXY]加算,主人公のY座標
◆条件分岐:変数[0006:前のXY]がV[0005]以外<異なる座標になった(移動した)
 ◆変数の操作:[0006:前のXY]代入,変数[0005]の値
 ◆条件分岐:変数[0003:現在の表示状態]が2以上<ランプを持っている時
  ◆条件分岐:ランプの燃料を持っていない<ランプの燃料が無い時(オプション:ON)
   ◆条件分岐:燃料タンクを持っていない<燃料タンクも無い時(オプション:ON)
    ◆変数の操作:[0003:現在の表示状態]代入,1<燃料が無いので一番小さい表示
    ◆
   :それ以外の場合<燃料タンクからランプの燃料を取り出す
    ◆アイテムの増減:燃料タンクを1減らす
    ◆アイテムの増減:ランプの燃料を99増やす
    ◆
   :分岐終了
   ◆
  :それ以外の場合<ランプの燃料を持っている時
   ◆アイテムの増減:ランプの燃料を1減らす
   ◆
  :分岐終了
  ◆
 :分岐終了
 ◆
:分岐終了

◆条件分岐:変数[0004:前の表示状態]がV[0003]以外
 ◆変数の操作:[0004:前の表示状態]代入,変数[0003]の値
 ◆条件分岐:変数[0003:現在の表示状態]が3
  ◆ピクチャーの表示:1,表示:大01,(V[0001],V[0002])(透明度:50%)
  ◆ピクチャーの表示:2,表示:大02,(V[0001],V[0002])(透明度:0%)
  ◆
 :それ以外の場合
  ◆条件分岐:変数[0003:現在の表示状態]が2
   ◆ピクチャーの表示:1,表示:中01,(V[0001],V[0002])(透明度:50%)
   ◆ピクチャーの表示:2,表示:中02,(V[0001],V[0002])(透明度:0%)
   ◆
  :それ以外の場合
   ◆ピクチャーの表示:1,表示:小01,(V[0001],V[0002])(透明度:50%)
   ◆ピクチャーの表示:2,表示:小02,(V[0001],V[0002])(透明度:0%)
   ◆
  :分岐終了
  ◆
 :分岐終了
 ◆画面の表示:フェードイン
 ◆
:分岐終了
◆ピクチャーの移動:1,(V[0001],V[0002]),0.0秒(透明度:50%)
◆ピクチャーの移動:2,(V[0001],V[0002]),0.0秒(透明度:0%)




☆補足
このイベント処理では、ランプを手に入れたり、逆にランプを失ったりしますと、
自動的に持っているランプの状況に合わせて、スポットライトの状態が変わります。
ランプAとランプBの両方を持っている場合は、ランプBが優先的に使われます。


YADOTトップ  このサイトは何?  気紛れな空間へ戻る  メール