音楽再生サンプル
概要
tutorialsに"songs and events"という「振ると音楽をランダム再生」というものがありますが、これが何故かエラーで使えません(IS12Tだけ?)。
でもとても簡単なので自分で作ってみましょう。
「振ると端末内の曲をランダム再生、もう一度振ると停止」という動作にします。
"//"で始まるコメント行は入力する必要ありません。
data
| 変数名 |
種別 |
初期値 |
説明 |
| p |
NUM |
0 |
現在演奏中なら1 |
NUMじゃなくてBooleanでもいいです。今回はNUMで。
actions
初期化処理
- action main()
- // 前回終了時の値が残ったままなので、ここで初期値を入れておく
- data → p := 0
再生用サブルーチン
- action play_rand()
- // 端末に入っている曲数をmに格納
- var m := media → ♬songs → count
- // 0~m-1までの乱数をaに格納(曲数10なら0~9のどれかが入る)
- var a := math → rand(m)
- // 曲番号aの曲名を表示
- media → ♬songs → at(a) → name → post to wall
- // 曲番号aの曲を再生
- media → ♬songs → at(a) → play
- // グローバル変数pを1にして再生中であることを示す
- data → p := 1
停止用サブルーチン
- action play_stop()
- // 曲を停止
- player → stop
- // グローバル変数pを0にして停止中であることを示す
- data → p := 0
- // stopと表示
- "stop" → post to wall
events
端末が振られたときの処理
- event shake()
- // 再生中か?
- if data → p = 1 then
- // 再生中なら停止用サブルーチンをコール
- code → play_stop
- else
- // 停止中なら再生用サブルーチンをコール
- code → play_rand
最終更新:2011年10月26日 18:21