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

2008年02月29日

[復習]引数のデフォルト値を設定

引数のデフォルト値を設定する事ができる。
デフォルト値を設定するには関数に引数を設定する際に数値を入れる。
その数値が引数のデフォルト値になる。

例題

defaultParameterという関数に引数を設定。第一引数にデフォルト値を設定しない引数。第二引数にデフォルト値、「12」を設定した
引数を設定。


defaultParameterにアクセスする際に、第一引数だけに「1」の値を入れる。
defaultParameterが 呼び出し元が設定した値の1と、defaultParameterが第二引数に設定したデフォルト値の「12が出力される」


function defaultParameter(ef:uint,sp:Number=12)
{
trace(ef+sp);
}

defaultParameter(0)// 0,12

2008年02月28日

[復習]Stringの文字を抜き出すcharAtメソッド

charAtメソッドの復習です。

AS3 function charAt(index:Number = 0):String

最初の一文字だけ抜き出します。

var my_str:String="adc";

trace(my_str.charAt(0))//output a

2008年02月27日

[復習]配列のメソッドreverseを使って配列の並びを反転

配列のメソッドreverseを使って配列の並びを反転させます。

reverseメソッドを使う事で配列の並び順を逆にする事ができます。

例題

配列オブジェクトを生成。配列の中に1,2,3,4,5と五つの文字を入れる。trace()すると1,2,3,4,5の文字が返される。この配列オブジェクトにreverseメソッドを適用。再度trace()すると5,4,3,2,1の順に返される。
ソースコード | Flashゲーム研究所

2008年02月26日

[復習]hitTestPointメソッドを使ってオブジェクトが指定したx位置、y位置にあるかどうか判定

hitTestPointメソッドを使ってオブジェクトが指定したx位置、y位置にあるかどうか判定します。

hitTestPointメソッドの構成は

hitTestPoint(x:Number, y:Number, shapeFlag:Boolean = false):

となっています。

第一引数にはx値、第二引数にはy値、第三引数はshapeFlagです。

第三引数は代入しなくても判定可能です。自分は第三引数の代入は殆ど使ってません。

x値とy値はオブジェクトの表示コンテナではなくステージサイズを基準にしています。

例題

sample_mcというMCがhitTestPointで指定した値にヒットしているかどうか判定します。

sample_mcのx値は0、width値は100です。

hitTestPoint(100,0)にした時はtrue、hitTestPoint(100,0)にした時はfalseを返します。ソースコード | Flashゲーム研究所
posted by 神風記 at 20:00| メモ(復習 走り書き) | このブログの読者になる | 更新情報をチェックする

2008年02月25日

[復習]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を出力していく

2008年02月24日

[復習] 外部で読み込んだサウンドを停止する

外部で読み込んだサウンドを停止するにはsoundChannelオブジェクトを使用します。音楽ファイルを読み込んだsoundオブジェクトをsoundChannelオブジェクトに代入する。そのsoundChannleオブジェクト.stopメソッドで再生が停止される

ソースコード



var sample_so:Sound=new Sound();

var channel:SoundChannel;

sample_so.addEventListener(Event.COMPLETE,completeHandler);

sample_so.load(new URLRequest("sample.mp3"));

function completeHandler(evt:Event)
{
channel=sample_so.play();
}

function stopHandler(evt:Event)
{
channel.stop();
}

stopBtn.addEventListener(MouseEvent.CLICK,stopHandler);


posted by 神風記 at 00:00| メモ(復習 走り書き) | このブログの読者になる | 更新情報をチェックする

2008年02月23日

[復習]swfのロードとバイト数の計算

SWFをロードし、ファイルのバイト数を計測します。ファイルのロード状況をトレース、総て読み込まれたらファイルを表示します。ソースコード | Flashゲーム研究所
posted by 神風記 at 07:27| メモ(復習 走り書き) | このブログの読者になる | 更新情報をチェックする

2008年02月22日

[復習]ステージをフルスクリーンにするメソッド



[復習]ステージをフルスクリーンにするメソッドです。

