追加ルーチン「サウンドボックス」
サウンドボックスとは
サウンドボックスは、ゲーム内で流す音楽を変更するためのアイテムです。
"midi.cgi"の改造
# -------- 設定部分 ----------
# MIDIのファイル名を変更できます。
# CGI別サーバーのところでは,ここを http:// から始まるパスに指定します。
$MIDI_URL = "midi.mid";
変更を加える箇所
上記部分を以下のように変更します。
# -------- 設定部分 ----------
# MIDIのファイル名を変更できます。
# CGI別サーバーのところでは,ここを http:// から始まるパスに指定します。
DataRead();
CheckUserPass();
$MIDI_URL = "midi.mid";
$MIDI_URL = $DT->{user}->{midi} if ($DT->{user}->{midi});
変更後
midiファイルの入手
再生するmidiファイルを入手します。音楽は著作物ですから、ゲームで使う場合は、そのファイルを使用、公開してもよいか、よく確認する必要があります。市販ゲームや邦楽等のmidiを使うのはやめましょう。RPGツクール用などに、オリジナルのMIDIがいろいろと公開されているのでそういったものの中から選ぶのがよいでしょう。個人で楽しむ分には自由であっても、ゲームなどで使用する場合は連絡が必要なMIDIもあるので、よく確認しましょう。再生するmidiが決まったら、それらのファイルを"_config.cgi"などがあるディレクトリ(街別のフォルダ)に入れておきましょう。
アイテム「サウンドボックス」の追加
@@ITEM
no 【アイテムの番号を入力】
name サウンドボックス
type 【アイテムの分類を入力】
code tool-sound
scale 個
price 20000
cost 1000
limit 1/1
plus 12h
pop 9d
point 50
info いろいろな音楽を再生します。
@@use
scale 回
action 読む
name サウンドボックスの使い方
info サウンドボックスについての説明を読みます
arg nocount
need 1 サウンドボックス
func _local_
my $ret;
$ret.=qq||;
$ret.=qq| |;
$ret.="サウンドボックスについて
";
$ret.="サウンドボックスは、流れるMIDIを変更するアイテムです。 ";
$ret.="変更をしたあと[♪]を押すと、変更後のMIDIが流れます。 ";
$ret.="特定のアイテムを持っていないと流せないMIDIもあります。
";
$ret.="MIDIは、フリーのものを使用しています。。 ";
$ret.="そして、基本的にGM音源可\能\な\音\楽を選んでいます。 ";
$ret.="MIDIが気に入ったら、作者のHPを訪れてみるといいでしょう。 ";
$ret.=" |
";
return $ret;
_local_
@@use
name 【MIDIの曲名を入力】
info BGMを変更します
action 変更する
arg nocount
param 【midiのファイル名】,【作者】,【サイトのURL】,【作者のサイト名】
funci _local_
return "" if $main::MOBILE;
my $html="●音楽をチェンジします
";
$html.='曲名:
'.$USE->{name}.'';
$html.='作者: '.$USE->{param2}.'様 …
'.$USE->{param4}.'';
return $html;
_local_
func _local_
$DT->{user}->{midi}=$USE->{param1};
my $ret.="音楽を変更しました。
";
return $ret;
_local_
@@use
name 南の町
info BGMを変更します
action 変更する
arg nocount
param midi2.mid,氷石 彩亜,http://fhouse.s17.xrea.com/,FREEDOM HOUSE 2nd
funci _local_i2
func _local_2
@@use
name 王城
info BGMを変更します
action 変更する
arg nocount
param midi3.mid,氷石 彩亜,http://fhouse.s17.xrea.com/,FREEDOM HOUSE 2nd
funci _local_i2
func _local_2
・・・以下同様に続けていく
変更後
上記のような感じでアイテムを追加します。1つ目の「@@use」はサウンドボックスの説明になっています。カスタマイズできるので、各自変えてもよいでしょう。ただし、文字コードの関係で入力する文字によっては文字化けします。「能」なんかは文字化けしますので、そういった文字は「\」ではさんでやります。2つ目からはMIDI変更の記述です。上にもあるように、【midiのファイル名】,【作者】,【サイトのURL】,【作者のサイト名】の所にそれぞれ入力していきます。2番目からの「@@use」からは例になっているので参考にしてください。このとき注意しなければならないのが、半角スペースです。半角スペースは利用できません。例えば、作者の苗字と名前の間は半角スペースにするとエラーが出ます。半角スペースはすべて全角スペースに直します。曲名についても同様です。また、区切りとして利用しているカンマを曲名や作曲者名に含むことはできません。
@@use
name 【曲名】
info BGMを変更します
action 変更する
arg nocount
param 【midiのファイル名】,【作者】,【サイトのURL】,【作者のサイト名】
funci _local_i2
1つ分の曲
上記の文をつなげていくことで、項目を増やすことができます。また、「need」や「cost」、「time」等を追加することで、音楽の変更に必要なアイテム、金額、時間を設定することもできます。この辺は他のアイテムデータを見て参考にするといいと思います。最後に、アイテムデータ、MIDIデータ、midi.cgiをアップロードして完成です。ソース内の使い方にも書いてありますが、変更をしたあと[♪]を押すと、変更後のMIDIが流れます。変更した瞬間に再生される音楽が変わるわけではありませんのでご注意ください。