トップへ戻るニュースフォーラムFLASH-ML 過去ログBak@Flaダウンロードよくある質問と答
ログイン
ユーザ名:

パスワード:


パスワード紛失

新規登録
メインメニュー
メイン
   コーダーズルーム【スクリプト系】
     「ダウンロード完了」を知りたいものが複数ある場合
投稿するにはまず登録を

フラット表示 前のトピック | 次のトピック
投稿者 スレッド
Fumio
Åê¹ÆNo.3723
投稿日時: 2004-2-12 12:58
ちょんまげら
居住地: 東京
投稿: 4531
使用環境:
Re: 「ダウンロード完了」を知りたいものが複数ある場合
MP3サウンドファイルふたつなら、入れ子にしてもよいとは思います。数があるときは、配列に入れて管理する方法が考えられます。
引用:
kirarinさんは書きました:
_root.sw_BGM = new Sound(this);
_root.sw_BGM.onLoad = function(success) {
	if (success) {
		//ロード成功
		_root.gotoAndPlay("start");
	// [中略]
}
_root.sw_BGM.loadSound("BGM1.mp3", false);

これはこれでうまく動作したのですが、実はもう一つダウンロードしたいサウンド(BGM2.mp3)があります。
2つのサウンド(BGM1.mp3とBGM2.mp3)のダウンロードが完了してからフレーム(Start)へ飛んで欲しい場合、どのように記述したらよいのでしょうか?

「ロード成功」の部分に、↑のような記述を入れ子していけばよいのかとも思ったのですが、それではあまり綺麗な書き方ではないような気がして・・・

// _root
// Soundインスタンスのターゲット用にmy0_mcとmy1_mcを配置
// フレームアクション
var nID = 0;
var sounds_array = new Array();
sounds_array.push(["BGM1", new Sound(my0_mc)]);
sounds_array.push(["BGM2", new Sound(my1_mc)]);
xLoadSound();
function xLoadSound() {
	if (nID<sounds_array.length) {
		var sound_str = sounds_array[nID][0]+".mp3";
		var my_sound = sounds_array[nID][1];
		my_sound.onLoad = xOnLoad;
		my_sound.loadSound(sound_str, false);
		++nID;
	} else {
		xLoadComplete();
	}
}
function xOnLoad(bSuccess) {
	if (bSuccess) {
		//ロード成功 
	} else {
		//ロードNG 
	}
	xLoadSound();
}
function xLoadComplete() {
	nID = 0;
	_root.gotoAndPlay("start");
}
// サウンド再生用関数(おまけ)
function xPlaySound(nSoundID) {
	for (var i = 0; i<sounds_array.length; ++i) {
		sounds_array[it][it].stop();
	}
	var my_sound = sounds_array[nSoundID][1];
	my_sound.start();
}


----------------
 

フラット表示 前のトピック | 次のトピック

題名 投稿者 日時
   「ダウンロード完了」を知りたいものが複数ある場合 kirarin 2004-2-12 11:28
   » Re: 「ダウンロード完了」を知りたいものが複数ある場合 Fumio 2004-2-12 12:58
       Re: 「ダウンロード完了」を知りたいものが複数ある場合 kirarin 2004-2-12 13:09

投稿するにはまず登録を
 
Copyright (C) 2003 FLASH-japan. All rights reserved.
Powered by Xoops