import flash.events.FullScreenEvent;stage.addEventListener(FullScreenEvent.FULL_SCREEN, fullScreenHandler); var my_sp:Sprite=new Sprite();my_sp.graphics.beginFill(0x000000);my_sp.graphics.drawRect(0,0,80,50);my_sp.graphics.endFill();my_sp.y=200;var my_txt:TextField=new TextField();my_txt.text="フルスクリーン";my_txt.textColor=0xFFFFFF;my_txt.selectable=false;my_sp.addChild(my_txt);addChild(my_sp)my_sp.addEventListener(MouseEvent.CLICK,clickHandler);function clickHandler(evt:Event){ trace("evt="+evt.target) if (stage.displayState == StageDisplayState.NORMAL) { //画面サイズをフルスクリーンに stage.displayState = StageDisplayState.FULL_SCREEN; my_txt.text="ノーマル"; } else { //画面サイズノーマルにに stage.displayState = StageDisplayState.NORMAL my_txt.text="フルスクリーン"; }}function fullScreenHandler(evt:FullScreenEvent){ full_txt.text="適用"; trace("ここです") }
posted by 神風記 at 20:40| メモ(復習 走り書き) | このブログの読者になる | 更新情報をチェックする

2008年02月21日

キーボードを離した時のイベントリスナー KeyboardEvent.KEY_UP

キーボードを離した時のイベントリスナーは

KeyboardEvent.KEY_UP

です。

もちろん、離したキーのキーコードを取得する事もできるので、どのボタンを離したかを取得する事もできます。

stage.addEventListener(KeyboardEvent.KEY_UP,keyUpHandler);

function keyUpHandler(event:KeyboardEvent)
{
trace(event.keyCode)//離したキーのキーコードを取得
}
posted by 神風記 at 18:01| キーボード処理 | このブログの読者になる | 更新情報をチェックする

2008年02月20日

2008年02月17日

Flash Developで文字列の置き換えを行うショートカットキー

Flash Developで文字列の置き換えを行うショートカットキー。

ctrl+h

ctrl+h」でダイアログが開き、置き換えたい文字列を入れる欄と、置き換える文字列を入れる欄を選び、置き換える事ができます。
posted by 神風記 at 23:06| Flash Develop | このブログの読者になる | 更新情報をチェックする

2008年02月16日

配列の深いコピーを行う

配列の深いコピーを行います。


ByteArrayを使う事で、配列オブジェクトの値をコピーした後は、コピー元の配列の値が反映されない形で、配列オブジェクトのコピー生成を行う事ができます。


import flash.utils.ByteArray;

var my_arr:Array=new Array();

my_arr.push(1,3,5,7);

var copy_arr:Array=new Array();

//配列をコピーするメソッドにアクセス
copy_arr=copy(my_arr)

trace(copy_arr)//1,3,5,7 (my_arrと同じ値)

function copy(arr:Object):*
{
var my_ba:ByteArray = new ByteArray();
my_ba.writeObject(arr);
my_ba.position = 0;
return(my_ba.readObject());
}
posted by 神風記 at 15:00| 配列 | このブログの読者になる | 更新情報をチェックする

2008年02月15日

キーボードを押したというイベントを感知する

復習です。

キーボードを押したというイベントを感知する方法をおさらいします。

stageにイベントを定義する事でキーボードを押したというイベントを感知する事ができます。

stage.addEventListener(KeyboardEvent.KEY_DOWN,keyHandler);
posted by 神風記 at 16:39| キーボード処理 | このブログの読者になる | 更新情報をチェックする

2008年02月14日

XMLの値のデータ型の変換、実行を行う



XMLオブジェクトのデータ型のデフォルトは、「XML」です。

XMLに記述されているのが、文字列でも数字でも一律「XML」のデータ型です。

一度変数に、XMLの値を格納するのがベターな方法ですが、XMLにアクセスする際に直接データ型を指定する事で、そのまま、値を指定したデータ型へ変換し、使用する事ができます。

XMLオブジェクトのデータ型を指定して、そのまま値を使用する一例。

ch_arr[uint(item_xl[i].ch[chi].ui)][2].content.gotoAndStop(String(item_xl[i].cf[cfi].@str))

この様にデータ型を指定する事で、そのままXMLの値をFlashのオブジェクトに適用する事ができます。
posted by 神風記 at 06:54| XML | このブログの読者になる | 更新情報をチェックする

2008年02月13日

Flash Develpで文字列の検索を行うショートカットキー

Flash Develpで文字列の検索を行うショートカットキー

ctrl+F

ctrl+Fを押す事で、文字列の検索ボックスが開きます。

大体のエディターも文字列を検索する時のショートカットキーはctrl+Fを使うのですんなり馴染むショートカットキーだと思います。
posted by 神風記 at 19:48| Flash Develop | このブログの読者になる | 更新情報をチェックする

2008年02月12日

要素の下の属性名を自動的に検索し、実行するコードを考え中。



要素の下の属性名を自動的に検索し、実行するコードを考え中。

要素名だけ取り出してdispatchEventするコードは

c_sp.dispatchEvent(new Event(String(item_xl[index_ui].children()[i].name().localName)))//itemの上から順に要素数を取り出す

こんな感じで簡単にできるので、これをいじくって要素名と属性名だけで、dispatchEventする方法を色々試してみます。
posted by 神風記 at 01:56| メモ(復習 走り書き) | このブログの読者になる | 更新情報をチェックする

2008年02月11日

3Dアニメーションのオブジェクト制御をTween()クラスでやってみる



現在、3Dアニメーションをする際はTween()クラスで処理してます。

AS2の時代は3Dオブジェクトの移動、拡大はonEnterFrame()でやってたんですが、AS3の今はTween()クラスで移動、拡大してます。

AS2時代は、onEnterFrame()でオブジェクトのプロパティ(xやwidth)が規定値になったらif()文で止めるという、効率がよろしくない手法だったので、Tweenクラスで制御が楽になったのかなと個人的な感想。

でも周りでTween()クラスで3Dオブジェクトを制御している人がいないので、難しい制御ができないとかの、落とし穴がありそうな気もする。

とりあえず、Tween()クラスで3D制御やれるだけやってみて、突っかかったら適宜修正していく方針でいきます。
posted by 神風記 at 17:10| 3Dアニメーション | このブログの読者になる | 更新情報をチェックする

選曲の基準を決めたい

習作デモムービーに使う曲の選曲中。

選曲でムービー内容の大まかな指針も決まるので、どんなデモムービーを作りたいのかを頭で整理してから、選曲した方が効率がいいのかもしれない。

テーマか勢いか、それが重要らしい。

それ以外の要素も色々考える必要があるが、とりあえずは焦点を絞ってみる。
posted by 神風記 at 04:48| ムービー制作 | このブログの読者になる | 更新情報をチェックする