ASが運営するWebサイトに飛びます

2007年08月31日

AS3でXML画像ギャラリー

AS3でXML画像ギャラリーを構成します。
AS3でXML画像ギャラリーを生成します
前から少しずつUPしていきましたが
配列の処理など必要な処理はここで記述したので今回はすべてのソースコードを公開します
完成品はこういう風に表示されます
今回は動く事意外は考えないでコーディングしたのでソースコードは非常に雑で、汎用性は低いです

基本的な流れ

サムネイルが画面左に表示される
サムネイルが総てロードされるとサムネイルがクリック可能になる
サムネイルをクリック
本画像が画面右にクロスフェードで表示される
用意するファイルサムネイル画像のサイズは80×80
本画像のサイズは640×480にしておいてください
サムネイル画像(80×80)本画像(640×480)
サムネイルと本画像のパスを記載したXMLファイル

処理の流れ

XMLファイルをロードする
XMLから読み込む画像の数を判断するサムネイルを画像を格納するSpriteオブジェクトとLoaderオブジェクトを画像数分生成し、各配列に格納する
サムネイル画像を読み込み配列に格納されたSpriteオブジェクトに一つ一つ表示させる
サムネイル画像を総て読み込んだら総てのサムネイルにMouseEventを割り当てる。(クリックすると本画像をロードするイベント)
一度に表示されるサムネイルの数は5つ。
残りのサムネイルはXMLのノード順にマスクの下に表示されている。
5つ以上画像がある際はサムネイルをナビゲートするカーソルを表示する。
カーソルにはMouseEventを割り当てる(クリックするとマスクに隠れているサムネイルを5つ持ってくるイベント)
画像を読み込む際は、前の画像を表示させたままもう一つのLoaderで画像を読み込み前の画像とクロスフェードで表示する形式を取っているのでLoaderオブジェクトは二つ用意しておく。
本画像を表示する2つのLoaderオブジェクトにOPEN,PROGRESS,COMPLETEの三つのイベントを割り当てる。
OPENのイベントハンドラではローディングバー等のローディング画像を表示させる
PROGRESSのイベントハンドラではローディングの進行状況を表示させる
COMPLETEのイベントハンドラではローディング画像をremoveする
読み込んだ本画像を表示させ前の画像のアルファのアルファのをフェードアウト、新たに読み込んだ画像をフェードイン
本画像が表示される以上動作するソースファイルを用意したので宜しければ実際にダウンロードして色々試してみてください画像を用意してXMLに画像パスを書くだけですぐ動作します。
XMLの操作のみで更新できますのでFLASHでパブリッシュせずに
XMLの更新だけでギャラリーが更新されます

ソースファイル

非常に雑な作りなのでソースファイルの内容は変更する可能性があります最新の仕様はこのブログにアップしていきたいと思います


続きを読む
posted by 神風記 at 22:57| Comment(0) | TrackBack(0) | XML | このブログの読者になる | 更新情報をチェックする

Webページを開くnavigateToURLについて

Webページを開くnavigateToURLについて解説します。

public function navigateToURL(request:URLRequest, window:String = null):void

navigateToURLの第一引数はURLを記述、第二引数はウィンドウのタイプを指定します。

例題

ボタンを押すと新規のウィンドウでWebページが開きます。

sample_spボタンを生成。MouseEvent.CLICKで「jumpURLHandler」というメソッドを呼び出す。

jumpURLHandlerの処理内で第一引数にURLを記述、第二引数に"_blank"と記述。

新しいウィンドウでURLのWebページが開きます。
続きを読む

ギャラリー640×480版

表示画像が640×480のギャラリー続きを読む

2007年08月30日

Stringの後ろにStringを追加するconcatメソッドについて

Stringの後ろにStringを追加するconcatメソッドについて解説していきます。

concatはStringのデータに文字列を追加するメソッドです。

concatメソッドを実行した元のStringオブジェクトの内容は変化しません。

例題

concatメソッドで文字列に曜日を順番に表示します。出力結果は
今日は月曜日
今日は火曜日
今日は水曜日
今日は木曜日
今日は金曜日
今日は土曜日
今日は日曜日
となります。
sample_str:String(concatを実行)、dayArr:Array(追加する各文字列を格納)、day_str:String(sample_strにdayArrの文字列を追加したオブジェクト)
の三つのオブジェクトを定義。dayArrには曜日順に月〜日の文字列を格納しておく。
for文の処理内でday_strにsample_str.concat(dayArr[i]+"曜日")の処理を行う。sample_strのconcatメソッドでdayArr[i]の各値を追加していく。

