au携帯電話でFlash時計を作ってみる。
ということを、仕事の片手間(?)にやってみた。いわゆる、待ち受けFLASHですね。
昔から携帯画像は自作なので(笑)今回は動画をやってみたって感じです。
アナログ時計にしてみました。
- 用意するもの
- 操作手順
- 画像作成ソフトを使って時計の部品を作成する。
- 時計の台
- 時計の長針
- 時計の短針
- (時計の秒針)携帯電話のCPUスペックからみてない方がよさげ
- できあがった部品をそれぞれPNG形式で書き出す。
- フラッシュを起動する。
//時の取得 hr = fscommand2("GetTimeHours"); //分の取得 min = fscommand2("GetTimeMinutes"); //秒の取得 sec = fscommand2("GetTimeSeconds"); //年の取得 y = fscommand2("GetDateYear"); //月の取得 m = fscommand2("GetDateMonth"); //日の取得 d = fscommand2("GetDateDay"); //アナログ時計の表示 (注意!!!) hour._rotation = -(hr*60+min)/4; minute._rotation = -(min*60+sec)/10; //曜日の取得 w = fscommand2("GetDateWeekday"); //曜日の表示文字 switch (w) { case 0 : w = "sun"; break; case 1 : w = "mon"; break; case 2 : w = "tue"; break; case 3 : w = "wed"; break; case 4 : w = "thu"; break; case 5 : w = "fri"; break; case 6 : w = "sat"; break; } //桁の追加 if (hr<=9 and hr>=0) { hr = 0 add hr; } if (min<=9 and min>=0) { min = 0 add min; } if (sec<=9 and sec>=0) { sec = 0 add sec; }
- 2フレーム目の上で右クリック、「キーフレームの挿入」を選択
- 2フレーム目を選択しActionScriptを記入
gotoAndPlay(1);
- 最後に、パブリッシュ設定から「Flash Light 1.1」にして、パブリッシュ。
出来上がったデータはWebにアップロードするか、SDカードに入れちゃいましょう。
さて、今回の作成の注意点ですが、ふつうの時計を作るのなら、
//アナログ時計の表示 (注意!!!)
hour._rotation = -(hr*60+min)/4;
minute._rotation = -(min*60+sec)/10;
この部分の設定を変更しなければなりません。
上記の計算の意味は、逆回転をさせています。
時間の方は、24時間表記のアナログ時計にしたので、
時間(Max23)×60分+現在の分 という計算、最大値は23×60+60(※本当は59)=1440になります。つまり、1440分で一周360度させる訳なので、1440/360=4が出てくるので、4分ごとに1度回ればいいわけです。
ちなみに12時間で一周するふつうの時計の場合は、
(hr*60+min)/2 でOKだと思います。また、CPUに負荷をかけたくない場合は、1時間毎に12/360度回転するようにhr*30でもOKかな?
分針についても同じことがいえますが、ちょっと考えればすぐに答えが出ると思うので割愛
出来上がるとこんな感じ……。現在待ち受けに設定中