22.06.2013 / 04:58 | |
gost6678 Пользователь
| Nevesel, Есть язык java , а есть j2me, они разные, скорей всего ты скачал учебник по простой яве. Насчет второго: конструктор лишь принимает параметры. Класс является лишь описанием обьекта. От одного класса могут быть наследованы множество обьектов, а также от одного класса могут быть наследованы другие классы.Ява является языком обьектно ориентированным.
|
22.06.2013 / 05:02 | |
gost6678 Пользователь
| Nevesel, есть java2se, а есть java2me, это разные языки, скорей всего ты скачал учебник по java2se. Насчет второго:конструктор лишь принимает параметры будущего обьекта. В java класс является описанием определенного обьекта, которых может быть создано любое количество.
|
22.06.2013 / 11:08 | |
vl@volk Пользователь Сейчас: Offline
Имя: Владислав Откуда: Земля Регистрация: 26.12.2012
| Nevesel, это ты пример горнакова делал, где он показывает столкновения спрайта с объектами? делай примерно так private MySprite chelovek, bomba1, bomba2, bomba3, bomba4;
private Image chel, bomba;
public MyGameCanvas() {
try {
chel = Image.createImage("/chelovek.png");
/*так же и для бомб будешь создавать, но только в блоке try {} catch() {}*/
catch( IOException ioe ){}
/*а теперь инициализируем наш спрайт, бомбы и задаем позицию*/
chelovek = new MySprite( chel, 10, 20 );
bomba1 = new MySprite( bomba, 10, 10 );
// и так все инициализиешь
chelovek.setPosition( 50, 50 );
bomba.setPosition(12, 13 );
// и т.д.
}
двигать спрайт можно с помощью метода move( x, y ); или вызывать соотвествующий метод с класса MySprite. конструктор класса MySprite можеш составить так public MySprite( Image img, int frameWidth, int frameHeight ) {
super( img, frameWidth, frameHeight );
}
super() нужен для того, чтобы стандартный клас Sprite разрезал картинку на фреймы, с заданой высотой и шириной __________________
знает толк |
22.06.2013 / 11:10 | |
gost6678 Пользователь
| super- это конструктор родительского класса.
|
22.06.2013 / 11:14 | |
vl@volk Пользователь Сейчас: Offline
Имя: Владислав Откуда: Земля Регистрация: 26.12.2012
| пооверить столкновение можно методом collidesWith(); пример: if ( chelovek.collideWith( bombaSPR ) ) {
bombaSPR.setFrame( 2 );
}
__________________
знает толк |
23.06.2013 / 01:00 | |
Nevesel Пользователь Сейчас: Offline
Имя: Александр Регистрация: 07.11.2012
| vl@volk, спасибо за помощь всё работает! |
24.06.2013 / 12:40 | |
Askalite Пользователь Сейчас: Offline
Имя: Аскалайт Регистрация: 12.10.2011
| протестируйте исходник.
Прикрепленные файлы: Map.java (1.35 кб.) Скачано 461 раз |
24.06.2013 / 13:08 | |
gost6678 Пользователь
| Askalite, это слишком сложный код, создай этот класс унаследованным от TiledLayer и карты храни в числовых массивах и будет вдвойне проще, вот посмотри как надо делать класс карты:
Изменено gost6678 (24.06 / 13:09) (всего 1 раз)
Прикрепленные файлы: MapLayer.txt (0.89 кб.) Скачано 320 раз |
24.06.2013 / 15:21 | |
Askalite Пользователь Сейчас: Offline
Имя: Аскалайт Регистрация: 12.10.2011
| gost6678, мне кажется так будет медленей, да и мало карт так сохранишь.
|
24.06.2013 / 15:31 | |
gost6678 Пользователь
| Askalite, таким образом можно любые карты сохранять, буть они 10на10 или 100х100, никакой разницы не будет, главное использовать программу Mappy-редактор замощенных слоев, который может генерировать файлы в формате csv,из которого можно легко скопировать текст и вставить в код.
|