命令リファレンス 


Ymplayer.getMidiList

Tonyuで登録されているMidiファイルの一覧を配列で返します。

Tonyuの開発環境版のツールにある「BGM・効果音」ウィンドウで表示されている順番に、
Midiファイルのサウンドオブジェクト(「$se_xxxx」の形式)が配列に格納されています。
※ Wavファイルのサウンドオブジェクトは配列から省いています。
※ 配列にはMzoファイルも含まれますが、MusicPlayerの情報取得機能で取得できる、
  現在再生中のMidi番号(playerMidiPlayNo)には反映されません。(mzo音楽はTonyuが演奏するため)

※ このメソッドのOgg版はありません。

書式

getMidiList()

戻り値

Midiのサウンドオブジェクトが格納された配列

例1

(Midiファイルを複数登録してみてください。Midiの名前は何でもいいです)
extends SpriteChar;

setFont("MS ゴシック"); // 文字をそろえやすくなる
$mplayer = new Ymplayer();
bgmAry = $mplayer.getMidiList();
bgmArySize = bgmAry.size();
selectBgm = 0;
if (bgmArySize == 0) {
  while (1) {
    drawText(100, 0, "Midiが登録されていません", $clWhite, 20);
    update();
  }
}
$mplayer.setGetMode(1000); // 情報取得機能ON(定期的更新なし)
$mplayer.updatePlayInfo(); // 更新
while (1) {
  if (getkey(90) == 1) $mplayer.play(bgmAry.get(selectBgm), 1); // Z:繰り返し再生
  if (getkey(88) == 1) $mplayer.stop();                         // X:停止
  if (getkey(67) == 1) $mplayer.pause();                        // C:一時停止
  if (getkey(86) == 1) $mplayer.restart();                      // V:一時停止から再開
  
  if (getkey(38) % 6 == 1 && selectBgm > 0)              selectBgm --; // ↑:選択
  if (getkey(40) % 6 == 1 && selectBgm < bgmArySize - 1) selectBgm ++; // ↓:選択
  
  for (i = 0; i < bgmArySize; i++) {
    drawText(100, 15*i+30, bgmAry.get(i).getName(), $clWhite, 9); // サウンドオブジェクトの名前を表示
  }
  if (bgmArySize > 0) drawText(85, 15*selectBgm+30, "⇒", $clWhite, 9);
  
  $mplayer.getPlayerStatus(1); // 状態取得(MusicPlayerの状態とmidi番号のみ取得する)
  if ($mplayer.playerMidiPlayNo != null) {
    drawText(0,  0, "演奏中:" + bgmAry.get($mplayer.playerMidiPlayNo).getURL(), $clWhite, 9);
    drawText(0, 15, "演奏中のmidi番号:"+$mplayer.playerMidiPlayNo             , $clWhite, 9);
  }
  update();
}
サウンドオブジェクト.getName() で、そのオブジェクトの名前を取得できます。
サウンドオブジェクト.getURL() で、Midiファイルがあるパス(絶対パス)を取得できます。
Kernelフォルダ内の Resource.tonyu で記述されている隠しメソッドです。

戻る