Вниз  Java-программирование (1-ые посты)
- 19.03.2015 / 00:18
RooMeN
  Пользователь

RooMeN 
Сейчас: Offline
Почему двойная буферизация не работает? Создаю BufferedImage, Graphics2D, рисую на графике - мигает :-(


Прикрепленные файлы:
Project_02_jar.rar (17.39 кб.) Скачано 21 раз
- 21.03.2015 / 18:17
AHiLLA
  Пользователь

AHiLLA 
Сейчас: Offline
  1. if (Hero.collidesWith(brick, bx, by, true));
  2. {...}
Что-то оно криво работает. В любом случае получается true, даже когда столкновения нет. Что это может быть?

:ps:Почему столкновение проверяется не между двумя спрайтами, что вроде логично, а между спрайтом и простой картинкой? (Hero, brick)

А, еще вопрос :gg: Как из одной картинки сделать много одинаковых спрайтов? Так?
  1. img1=Image.createImage("/1.png");
  2. img2=Image.createImage("/1.png");
  3. img3=Image.createImage("/1.png");


Изменено AHiLLA (21.03 / 18:21) (всего 1 раз)
- 21.03.2015 / 18:28
Magatino
  Администратор

Magatino 
Сейчас: Offline
AHiLLA, 1. Скорее всего ты что то не то делаешь, выкладывай код мы поржём посмотрим :gg:

2. Вот смотри, всё тут есть http://annimon.com/docs/api/MI...dui/game/Sprite.html

Вот со спрайтами, Tank это спрайт:
  1. if (Maga.colidesWith(Tank, false)) {
  2. ...
  3. }

3. Я работал с drawImage и drawRegion, со спрайтами можно так:
  1. for (int i=0; i<maximum_magov; i++)
  2. {
  3. Maga.setPosition(x[i], y[i]);
  4. Maga.paint(g);
  5. }


Изменено Magatino (21.03 / 18:42) (всего 1 раз)
- 21.03.2015 / 18:55
AHiLLA
  Пользователь

AHiLLA 
Сейчас: Offline
Magatino, спасибо. Сделал со спрайтами, все равно не работает как надо, и false приписывал и true. Вот код.


Прикрепленные файлы:
First.java (0.43 кб.) Скачано 603 раза
Second.java (3.31 кб.) Скачано 470 раз
- 21.03.2015 / 19:29
Magatino
  Администратор

Magatino 
Сейчас: Offline
AHiLLA, Ты про это имеешь ввиду что столкновение не работает
  1. if (Hero.collidesWith(Brick, true)); {
  2.     g.setColor(0,0,0);
  3.     s = "GAME OVER";
  4.     by=-Brick.getHeight();
  5.     bx=r.nextInt(200);
  6. }

Тут точку с запятой убери
if (Hero.collidesWith(Brick, true));

true - проверяет столкновение по пикселям, если пиксель полностью прозрачный, то столкновения не будет

false - проверяет столкновение по прямоугольникам
- 21.03.2015 / 19:34
Its_Your_Soul
  Пользователь

Its_Your_Soul 
Сейчас: Offline
AHiLLA,
  1. if (Hero.collidesWith(Brick, true)); {...}
; убери :gg:
- 21.03.2015 / 19:53
AHiLLA
  Пользователь

AHiLLA 
Сейчас: Offline
Magatino, Its_Your_Soul, бль, как всегда :gg: Спасибо, пашет.
- 21.03.2015 / 20:28
AHiLLA
  Пользователь

AHiLLA 
Сейчас: Offline
Это, а можно как-то автоматизировать заполнение Манифеста? А то задолбало после каждой сборки вручную писать ссылку на главный класс. Нетбинс.
- 21.03.2015 / 21:37
AHiLLA
  Пользователь

AHiLLA 
Сейчас: Offline
И как определяется приоритет спрайтов? Переставил нужный спрайт вверх во всех участках кода, где чередуются изображения, ничего не сработало.

Изменено AHiLLA (21.03 / 21:37) (всего 1 раз)
- 21.03.2015 / 21:39
Kalter
  Пользователь

Kalter 
Сейчас: Offline
Цитата AHiLLA:
Это, а можно как-то автоматизировать заполнение Манифеста? А то задолбало после каждой сборки вручную писать ссылку на главный класс. Нетбинс.
В свойствах проекта поищи, где связано с информацией о мидлетах. Или добавь свой манифест в path/proj/src/META-INF/MANIFEST.MF
__________________
 Homo homini penis est.

Изменено Kalter (21.03 / 21:39) (всего 1 раз)
Наверх  Всего сообщений: 16875
Фильтровать сообщения
Поиск по теме
Файлы топика (794)