トップページ > ゲ製作技術 > 2011年05月19日 > ozIfu/zH

書き込み順位&時間帯一覧

3 位/129 ID中時間01234567891011121314151617181920212223Total
書き込み数0000000000000000004000004



使用した名前一覧書き込んだスレッド一覧
名前は開発中のものです。
■吉里吉里/KAG/TJS雑談質問スレ■その23

書き込みレス一覧

■吉里吉里/KAG/TJS雑談質問スレ■その23
853 :名前は開発中のものです。[sage]:2011/05/19(木) 18:41:35.77 ID:ozIfu/zH
解決法を書くよー。
まず、globalで以下のようなクラスと関数を定義しておく。

■吉里吉里/KAG/TJS雑談質問スレ■その23
854 :名前は開発中のものです。[sage]:2011/05/19(木) 18:44:27.49 ID:ozIfu/zH
class FuncCall
{
var func;
var args;

function FuncCall(func, args*) {
this.func = func;
this.args = args;
}

function call {
func(args*);
}
};

function funccall {
var obj = new FuncCall(...);
return obj.call;
}

■吉里吉里/KAG/TJS雑談質問スレ■その23
855 :名前は開発中のものです。[sage]:2011/05/19(木) 18:48:35.80 ID:ozIfu/zH
FuncCallというのは、引数つきで関数を呼び出すクラス。
funccallというのは、FuncCallのオブジェクトを作って、その関数呼び出しを返すショートカット。

funccall(btn, i) とやると「引数iで関数btnを呼び出す関数」が生成される。

この状態で 
obj[i] = new SystemButtonLayer(kag, kag.fore.base, funccall(btn, i));
と書けばうまくいくのでは無いかな。

■吉里吉里/KAG/TJS雑談質問スレ■その23
856 :名前は開発中のものです。[sage]:2011/05/19(木) 18:57:07.43 ID:ozIfu/zH
こんな風に書くとFuncCallのクラス定義無しで一発で行けるけど、変態コードなのでお勧めはしない。

function funccall(args*) {
return function { shift()(this*); } incontextof args;
}



※このページは、『2ちゃんねる』の書き込みを基に自動生成したものです。オリジナルはリンク先の2ちゃんねるの書き込みです。
※このサイトでオリジナルの書き込みについては対応できません。
※何か問題のある場合はメールをしてください。対応します。