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

Nevesel 
Сейчас: Offline
:-) всем привет! Это снова я! Подскажите, плз, если массив тайлов карты выносить в отдельный файл, нужно ли там же делать цикл считывания for,с присваиванием setCell,и особенно возвратом return? Блин, ставлю туда этот цикл, ругается-мол,присваивание mapGround.setCell непонятно к чему присваивается(ведь присваивается то оно к объекту TiledLayer mapGround, а он объявлен и инициализирован в другом классе, основном)Как быть?
- 28.07.2013 / 18:35
Nevesel
  Пользователь

Nevesel 
Сейчас: Offline
gost6678, сорри, я уже у тебя интересовался, только всё равно непонятки остались...
- 28.07.2013 / 18:49
aNNiMON
  Супервизор

aNNiMON 
Сейчас: Offline
gost6678, player.close();
Main.link.myGameCanvas.startGame();

Никогда так не делай. Если возникнет исключение при закрытии плеера (а оно обязательно возникнет), то ничего больше не вызовется. Соответственно игра не начнётся.
__________________
 let live
- 28.07.2013 / 19:41
gost6678
  Пользователь

gost6678 
aNNiMON, ааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааа, ясно! Спасибо большое!
- 28.07.2013 / 23:16
Virus-ON
  Пользователь

Virus-ON 
Сейчас: Offline
Nevesel, Можно код , а то я не понял что ты спросил.
- 28.07.2013 / 23:56
vl@volk
  Пользователь

vl@volk 
Сейчас: Offline
nevesel,
  1. import javax.microedition.lcdui.game.TiledLayer;
  2.  
  3. public class GetMap
  4.  {
  5.  private TiledLayer map;
  6.  
  7.  public GetMat ()
  8.  {
  9.  }
  10.  /* делаем картэ
  11.   * @ param img_url - ссылка на картинку тайлов поля
  12.   * @ param col_stolb - количество столбцов карты
  13.   * @ param col_ryad - количество рядков карты
  14.   * @ param tile_width - ширина тайла
  15.   * @ param tile_height - высота тайла
  16.   * @ param pole - массив карты
  17.   * @ return TiledLayer map - наша карта
  18.   */
  19.  
  20.  public TiledLayer Fon( String img_url, int col_stolb, int col_ryad, int tile_width, int tile_height, int[] pole )
  21.   {
  22.     Image tiles = Image.createImage( img_url );
  23.     map = new TiledLayer( col_stolb, col_ryad, tiles, tile_width, tile_height);
  24.         for(int i = col_stolb; i < pole.length; i++)
  25.         {
  26.             fonPole.setCell(i % col_stolb, i / col_ryad, pole[i]);
  27.         }
  28.         return map;
  29.   }
  30.  }
как юзать
  1. private TiledLayer background;
  2. private GetMap gm;
  3.  
  4. public MyGameCanvas()
  5.  {
  6.  // инициализируем класс расстановки карты
  7.  gm = new GetMap();
  8.  // теперь "устанавливаем" карту
  9.  background = gm.Fon( "/tiles.png", 10, 10, 75, 75, new int[]{ 1, 2, 3, ... , 1 } );
  10.  }
теперь можно рисовать нашу карту, тоесть bacground прикрепляем к LayerManager.
конечно можно оформить все красивее, например в классе MyGameCanvas можно создать переменные которые будем передавать методу Fon или же задать стандартные размеры карты ( высоту, ширину, размер тайлов ) и передавать методу Fon лишь имя картинки в ресурсе и массив карты, только немного нужно изменить метод Fon
__________________
 знает толк
- 29.07.2013 / 07:26
gost6678
  Пользователь

gost6678 
Создай класс, наследованный от TiledLayer в отдельном файле и создавай от него обьекты, ничего сложного нет. Вот пример с возможностью создавать карту, любым размером(например не 5х5 или 10х10, а 5х10 или 10х100). Только там подправь цифры.

Изменено gost6678 (29.07 / 07:28) (всего 3 раза)


Прикрепленные файлы:
MapLayer.java (0.89 кб.) Скачано 720 раз
- 29.07.2013 / 20:48
Nevesel
  Пользователь

Nevesel 
Сейчас: Offline
Спасибо большое, пойду дальше мозг убивать :-).
- 30.07.2013 / 18:17
gost6678
  Пользователь

gost6678 
Nevesel, давай, если вопросы будут- сюда пиши-я отвечу.

Изменено gost6678 (30.07 / 18:18) (всего 1 раз)
- 31.07.2013 / 17:48
Magatino
  Администратор

Magatino 
Сейчас: Offline
Как сделать вращение 3D мира? :dum:
Наверх  Всего сообщений: 16875
Фильтровать сообщения
Поиск по теме
Файлы топика (794)