こんにちは、Flash AS2 を使用して簡単なゲームを作成していますが、ステージからオブジェクトを削除する方法がわかりません。
次のコードを持つ「敵」と呼ばれる単純なオブジェクトがあります。
onClipEvent(enterFrame) {
if (hitTest(_root.charBoy)) _root.life--;
function remove() {
this.removeMovieClip();
}
}
次に、「Bullet」オブジェクトが次のようにヒットしたときに remove 関数を呼び出そうとします。
if (hitTest(_root.Enemy))
{
_root[Enemy].remove();
this.removeMovieClip();
}
しかし、発生する唯一のことは、Bullet オブジェクトだけが削除され、敵 AI はステージにとどまることです。
関数の宣言で次のバリエーションも試しました。
onClipEvent(load)
{
function remove()
{
this.removeMovieClip();
}
remove();
}
onClipEvent(enterFrame) {
if (hitTest(_root.charBoy)) _root.life--;
}
と
onClipEvent(enterFrame) {
if (hitTest(_root.charBoy)) _root.life--;
function remove()
{
this.removeMovieClip();
}
remove();
}
それでも同じことをします。私も試してみstage.removeChild(this)
ましたが、何もしません。
これを解決する方法を教えてください。敵をステージに設定し、単純な AI の動きをしており、プログラムで複製していません。
Bullet
特定のオブジェクトにヒットしたときにステージからそれらを削除するにはどうすればよいですか?
私のBullet
オブジェクトはすでにそれらとhits
それらを追跡できるので、Bullet
それ自体はステージから削除されますが、敵オブジェクトは残ります。