Я не хочу накладывать друг на друга объекты. Также я хочу сохранить объекты в пределе сцены. Кнопки должны уходить, когда попадают друг в друга. Я пробовал 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();
}
}
Также я пытался в diffrent функции
stage.addEventListener(Event.ENTER_FRAME,crash);
function crash(s:Event) {
if (fish2.hitTestObject(fish || fish3)) {
fish2y*=-1;
message.text="crash";
}
}
Для более 2 рыбы не работают. Я установил null fish2 и fish 3, чем я использую этот код.
if (fish2.hitTestObject(fish3 || fish4)){
fish2y *= -1;
fish2x *= -1;
h42();
}
Я изменил hittestoject все, что у них есть. Все функции меняются, но это не работает.
Update 2
Теперь это не ошибка, но не происходит, когда fish3 ударил каждый other.I удален «нулевой» рыба и рыба 3 используется только для рыб 2.
if (fish2.hitTestObject(fish || fsih3)){
fish2y *= -1;
fish2x *= -1;
fishy*=-1;
fishx*=-1;
fish3y*=-1;
fish3x*=-1;
}
}
«Move как сумасшедший» не помогает нам визуализировать то, что на самом деле происходит. –
Я не знаю, можете ли вы сделать hittestobject, как это (x || b). Я думаю, вам может понадобиться hittestobject (x) || hittestobject (b) –
Hittestobject работает правильно. Я вижу текст сообщения при попадании друг в друга. Я использовал «| |». Я получил 7 объектов на сцене, просто проверил для 2 рыб. Если рыба 2 ударила по рыбе или рыбе3 направление. Моя проблема заключается в том, как перемещать объект в обратном направлении при ударе друг друга. – KucuKeko