問答収集 カテゴリ:Flashプログラミング
現在のスレッド一覧 / 新規に質問を投稿
1 日付:2014/10/09(木)08:17:13 ID:LSxsLJeXs3tr
現在、For分を使い 複数設置させた物体と、
プレイヤーとのあたり判定の事について、悩んでいます。

if ((mc_array[i].hitTestObject(pl)){
//ここに触れた時の処理
}

という感じで、別々にあたり判定を持たせることは出来たのですが、

物体と触れていない時の処理を作ろうとしても、どうしてもうまくいきません。

if ((mc_array[i].hitTestObject(pl)){
//ここに触れた時の処理
}else{
//触れていない時の処理
}

といった処理を作った所、物体と触れていても
「他の物体とは触れていない」ので、
触れていない時の処理になってしまいます。

そこで、1つでも触れている時と、何も触れていない時の処理で分けるには
どうすれば良いのでしょうか?

もし宜しければ、どなたか私にアドバイスをくださりませんか?
よろしくお願いします。
2 日付:2014/10/09(木)08:58:38 ID:uqGvQ4UrzKin
まずは、hitTestObject() メソッドを使って、
1つでも触れているか調べるといいのではないでしょうか
その結果を得てから、次に触れた時の処理を行います。

var result = false;

// ---------------------------------------------------
// 1つでも触れているか調べる
// ---------------------------------------------------
for(var i=0;i<mc_array.length;i++){
if (mc_array[i].hitTestObject(pl)){
result = true;
break;
}
}

// ---------------------------------------------------
// 触れた時の処理
// ---------------------------------------------------
if(result){
//ここに1つでも触れている時の処理
}else{
//何も触れていない時の処理
}
3 名前:状態変更 日付:2014/10/10(金)09:14:21 ID:LSxsLJeXs3tr
この質問の状態を『解決』に変更しました。
このスレッドについて
質問の状態 :
解決済み
投稿開始日 :
2014/10/09(木)08:17:13
投稿終了日 :
2014/10/17(金)09:14:23
投稿者 :
レス総数 :
3
スレッド番号 :
141
MondoCollectionSystem ver.0x00020000 by Hakuhin