問答収集 カテゴリ:Flashプログラミング
現在のスレッド一覧 / 新規に質問を投稿
レス数:1 / 状態:未解決 / No:139 / ATOM
1 日付:2014/08/18(月)12:13:16 ID:4StcJOAsL/Tc
現在 マ○オのような2D横スクロールゲームを作っています。
AS3で 配列を使って呼び出した2Dゲームの足場と
主人公とのあたり判定の計算がうまくいかず、困っています。

コードは以下の通りです。

for (var i:uint = 0; i < 1; i ++){

loopgamov1:for (i = 0; i < block_mc_array.length; i ++)
{
if (block_mc_array[i].u.hitTestObject(pl.st))
{
pl.y = block_mc_array[i].y - 25;
jpflag = false;
st = true;
}else{
st = false;
}
}
}

コードの内容としては、
ブロックのMCの中の U というブロックの中の上の方に
設置されたMCに 主人公のPLの足に当たると
ブロックの中心から ブロックの半分の高さだけPLを上に移動させ、

ジャンプスイッチをFalse にして
地面に立っているスイッチを True にしています。


しかし、ジャンプをしないでブロックから足を踏み外した場合に
地面に立っているスイッチを False にして 落下させる事は出来ますが、

画面に表示しているブロックの数は 1つ以上なので、
常にブロックから足を踏み外し、落下と着地を繰り返し、
ジャンプが出来なくなってしまいます。


このように複数のMCを使い、どれか1つでも足場を触れていると
落下をしなくする処理は実現可能でしょうか?


長文と分かりにくくて申し訳ございません。
どなたか よろしくお願いします。
このスレッドについて
質問の状態 :
未解決
投稿開始日 :
2014/08/18(月)12:13:16
投稿終了日 :
2014/08/25(月)12:13:18
投稿者 :
レス総数 :
1
スレッド番号 :
139
MondoCollectionSystem ver.0x00020000 by Hakuhin