Базовая анимация на Java для своего рода заставки - PullRequest
0 голосов
/ 28 октября 2009

Мне поручили сделать анимированную заставку в качестве проекта по программированию для моего курса Advanced Programming. Цель состоит в том, чтобы в движущемся полноэкранном фрейме было несколько движущихся компонентов, но я делаю это шаг за шагом и делаю это по одному компоненту за раз.

Вот мой исходный код: http://pastebin.com/dc722188

Не стесняйтесь комментировать любую часть, касающуюся файловых операций, они пока не актуальны.

Теперь проблема, с которой я столкнулся, заключается в том, что, по-видимому, программа распознает мой LogoComponet как охватывающий весь кадр (даже если это не предполагается), и поэтому условия столкновения запускаются немедленно, в результате чего у объекта логотипа внезапно начинаются приступы , Я понятия не имею, что это вообще вызывает, даже ручная установка границ для компонента не сработает, и тот факт, что это должно произойти завтра, совсем не поможет моему делу.

Так, пожалуйста, помогите? .___.

1 Ответ

0 голосов
/ 28 октября 2009

Во-первых, вставленный вами код имеет неверно названный конструктор в twoSquareComponent. Проблема в вашем одушевленном методе. Когда вы делаете свои чеки для изменения направления, вы меняете направление, но следующий вызов возвращается туда, где вы находитесь. Вам нужен способ отслеживать текущее направление.

В качестве примера, если вы пересекаете сторону и ваш dx равен 10, а текущий x равен 11, вы переходите к 1, а затем следующий одушевленный вызов возвращает вас к 11, а затем к 1 и т. Д. Он просто повторяет это, следовательно, эффект захвата, который вы описываете. Я оставлю это тебе как домашнее задание :). но это ваша проблема. Вы, вероятно, хотите сохранить текущее направление, а не менять его, пока снова не выйдете за пределы.

Удачи

...