あらためてflash.
最近, すっかりご無沙汰していましたが...
習作UI: 縁日の金魚を再現してみた - Life is beautifulの記事を読んでおお!すげーと思った。
あらためて、以前我流でとりあえずflash遊んでみたがそんな程度のスキルでは結局使い物にならんな... と。
で、上の例など全く無理だがとりあえず、もう一度頭の中でflashを整理してみようかなと。
flexだのactionscript3.0だの、今後flash系のアプリはとりあえず作り方は押えるベキかなと。
とりあえず、flash & actionscript2.0 にて適当に上の金魚に似ても似つかないが、ボールが動き回るものを作ってみた。
重いので掲載を外した。
<--
-->
さて、上の作り方は以下の通り
ボール1個を表すMovieClipを作ります。とりあえず、丸の絵を描いておきます。
リンケージを以下の通りします

で、次にこのballの振る舞いを定義する ball.as を別ファイルで作ります。
上の [AS2.0クラス] の部分で定義した ball というのはそういう意味です。
次のように中身を記述します。
class ball extends MovieClip {
var speed:Number = 0;
var angle:Number = 0;function ball() {
this.speed = Math.ceil(Math.random()*5);
this.angle = Math.floor(Math.random()*360);
}function onRollOver() {
this.speed++;
}function onEnterFrame() {
this['num_txt'].text = this.speed+'-'+this.angle;
this._x += Math.cos(this.angle * Math.PI/180) * this.speed;
this._y += Math.sin(this.angle * Math.PI/180) * this.speed;
if(this._x > _global.maxX) {
this.angle = 180 - this.angle;
}
if(this._x < 0) {
this.angle = 180 - this.angle;
}
if(this._y > _global.maxY) {
this.angle *= -1;
}
if(this._y < 0) {
this.angle *= -1;
}
}}
上は各ballの振る舞いを定義しているのですが、ポイントは
- 各ballはその動作速度を表すspeedと、動作方向(ベクトル)を表すangleを持つ。
- 各ballの横に現在のspeedとangleをラベルとして表示する
- ballをマウスオーバするとspeedが1ポイント増加する
- 各フレーム毎の動作を定義する(onEnterFrame), speedとangleから XY方向の移動量を求める。壁に当たったときは自然な形で跳ね返るようにangleを変化させる。
とりあえず、ballの動きはこの程度にして、次はメインのステージの1フレーム目に以下を記述する. (シーン1-フレーム1のアクション)
var MAX_MC:Number = 30;_global.maxX = 400;
_global.maxY = 400;
var ball_mc = new Array();for(var i=0; i<MAX_MC; i++) {
_root.attachMovie('ball', 'ball' + i,
{_x:Math.floor(Math.random()*360)+20,_y:Math.floor(Math.random()*360)+20});
ball_mc[i] = eval('_root.ball'+i);
}stop();
これだけで、とりあえず、上のflashができる。
今日はそんだけ。
トラックバック(0)
このブログ記事を参照しているブログ一覧: あらためてflash.
このブログ記事に対するトラックバックURL: http://hiyuzawa.jpn.org/MT-4.0-ja/mt-tb.cgi/40

HotPepperAPIとGoogle/YahooMapAPIと連動させたアプリ。
■FlashImageSearch

flashで見る画像検索。アイドルデータベースと連動。
■FindJob転職情報メール一気読み

FindJobから定期的に送られてくる転職情報メールを一気に確認するためのTool。
■新着pickup

Yahoo!の新着ピックアップサイトをサムネイル付きで表示。自動更新。
■AU-GPS with Gmap

AU携帯電話をGPSとして利用.GoogleMapで行動を表示.製作記録まとめ中!!
■finding_yado

じゃらんAPIを使った宿探しサイト.リクルートMashupコンテスト応募作品
■オークション商品分析Tool

Y!オクAPIを使って多角的に商品を表示。Flashにて
■Yahoo!Directory with History

FlashでY!カテゴリをブラウズ.登録日時も合わせてビジアル表示.
■Okiny-Flash-Search

Yahoo!検索APIを用いてflash上で検索.ソフトウエアキーボドや検索語Suggest,人気語なども表示.
■Okiny-Search

YahooUILibraryのEffectとYahoo!検索APIを組み合わせた面白い検索結果の表示方法を体験.
■Quick-Dictonary

firefoxのGrasemonkeyを使ってウエブ上の単語(英語/日本語)を簡単に単語翻訳
■サーバサイドブックマーク

環境やブラウザに問わずどこでも自分のブックマークがみれるTool. タグによる保存も..本人はてぶ使ってますorz...
■myweb-bookmark/search

ウエブ/画像/Q&A/Amazon/Blogみんな一度に検索しちゃいます
■myweb-bookmark

ウエブ/Q&A/Amazon/BlogみんなでブックマークしちゃうTool.
--形にまだなってないやつ--
■地域スポット(観光地)登録
位置情報とコンテンツ情報を登録しておくといいことあるかも...
■国土数値情報ウエブサービス化
ダウンロードしてGoogleMapに重ねてみました...
