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

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

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

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

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
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
05.10.2012, 22:01
Ответы с готовыми решениями:

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

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

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

2
Модератор
 Аватар для TanaTiX
2936 / 1795 / 180
Регистрация: 19.02.2011
Сообщений: 6,552
05.10.2012, 22:44
Проверяйте циклом все объекты.
0
 Аватар для Theoryofgames
254 / 238 / 50
Регистрация: 20.12.2011
Сообщений: 707
06.10.2012, 14:51
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
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
06.10.2012, 14:51
Помогаю со студенческими работами здесь

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

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

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

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

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


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
Киев стоит - украинская песня
zorxor 28.01.2026
wfWdiRqdTxc О Господи, Вечный, Ты . . . Я помоги, Бесконечный. . . Я прошу Ты. . . Я погибаю, спаси. . . Я прошу Тебя Вечный. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL3_image
8Observer8 27.01.2026
Содержание блога SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip" Извлеките архив и вы увидите. . .
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д. Сборка примера Скачайте. . .
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru