FLASH - 電波編


携帯だとsetProperty使えないんですね。
普通に作ってコンパイルすると、ことあるごとにお叱り受けます。
for inも使えないっぽくて、多少面倒な部分も。



では今回は電波編のメモ。


  • パターン1:電波量をバーで表示


電波量を示すバーを作ってシンボル化し、以下を記述する。

// その端末の最大電波値を取得
maxSignal = fscommand2("GetMaxSignalLevel");


// 現在の電波値を取得
signal = fscommand2("GetSignalLevel");


// 電波量を%値に変換
sigLevel = int(signal/maxsignal*100);


// バーの横幅を伸縮
_xscale = sigLevel;


いくら%表示にしても、4段階くらいしかないのでバーの動きは大きいデスw


  • パターン2:電波によって表示する画像を変更


シンボルは判断用と、表示用の二種類作る。

  • 表示用シンボル
  1. シンボルの中に4フレーム作る
  2. それぞれに名前をつける(例:ZERO、LOW、MIDDLE、HIGH)
  3. それぞれに画像などを配置
  4. それぞれに【stop();】を記述
  5. シンボルをシーンに貼り付け、名前を付ける(例:gazo_mc)
  • 判断用シンボル

電波量を取得し、4つのうちどれかに移動させる。
具体的には以下。

DoCoMo(maxSignalが3)の場合
 signal = 3なら HIGHに移動
 signal = 2なら MIDDLEに移動
 signal = 1なら LOWに移動
 signal = 0なら NONEに移動


au(maxSignalが4)の場合
 signal = 4なら HIGHに移動
 signal = 3なら MIDDLEに移動
 signal = 2なら MIDDLEに移動
 signal = 1なら LOWに移動
 signal = 0なら NONEに移動


softbank(maxSignalが100)の場合
 signal = 100なら HIGHに移動
 signal = 33なら MIDDLEに移動
 signal = 2なら LOWに移動
 signal = 0なら NONEに移動


移動の仕方は以下。

tellTarget("../gazo_mc");
gotoAndStop("HIGH");


そして判断用シンボルも、表示用シンボルと同じ階層(の見えないところ)に貼る。



地下鉄に乗らない人はどうやって動作確認してるのでしょう。。。