sample_str.concatでdayArrの各文字列を追加した文字列を代入したday_strを出力していく
続きを読む
posted by 神風記 at 11:17| Comment(0) | TrackBack(0) | テキストフィールド | このブログの読者になる | 更新情報をチェックする

2007年08月29日

テキストフィールドを返すメソッド | Flashゲーム研究所

returnを使ってTextFieldオブジェクトを返します。returnで値を返す場合は処理の開始前に:TextFieldの様にデータ型を定義します。データ型はreturnで返されるオブジェクトと同じデータ
型と同じでなければなりません。今回はテキストフィールドうを返すので
function setText(myTxt:TextField,myStr:String,myFmt:TextFormat):TextFieldと定義します。

例題

最初に my_txt:TextField、my_str:String、my_fmt:TextFormatと三つの変数を定義する。

メソッドsetTextを定義。引数にmyTxt:TextField,myStr:String,myFmt:TextFormatの三つのオブジェクトを定義する。返されるデータ型はTextField。setTextにmyTxtにテキストフォーマットオブジェクトmyFmtを代入し、文字列にmyStrを代入。最後にreturnでテキスト
フィールドを返す。

addChild((setText(my_txt,my_str,my_fmt))でsetTextで処理したテキストフィールドがステージ上に表示される。

続きを読む
posted by 神風記 at 13:35| Comment(0) | TrackBack(0) | メソッド研究 | このブログの読者になる | 更新情報をチェックする

2007年08月28日

関数の値、計算結果を返すreturnについて

returnは関数の計算結果、値を返す処理です。Flashゲームの制作では様々な計算を行います。膨大な計算を全部手作業で行うのは効率的ではありませんしミスも出やすくなります。そこで関数の計算結果を返してくれるreturnで計算を効率良く行います。関数に引数を渡し、計算結果を返してくれるreturnは円滑に計算処理行う上で非常に役に立ちます。まずはreturnの基本的な使い方から解説します。returnは数値や文字列など総てあらゆる数値を返してくれますが今回は数値の計算をreturnを使って行います。

「例題」
getNum関数を作成。Numberの引数、a,b,c,d四つのNumber引数を設定する。getNum内にa+b+c+dと引数をプラスする処理、そしてその計算結果を
返す処理(return)を定義します。

getNum引数に(12,34,27,7)4つの引数を定義。getNumが 12+34+27+7(a+b+c+d)の計算結果をreturnで返す。returnで返された数値が「sample_num」に代入されます。

続きを読む
posted by 神風記 at 12:23| Comment(0) | TrackBack(0) | メソッド研究 | このブログの読者になる | 更新情報をチェックする

2007年08月27日

flaファイルとは違うフォルダ内のクラスファイルをロードする

今回はflaファイルと違うフォルダにあるクラスファイルをロードするための方法を説明します。

fla側にimport、as側にpackage処理を行う事でflaファイルと違うフォルダにあるクラスファイルも参照する事ができます。

flaファイルが違うフォルダからクラスを呼び出す場合fla側にはimport.フォルダ名.*クラス側にはpackage クラス名を記述する必要があります。続きを読む
posted by 神風記 at 13:15| Comment(0) | TrackBack(0) | クラス | このブログの読者になる | 更新情報をチェックする

2007年08月26日

配列のindexOfメソッドの使用法

配列のindexOfメソッドについて解説します。うまく使いこなすと非常に使えるメソッドです。

indexOfは対象のオブジェクトが配列の何番目に格納されているかを参照するメソッドです。配列.indexOf(target)で第一引数のtargetが配列の何番目に格納されているかを参照しています。

indexOfメソッドはFlashゲーム制作の時、どのオブジェクトにイベントが起こったのか判断する際に非常に使えるメソッドです。応用方法は後々記述します。

基本的な記述方法





続きを読む
posted by 神風記 at 22:13| Comment(0) | TrackBack(0) | 配列 | このブログの読者になる | 更新情報をチェックする

2007年08月25日

Loaderオブジェクトのcontentプロパティでロードしたswfの変数を参照する

Loaderオブジェクトのcontenプロパティでロードしたswfの変数を参照する事ができます。

Flashゲームを制作する際は外部swfファイルをロードする処理が多くなります。その際にロード元が
ロードしたswfにプレイヤーのステータスやスコアなどの変数を渡したい時などにLoader.contentは役立つと思います。

あらかじめ、Loader.contentへのパスを変数で定義しておく必要があります。
LoaderがloadをCOMPLETEした時にLoader.content.変数名でアクセスするとswfに変数名が記述されていてもエラーが起こります。
これを防ぐにはあらかじめ、Loader.contentのパスを変数で記述しておく必要があります。
var path:Object=Loader.content;と定義した際にLoaderがloadCOMPLETEした際にpath.変数名でアクセスするとエラーが起きずにロードされた
swfに定義した変数を参照できます。

例題はこちらから


続きを読む
posted by 神風記 at 01:00| Comment(0) | TrackBack(0) | 外部SWFの操作 | このブログの読者になる | 更新情報をチェックする

2007年08月24日

配列の値を切り取るspliceについて

配列の値を削除する事ができるspliceについて解説します。
このメソッドを使うことで配列の中身の削除や追加など配列の中身を変更できます。
引数では配列の操作範囲を定義します。
第一引数は操作を行う配列エレメントのインデックス位置です。配列の操作を行う開始位置です。
第二引数では第一引数で指定した位置からいくつ配列を操作するかを定義します。配列をいくつ操作するかを定義します。
配列の操作は膨大なデータを扱うFlashゲームの制作に必須です。この様に配列を直接変更するspliceメソッドも使う機会が多いと思います。

今回は配列を生成しその配列の値をspliceメソッドで削除する処理を行います。



続きを読む
posted by 神風記 at 00:39| Comment(0) | TrackBack(0) | 配列 | このブログの読者になる | 更新情報をチェックする

2007年08月23日

配列を複製するsliceメソッドについて

配列を複製する「slice」メソッドについて解説します。この「slice」メソッドを使う事で指定した配列の値を複製できます。
Flashゲーム制作では配列を使用する機会が多いので配列の値を選択して複製するこの処理は押さえておきたい所です。

続きを読む
posted by 神風記 at 10:02| Comment(0) | TrackBack(0) | 配列 | このブログの読者になる | 更新情報をチェックする

2007年08月22日

データ型をnumber型に変更するparseIntについて

データ型をnumber型に変更するparseIntについて解説します。 続きを読む
posted by 神風記 at 20:00| Comment(0) | TrackBack(0) | データ型 | このブログの読者になる | 更新情報をチェックする

変数のデータ型を調べる「typeof」について

変数のデータ型を調べる「typeof」について解説します。続きを読む
posted by 神風記 at 01:00| Comment(0) | TrackBack(0) | データ型 | このブログの読者になる | 更新情報をチェックする

2007年08月21日

TextFieldTypeクラスについて

AS3で生成したテキストフィールドの型を変更する事が可能なTextFieldTypeクラスについて解説します。
このクラスを使うことでAS3で生成したテキストフィールドの型を変更する事が可能です。続きを読む
posted by 神風記 at 19:47| Comment(0) | TrackBack(0) | テキストフィールド | このブログの読者になる | 更新情報をチェックする

配列を前から順に取り出す。

配列を前から順番に取り出します。

続きを読む
posted by 神風記 at 14:41| Comment(0) | TrackBack(0) | 配列 | このブログの読者になる | 更新情報をチェックする

2007年08月20日

配列の値の数を調べるlengthについて

配列の値の数を調べるlengthについて記述します続きを読む
posted by 神風記 at 09:24| Comment(0) | TrackBack(0) | 配列 | このブログの読者になる | 更新情報をチェックする

2007年08月19日

配列の先頭に値を追加する

配列の先頭に値を追加するunshiftについて

続きを読む
posted by 神風記 at 02:25| Comment(0) | TrackBack(0) | 配列 | このブログの読者になる | 更新情報をチェックする

2007年08月18日

AS3 XMLギャラリーのサンプル

AS3で構成したXMLギャラリーの簡単なエンジンを開発。動作テストを兼ねてTOPにおいてます。XMLで画像へのパスを記述→自動的にサムネイルを生成→クリック→クロスフェードで画像表示という構成。後々ソースコードをアップします。画像はAS3で製作中のFlashゲームのもの。
posted by 神風記 at 14:33| Comment(0) | TrackBack(0) | XML | このブログの読者になる | 更新情報をチェックする

配列に値を追加する

配列に値を追加するpushについて解説します。
続きを読む
posted by 神風記 at 01:15| Comment(0) | TrackBack(0) | 配列 | このブログの読者になる | 更新情報をチェックする

2007年08月17日

loaderオブジェクトがloadしたswfがrootの変数を参照するには

rootにaddChildしたloaderオブジェクトがswfファイルをloadした際にloaderにロードされたswfがrootの変数を参照する方法を解説します。loaderにロードされたswfがrootの変数を参照する処理はFlashゲームを制作する上で使用頻度が高い処理だと思います。


続きを読む
posted by 神風記 at 01:00| Comment(0) | TrackBack(0) | 外部SWFの操作 | このブログの読者になる | 更新情報をチェックする