*シナリオ作成応用編 [#s470aea3]
#contents
----
**Q601. 敵を倒したら強化パーツを手に入れさせるにはどうすれば良いのですか? [#ief81a6a]

 SRWなどでは、ボスを倒した時に強化パーツが手に入ります。
 これをSRCで再現するためには破壊ラベルを使いましょう。

 破壊 (破壊されたユニットのパイロット名):
 (強化パーツを手に入れるイベント)
 Exit

 強化パーツを手に入れるイベントに関して以下に例を挙げます。

 Item (強化パーツ名)
 Talk システム
 (強化パーツ名)を手に入れた
 End

 まとめ~
 ・敵を倒したかどうか判別するには…破壊ラベル~
 ・強化パーツを手に入れるには…Itemコマンド

**Q602. ステージ終了時の残りSPによる経験値ボーナスをやめることはできますか? [#tcbe8496]

 SRCではステージを終了すると、~
 ステージ終了時点のSPx2が経験値ボーナスとして~
 自動で加算されるようになっています。

 ただ、毎回経験値が加算されてしまうと、~
 レベル調整するのが難しくなってしまうので、~
 これをやめたいという場合もあるかと思います。

 <経験値加算が行われる条件>
 ・Continueコマンドを使った時点で
 ・"出撃"or"格納"状態になっている味方ユニット

 つまり、Continueコマンドを使う直前に~
 Escapeコマンドで味方全体を"待機"状態にしてしまえば~
 経験値が加算されませんし、表示自体も行われなくなります。

 Escape 味方
 Continue シナリオ02.eve

 直後がContinueコマンドになっていますので、~
 味方の全滅イベントが発生する心配はありません。
 Destroyコマンドを使うと修理費がかかってしまうので~
 気をつけましょう。

**Q603. 指定座標のビットマップ番号はどうやって調べれば良いですか? [#cfae66f4]

 ChangeTerrainコマンドではビットマップ番号を指定する必要がありますが、~
 Info関数ではビットマップ名しか調べられません。~
  (ビットマップ名 = "remains1.bmp"、"base-1.bmp" など)

 ビットマップ名は必ず"文字列"+"数値"+"."+"拡張子"の順に並んでいますので、~
 SRCのイベントコマンドと関数を利用すれば、番号だけの抽出が可能です。

 # ビットマップ名取得
 # (Info関数を使用してください)
 mBMP = Info(マップ, X座標, Y座標, ビットマップ名)
 
 # 拡張子切捨て
 # ("文字列" + "ビットマップ番号" にする)
 mBMP = Mid(mBMP, 1, (Instr(mBMP,".") - 1)) 
 
 # ビットマップ番号抽出
 # (数値 or "-" 以降の部分を抽出する)
 For i = 1 To Len(mBMP)
  If Mid(mBMP,i,1) = "-" OR IsNumeric(Mid(mBMP,i,1)) Then
   mBMP_No = Mid(mBMP,i)
   Break
  Endif
 Next

 結果~
 ・"mBMP_No"がビットマップ番号になります。("1"とか"-1")