С Новым годом! Форум программистов, компьютерный форум, киберфорум
ActionScript
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/6: Рейтинг темы: голосов - 6, средняя оценка - 4.67
1 / 1 / 1
Регистрация: 25.04.2012
Сообщений: 59
1

Столкновение с двумя и более объектами

05.10.2012, 22:01. Показов 1179. Ответов 2
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Добрый вечер помогите с одной задачей вот я пишу код:

ActionScript 3
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
import flash.events.KeyboardEvent;
 
stage.addEventListener(KeyboardEvent.KEY_DOWN, fDown1);
function fDown1(e:KeyboardEvent):void
{
    if(e.keyCode == 38)
    {
        if (t.hitTestObject(s1))
        {
            t.y+=0
        }
        else
        {
            t.y-=2
        }
    }
Как сделать условие что бы t останавливался не только при столкновении с объектом s1, но и с объектами s2, s3, s4 и т. д.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
05.10.2012, 22:01
Ответы с готовыми решениями:

Столкновение с неизвестными объектами класса
Есть три класса: A, B, C Указатели на объект B хранятся в векторе vec_b в каждом объекте класса А...

Итерация с двумя объектами сразу
Как провести итерацию с двумя объектами одновременно ?) Я делаю вот так: a = "abcd" b = "efgh"...

Общение между двумя объектами!
int main(int argc, char *argv) { QApplication a(argc, argv); MainWindow1 *w = new...

Cвязь между двумя объектами
Доброго времени суток! Есть несколько объектов, имеющих следующую структуру (товар): $objectA...

2
Модератор
2911 / 1770 / 179
Регистрация: 19.02.2011
Сообщений: 6,506
05.10.2012, 22:44 2
Проверяйте циклом все объекты.
0
254 / 238 / 50
Регистрация: 20.12.2011
Сообщений: 707
06.10.2012, 14:51 3
ActionScript 3
1
2
3
4
5
6
7
8
9
10
11
12
13
import flash.events.KeyboardEvent;
var objects:Array = new Array(s1, s2, s3, s4);
stage.addEventListener(KeyboardEvent.KEY_DOWN, fDown1);
function fDown1(e:KeyboardEvent):void
{
    if(e.keyCode == 38)
    {
        for (var i:int = objects.length - 1; i >= 0; --i)
        {
            (t.hitTestObject(objects[i])) ? t.y += 0 : t.y -= 2;
        }
    }
}
P.S. и ещё, какой смысл в выражении t.y += 0?
Правильнее было бы тогда
ActionScript 3
1
2
3
4
5
6
7
8
9
10
11
12
13
import flash.events.KeyboardEvent;
var objects:Array = new Array(s1, s2, s3, s4);
stage.addEventListener(KeyboardEvent.KEY_DOWN, fDown1);
function fDown1(e:KeyboardEvent):void
{
    if(e.keyCode == 38)
    {
        for (var i:int = objects.length - 1; i >= 0; --i)
        {
            if (!t.hitTestObject(objects[i])) t.y -= 2;
        }
    }
}
P.P.S. и ещё, чтоб не писать цифрами код клавиши лучше было бы импортировать класс Keyboard, тогда все выглядело бы так:
ActionScript 3
1
2
3
4
5
6
7
8
9
10
11
12
13
14
import flash.events.KeyboardEvent;
import flash.ui.Keyboard;
var objects:Array = new Array(s1, s2, s3, s4);
stage.addEventListener(KeyboardEvent.KEY_DOWN, fDown1);
function fDown1(e:KeyboardEvent):void
{
    if(e.keyCode == Keyboard.DOWN) // или Keyboard.S
    {
        for (var i:int = objects.length - 1; i >= 0; --i)
        {
            if (!t.hitTestObject(objects[i])) t.y -= 2;
        }
    }
}
1
06.10.2012, 14:51
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
06.10.2012, 14:51
Помогаю со студенческими работами здесь

Найти угол между двумя объектами
Здравствуйте! Ввожу в курс дела (Unity 2d). Необходимо вычислить угол между двумя объектами:...

Работа с двумя объектами класса одновременно
Здравствуйте. Есть класс Цветы, у него два объекта: Роза и Тюльпан. Они имеют здоровье (health),...

Обмен данными между двумя объектами Memo
Разработать программу, обеспечивающую обмен данными между двумя объектами Memo, (т.е. текст должен...

Найти расстояние между двумя объектами на земном шаре
Люди перемещаются по поверхности нашей планеты. Они ходят, бегают, ездят и даже летают. И им всегда...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru