サウンドと多次元配列

お遊び的な要素だけど、ゆっくりペインターでゆっくりが喋るとうざくなって良いかなと思い、考えてみた

クリックするとランダムでしゃべります。吹き出し付き。
音の扱いはじめてやった。基本、画像と一緒だね。ライブラリからリンケージで書き出すっていう。
あとは多次元配列。

//ライブラリから音声のインスタンス作るよ
var yu_s:Sound=new yukkuri_s;
var si_s:Sound=new siko_s;
var ba_s:Sound=new baka_s;
var kw_s:Sound=new kowai_s;
var ka_s:Sound=new kawaii_s;
var ko_s:Sound=new kosu_s;

//多次元配列で音声ファイルとセリフを会わせる
var myArray:Array = new Array();

myArray[0] = ["yu_s", "ゆっくりしていってね"];
myArray[1] = ["si_s", "しこってもいいのよ"];
myArray[2] = ["ba_s", "ばかなの?しぬの?"];
myArray[3] = ["ko_s", "こすってもいいのよ"];
myArray[4] = ["ka_s", "かわいくてごめんね"];
myArray[5] = ["kw_s", "おお、こわいこわい"];

//とりあえずクリックすると喋る仕様
yukkuri_mc.addEventListener(MouseEvent.CLICK,eSound);

function eSound(event:MouseEvent):void {
	//ランダムに選択
	var i:Number = Math.floor (Math.random () * 6);
	var str = myArray[i][1];
	var snd = myArray[i][0];

//当然ながらsnd.play();とかでは正しく動かなかったのでswitch文。
//もっとスマートにやる方法ないんだろうか

switch(snd){
	case "yu_s":
		yu_s.play();
		break;
	case "ba_s":
		ba_s.play();
		break;
	case "ko_s":
		ko_s.play();
		break;
	case "ka_s":
		ka_s.play();
		break;
	case "kw_s":
		kw_s.play();
		break;
	case "si_s":
		si_s.play();
		break;
	}

	serif_txt.text = str;
	
}

あ、画像は2ch全AAイラスト化計画のゆっくり霊夢を勝手に使わせて頂きました。
かなり改良の余地がある。
音が出てるときクリックしたらダブってしまうし、クリックじゃなくドラッグ(絵描いてるときに喋らす設定にしたいから…)で音出るようにもしないといけないし。
しかし、本当にこんな機能あったらウザイだけかな。ま、勉強として。