私はオブジェクト同士をオーバーラップさせたくありません。また、オブジェクトをステージリミットに保つ必要があります。ボタンはお互いにヒットすると離さなければなりません。hitTestObjectを試しましたが、 。互いに当たったときにオブジェクトを移動する
魚2 のサンプル移動コード* UPDATE
var fish2x:Number=10;
var fish2y:Number=14;
stage.addEventListener(Event.ENTER_FRAME,h42);
function h42(s:Event = null) {
fish2.x+=fish2x;
fish2.y+=fish2y;
if ((fish2.x>=stage.stageWidth-fish2.width/2)|| (fish2.x <= fish2.width/2)) {
fish2x*=-1;
}
if ((fish2.y>=stage.stageHeight-fish2.height/2)|| (fish2.y <= fish2.height/2)) {
fish2y*=-1;
}
if (fish2.hitTestObject(fish3)){
fish2y *= -1;
fish3y *= -1;
h42();
}
}
また、私は動作しませ切り抜いた関数の中で2つ以上の魚のために
stage.addEventListener(Event.ENTER_FRAME,crash);
function crash(s:Event) {
if (fish2.hitTestObject(fish || fish3)) {
fish2y*=-1;
message.text="crash";
}
}
を試してみました。 私はこのコードを使用するよりもfish2とfish3をnullに設定しました。
if (fish2.hitTestObject(fish3 || fish4)){
fish2y *= -1;
fish2x *= -1;
h42();
}
hittestojectがすべて変更されました。すべての機能はこのように変更されますが、機能しません。 fish3は各other.Iがちょうど魚2.
if (fish2.hitTestObject(fish || fsih3)){
fish2y *= -1;
fish2x *= -1;
fishy*=-1;
fishx*=-1;
fish3y*=-1;
fish3x*=-1;
}
}
私たちが実際に何が起こっているのか視覚化する助けにはならない「狂ったように移動します」。 –
私はあなたがそのようなhittestobjectを行うことができるのか分かりません(x || b)。あなたはhittestobject(x)を実行する必要があるかもしれないと思います。 hittestobject(b) –
Hittestobject work correct私は使用された "| |"私は2つのfish.İf魚2の魚やfish3ヒットをテストするステージ上のオブジェクトを持っていた方向。私の問題は、互いに当たったときオブジェクトを逆方向に移動させる方法です。 – KucuKeko