サイトコンテンツの追加を予定しています。
現在制作中のゲーム「神風」のごく短い体験版の様なものをプレイできるコンテンツ作る予定です。

2008年04月30日
2008年04月14日
AfterEffectsカテゴリを新設しました

AfterEffectsカテゴリを新設しました。
基礎の基礎から、ゲームのムービーや、演出のエフェクト等ができるレベル位まで行うようにしていきます。
2008年04月13日
2008年04月12日
[復習]?と:を使って条件分岐処理を行います。
?と:を使って条件分岐処理を行います。
例文
(sample2_ui<sample_ui)?trueMethod():falseMethod()
(条件文)?trueの場合の処理:falseの場合の処理
という風に記述します。
:の前の処理がtrueの場合の処理。
:の後の処理がfalseの場合の処理です。
簡潔に分岐処理を行う場合はこの手法がお勧めです。
var sample_ui:uint=10;
var sample2_ui:uint=8;
decisionCondition();
function decisionCondition(){
(sample2_ui<sample_ui)?trueMethod():falseMethod()
}
function trueMethod(){
trace(":(コロンの)前のtrueの場合の処理が実行されました")
}
function falseMethod(){
trace(":(コロン)の後のfalseの処理が実行されました");
}
例文
(sample2_ui<sample_ui)?trueMethod():falseMethod()
(条件文)?trueの場合の処理:falseの場合の処理
という風に記述します。
:の前の処理がtrueの場合の処理。
:の後の処理がfalseの場合の処理です。
簡潔に分岐処理を行う場合はこの手法がお勧めです。
var sample_ui:uint=10;
var sample2_ui:uint=8;
decisionCondition();
function decisionCondition(){
(sample2_ui<sample_ui)?trueMethod():falseMethod()
}
function trueMethod(){
trace(":(コロンの)前のtrueの場合の処理が実行されました")
}
function falseMethod(){
trace(":(コロン)の後のfalseの処理が実行されました");
}
2008年04月11日
!(論理否定演算子)を使ってBoolean変数がtrueかfalseかを判断
!(論理否定演算子)を使ってBoolean変数がtrueかfalseかを判断します。
var isBtn:Boolean=false;
if(!isBtn){
trace("falseです");
}
変数の前に「!」をつける事によって変数が「false」の場合はという条件式になります。
Boolean変数のtrue,falseを判断するのに非常に便利な演算子なので覚えておく事をおすすめします。
ソースコード | Flashゲーム研究所
var isBtn:Boolean=false;
if(!isBtn){
trace("falseです");
}
変数の前に「!」をつける事によって変数が「false」の場合はという条件式になります。
Boolean変数のtrue,falseを判断するのに非常に便利な演算子なので覚えておく事をおすすめします。
ソースコード | Flashゲーム研究所
2008年04月10日
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のオブジェクトに適用する事ができます。
2008年04月09日
[復習]SharedObjectの保存をその場で行うflush()メソッド
SharedObjectの保存をその場で行うflush()メソッドについて解説します。
public function flush(minDiskSpace:int = 0):String
第一引数はSharedObjectに割り当てる必要のある最小ディスク領域 (バイト単位) を指定します。
引数はデフォルトで0です。
flush()メソッドはローカルに作成されたSharedObjectをただちにローカルファイルに書き込みます。このメソッドを使用しない場合、SharedObjectがファイルに書き込まれるのは、SharedObjectセッションの終了時となります。
それはswfファイルが閉じられるときです。
SharedObjectが参照されなくなってガベージコレクションされるとき、SharedObject.clear() または SharedObject.close() が呼び出されたとき、のいずれかの時点になります。
例題
flush()メソッドを使ってmy_soというSharedObjectのデータを保存する(solファイルの生成、更新を行う)
save_btn.addEventListener(MouseEvent.CLICK,saveHandler)
var my_so:SharedObject;
my_so=SharedObject.getLocal("getfordasave02");
var index_ui:uint=20;
//localPath
function saveHandler(evt:Event)
{
//dataプロパティにdata1_numという保存変数を生成しその中にindexuiの値を入れる
trace("セーブされました。flush()を実行します")
my_so.data.data1_num=index_ui;
//SharedObjectのデータ保存を実行します
my_so.flush();
var soStatus_str:String=my_so.flush();
trace("soStatus_str="+soStatus_str)//保存が成功すると「flushed」が返される
}
load_btn.addEventListener(MouseEvent.CLICK,loadHandler)
function loadHandler(evt:MouseEvent)
{
trace("dataプロパティに格納されている、data1_numという変数を参照する"+my_so.data.data1_num)
}
public function flush(minDiskSpace:int = 0):String
第一引数はSharedObjectに割り当てる必要のある最小ディスク領域 (バイト単位) を指定します。
引数はデフォルトで0です。
flush()メソッドはローカルに作成されたSharedObjectをただちにローカルファイルに書き込みます。このメソッドを使用しない場合、SharedObjectがファイルに書き込まれるのは、SharedObjectセッションの終了時となります。
それはswfファイルが閉じられるときです。
SharedObjectが参照されなくなってガベージコレクションされるとき、SharedObject.clear() または SharedObject.close() が呼び出されたとき、のいずれかの時点になります。
例題
flush()メソッドを使ってmy_soというSharedObjectのデータを保存する(solファイルの生成、更新を行う)
save_btn.addEventListener(MouseEvent.CLICK,saveHandler)
var my_so:SharedObject;
my_so=SharedObject.getLocal("getfordasave02");
var index_ui:uint=20;
//localPath
function saveHandler(evt:Event)
{
//dataプロパティにdata1_numという保存変数を生成しその中にindexuiの値を入れる
trace("セーブされました。flush()を実行します")
my_so.data.data1_num=index_ui;
//SharedObjectのデータ保存を実行します
my_so.flush();
var soStatus_str:String=my_so.flush();
trace("soStatus_str="+soStatus_str)//保存が成功すると「flushed」が返される
}
load_btn.addEventListener(MouseEvent.CLICK,loadHandler)
function loadHandler(evt:MouseEvent)
{
trace("dataプロパティに格納されている、data1_numという変数を参照する"+my_so.data.data1_num)
}
2008年04月08日
[復習]split()メソッドを使って指定した文字列で区切って配列に格納する事ができます。
split()メソッドを使って指定した文字列で区切って配列に格納する事ができます。
function split(delimiter:*, limit:Number = 0x7fffffff):Array
第一引数で区切りたい文字列を指定します。
値は配列で返されます。
例題
「,」で区切った文字列を取得します。
文字列「black,0.5,0.02」
「,」で区切られた3つの文字列、数字があります。
これを「black」「0.5」「0.02」と三つに分けて取得します。
ソースコード
var my_str:String="black,0.5,0.02";
var my_arr:Array=new Array();
my_arr=my_str.split(",");
trace(my_arr[0])// black
trace(my_arr[1])// 0.5
trace(my_arr[2])// 0.02
trace(my_arr.length)//3
function split(delimiter:*, limit:Number = 0x7fffffff):Array
第一引数で区切りたい文字列を指定します。
値は配列で返されます。
例題
「,」で区切った文字列を取得します。
文字列「black,0.5,0.02」
「,」で区切られた3つの文字列、数字があります。
これを「black」「0.5」「0.02」と三つに分けて取得します。
ソースコード
var my_str:String="black,0.5,0.02";
var my_arr:Array=new Array();
my_arr=my_str.split(",");
trace(my_arr[0])// black
trace(my_arr[1])// 0.5
trace(my_arr[2])// 0.02
trace(my_arr.length)//3
2008年04月07日
[復習]matchメソッドを使用して、文字列を検索
matchメソッドを使用して、文字列を検索します。検索に該当した文字列は配列で返されます。
function match(pattern:*):Array
第一引数には検索したいものを入れます。基本的にはString、つまり文字列を入れます。検索したい文字列が該当した場合、それを配列として返します。
例題
my_strというStringを生成します。その中の文字列をmatchメソッドを使用して検索します。該当する文字がある場合は、第一引数で検索した文字列が返され、該当する文字が無い場合はnullが返されます。
ソースコード
function match(pattern:*):Array
第一引数には検索したいものを入れます。基本的にはString、つまり文字列を入れます。検索したい文字列が該当した場合、それを配列として返します。
例題
my_strというStringを生成します。その中の文字列をmatchメソッドを使用して検索します。該当する文字がある場合は、第一引数で検索した文字列が返され、該当する文字が無い場合はnullが返されます。
ソースコード
|
2008年04月06日
[復習]フェード処理をトランジションで行う事ができます。
フェード処理をトランジションで行う事ができます。
第二引数のトランジションタイプをFadeに指定する事によってフェードのアニメーションが行えます。
例題
maskFilta_mcというMCを2秒かけてフェードインさせる。
function FadeLoader()
{
// maskFilta_mc.visible=true;
TransitionManager.start(maskFilta_mc, {type:Fade, direction:Transition.IN, duration:2, easing:Elastic.easeOut});
}
第二引数のトランジションタイプをFadeに指定する事によってフェードのアニメーションが行えます。
例題
maskFilta_mcというMCを2秒かけてフェードインさせる。
function FadeLoader()
{
// maskFilta_mc.visible=true;
TransitionManager.start(maskFilta_mc, {type:Fade, direction:Transition.IN, duration:2, easing:Elastic.easeOut});
}
2008年04月05日
[復習]Loaderでロードした画像は、一度に二つ以上表示できない
Loaderでロードした画像は、一度に二つ以上表示できません。
ですが、BitmapDataとしてなら複製し、同時に二つ以上、表示する事も可能です。
今回は、Loaderでロードした画像をビットマップデータとして書き出すコードを掲載します。
手順
Loaderオブジェクトがファイルをロード
↓
ロード完了後、BitmapData オブジェクトを定義し、widthとheightをLoaderのwidthとheightに設定する
↓
BitmapData.draw(lo)。BitmapData.draw()メソッドの引数にLoader()オブジェクトを代入する
↓
Bitmapオブジェクトを定義。生成時の引数に上記のBitmapDataオブジェクトを代入。
以上の流れでLoaderでロードしたオブジェクトを複製する事ができます。
//画像をロードするLoaderオブジェクト
var my_lo:Loader=new Loader();
my_lo.load(new URLRequest("sample.jpg"));
my_lo.contentLoaderInfo.addEventListener(Event.COMPLETE,coHabdler)
addChild(my_lo)
function coHabdler(evt:Event)
{
trace("オブジェクトのロード完了");
//BitmapDataオブジェクトを複製する
var my_bmd:BitmapData = new BitmapData(my_lo.width, my_lo.height);
//BitmapDataにLoaderのデータを複製する
my_bmd.draw(my_lo);
//Bitmapオブジェクトを生成し引数にLoaderデータを複製したBitmapDataを代入
var my_bm:Bitmap = new Bitmap(my_bmd);
//
my_bm.x+=300;
addChild(my_bm);
}
ですが、BitmapDataとしてなら複製し、同時に二つ以上、表示する事も可能です。
今回は、Loaderでロードした画像をビットマップデータとして書き出すコードを掲載します。
手順
Loaderオブジェクトがファイルをロード
↓
ロード完了後、BitmapData オブジェクトを定義し、widthとheightをLoaderのwidthとheightに設定する
↓
BitmapData.draw(lo)。BitmapData.draw()メソッドの引数にLoader()オブジェクトを代入する
↓
Bitmapオブジェクトを定義。生成時の引数に上記のBitmapDataオブジェクトを代入。
以上の流れでLoaderでロードしたオブジェクトを複製する事ができます。
//画像をロードするLoaderオブジェクト
var my_lo:Loader=new Loader();
my_lo.load(new URLRequest("sample.jpg"));
my_lo.contentLoaderInfo.addEventListener(Event.COMPLETE,coHabdler)
addChild(my_lo)
function coHabdler(evt:Event)
{
trace("オブジェクトのロード完了");
//BitmapDataオブジェクトを複製する
var my_bmd:BitmapData = new BitmapData(my_lo.width, my_lo.height);
//BitmapDataにLoaderのデータを複製する
my_bmd.draw(my_lo);
//Bitmapオブジェクトを生成し引数にLoaderデータを複製したBitmapDataを代入
var my_bm:Bitmap = new Bitmap(my_bmd);
//
my_bm.x+=300;
addChild(my_bm);
}
2008年04月04日
[復習]loaderにロードされたswfがrootの変数を参照
rootにaddChildしたloaderオブジェクトがswfファイルをloadした際にloaderにロードされたswfがrootの変数を参照する方法を解説します。loaderにロードされたswfがrootの変数を参照する処理はFlashゲームを制作する上で使用頻度が高い処理だと思います。
loaderにloadされるswfがparentを参照するための変数を生成します。
loaderにloadされたswfにthis.parent.parentと記述し変数に代入する事でrootを参照する事ができます。
loadされるswfにsampleParentオブジェクトを生成。
var sampleParent=this.parent.parent。
rootに変数を生成。rootのloaderオブジェクトがswfファイルをロードする。loadされたswfファイルのオブジェクトをクリックするとrootの変数を参照する。
ソースコード
rootに記述
loaderにロードされるswfに記述。呼び出されたrootの変数を参照
loaderにloadされるswfがparentを参照するための変数を生成します。
loaderにloadされたswfにthis.parent.parentと記述し変数に代入する事でrootを参照する事ができます。
loadされるswfにsampleParentオブジェクトを生成。
var sampleParent=this.parent.parent。
rootに変数を生成。rootのloaderオブジェクトがswfファイルをロードする。loadされたswfファイルのオブジェクトをクリックするとrootの変数を参照する。
ソースコード
rootに記述
|
loaderにロードされるswfに記述。呼び出されたrootの変数を参照
|
2008年04月03日
[復習]「split」でStringから任意の文字を区切り整理
「split」でStringから任意の文字を区切り整理します。
var arr:Array=new Array();
arr=str.split();
var arr:Array=str.split();
var my_arr:Array=my_arr=my_str.split(",");//
var my_str:String="black,0.5,0.02";
var my_arr:Array=my_arr=my_str.split(",");//そのまま代入
trace(my_arr[0])// black
trace(my_arr[1])// 0.5
trace(my_arr[2])// 0.02
trace(my_arr.length)//3
var arr:Array=new Array();
arr=str.split();
var arr:Array=str.split();
var my_arr:Array=my_arr=my_str.split(",");//
var my_str:String="black,0.5,0.02";
var my_arr:Array=my_arr=my_str.split(",");//そのまま代入
trace(my_arr[0])// black
trace(my_arr[1])// 0.5
trace(my_arr[2])// 0.02
trace(my_arr.length)//3
2008年04月02日
[復習]SharedObjectで生成したsolファイルへのパス
SharedObjectで生成したsolファイルへのパスを記述します。
C:\Documents and Settings\ユーザー名\Application Data\Macromedia\Flash Player\#SharedObjects
C:\Documents and Settings\ユーザー名\Application Data\Macromedia\Flash Player\#SharedObjects
2008年04月01日
[復習]?と:を使って条件分岐処理を行う
?と:を使って条件分岐処理を行います。
例文
(sample2_ui<sample_ui)?trueMethod():falseMethod()
(条件文)?trueの場合の処理:falseの場合の処理
という風に記述します。
:の前の処理がtrueの場合の処理。
:の後の処理がfalseの場合の処理です。
簡潔に分岐処理を行う場合はこの手法がお勧めです。
var sample_ui:uint=10;
var sample2_ui:uint=8;
decisionCondition();
function decisionCondition(){
(sample2_ui<sample_ui)?trueMethod():falseMethod()
}
function trueMethod(){
trace(":(コロンの)前のtrueの場合の処理が実行されました")
}
function falseMethod(){
trace(":(コロン)の後のfalseの処理が実行されました");
}
例文
(sample2_ui<sample_ui)?trueMethod():falseMethod()
(条件文)?trueの場合の処理:falseの場合の処理
という風に記述します。
:の前の処理がtrueの場合の処理。
:の後の処理がfalseの場合の処理です。
簡潔に分岐処理を行う場合はこの手法がお勧めです。
var sample_ui:uint=10;
var sample2_ui:uint=8;
decisionCondition();
function decisionCondition(){
(sample2_ui<sample_ui)?trueMethod():falseMethod()
}
function trueMethod(){
trace(":(コロンの)前のtrueの場合の処理が実行されました")
}
function falseMethod(){
trace(":(コロン)の後のfalseの処理が実行されました");
}








